溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

php中mysql連接不上數(shù)據(jù)庫(kù)的解決方法

發(fā)布時(shí)間:2020-08-01 15:00:27 來(lái)源:億速云 閱讀:249 作者:清晨 欄目:編程語(yǔ)言

這篇文章將為大家詳細(xì)講解有關(guān)php中mysql連接不上數(shù)據(jù)庫(kù)的解決方法,小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

php mysql連接不上數(shù)據(jù)庫(kù)的解決辦法:首先獲取當(dāng)前“mysql.default_socket”等信息;然后獲取MySQL socket路徑;最后打開(kāi)“php.ini”修改“mysql.default_socket”等值即可。

php中mysql連接不上數(shù)據(jù)庫(kù)的解決方法

1. 獲取當(dāng)前 mysql.default_socket、mysqli.default_socket、pdo_mysql.default_socket 配置信息

建立一個(gè) PHP 文件, 顯示 phpinfo():

用瀏覽器打開(kāi):

php中mysql連接不上數(shù)據(jù)庫(kù)的解決方法

在此頁(yè)面,找到mysql.default_socket、mysqli.default_socket、pdo_mysql.default_socket信息:

php中mysql連接不上數(shù)據(jù)庫(kù)的解決方法

php中mysql連接不上數(shù)據(jù)庫(kù)的解決方法

php中mysql連接不上數(shù)據(jù)庫(kù)的解決方法

2. 獲取 MySQL socket 路徑

通過(guò)控制臺(tái)進(jìn)入 MySQL, 輸入命令: STATUS, 查找 UNIX socket 值

#mysql -u root -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 8Server version: 5.7.11 MySQL Community Server (GPL)

Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type ‘help;‘ or ‘\h‘ for help. Type ‘\c‘ to clear the current input statement.

mysql> STATUS--------------mysql  Ver 14.14 Distrib 5.7.11, for osx10.9 (x86_64) using  EditLine wrapper

Connection id:        8Current database:    
Current user:        root@localhost
SSL:            Not in use
Current pager:        lessUsing outfile:        ‘‘
Using delimiter:    ;
Server version:        5.7.11 MySQL Community Server (GPL)
Protocol version:    10Connection:        Localhost via UNIX socket
Server characterset:    utf8
Db     characterset:    utf8
Client characterset:    utf8
Conn.  characterset:    utf8
UNIX socket:        /tmp/mysql.sock
Uptime:            8 days 15 hours 1 min 17 sec

Threads: 2  Questions: 21  Slow queries: 0  Opens: 114  Flush tables: 1  Open tables: 0  Queries per second avg: 0.000--------------

3. 這時(shí)候, 你對(duì)比 mysql.default_socket、mysqli.default_socket、pdo_mysql.default_socket 和 通過(guò) MySQL UNIX socket 發(fā)現(xiàn)不一樣, 這就是 mysql_connect(); 警告的原因: PHP 配置 mysql 有問(wèn)題.

4. 重新配置 PHP, 打開(kāi)php.ini修改mysql.default_socket、mysqli.default_socket、pdo_mysql.default_socket 的值為: /tmp/mysql.sock

pdo_mysql.default_socket=/tmp/mysql.sock  
mysql.default_socket=/tmp/mysql.sock  
mysqli.default_socket=/tmp/mysql.sock

或者修改my.cnf的socket:

[client]  
socket=/tmp/mysql.sock  
  
[mysqld]  
socket=/tmp/mysql.sock

5.重啟nginx或者apache

關(guān)于php中mysql連接不上數(shù)據(jù)庫(kù)的解決方法就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI