《Web集羣實戰》第6章MySQL搭建WordPress遇到「創建數據庫鏈接時出錯」的問題

MySQL 5.7.24搭建WordPress遇到報錯「創建數據庫鏈接時出錯」的問題:
《Web集羣實戰》第6章MySQL搭建WordPress遇到「創建數據庫鏈接時出錯」的問題
已經作了wordpress庫的建立和受權,數據庫鏈接信息的填寫也跟《Web集羣實戰》書上安裝WordPress的方法是同樣的:
《Web集羣實戰》第6章MySQL搭建WordPress遇到「創建數據庫鏈接時出錯」的問題
一、首先懷疑是數據庫命令哪裏敲錯了,從新檢查了一遍,沒有發現錯誤。
二、下載phpMyAdmin管理工具,對MySQL數據庫鏈接進行測試,提示「沒法登陸MySQL 服務器」,說明是數據庫鏈接的問題。
三、查閱資料,得知:
鏈接MySQL數據庫有兩種方式:TCP/IP(通常理解的端口的那種)和Unix套接字(通常叫socket或者sock)。大部分狀況下,能夠用localhost表明本機127.0.0.1,可是在MySQL鏈接時,兩者不可混用,並且MySQL中權限設置中localhost與127.0.0.1也是分開設置的。當設置爲127.0.0.1時,系統經過TCP/IP方式鏈接數據庫;當設置爲localhost時,系統經過socket方式鏈接數據庫。
因爲我配置的localhost默認是sock方式鏈接。因此有兩種思路,要麼修復sock方式,要麼改用TCP/IP方式。
四、解決數據庫鏈接問題:
(1)改用TCP/IP方式鏈接MySQL,最簡單:
原來填寫的數據庫主機名是localhost
《Web集羣實戰》第6章MySQL搭建WordPress遇到「創建數據庫鏈接時出錯」的問題
把數據庫主機名改爲127.0.0.1就好了
《Web集羣實戰》第6章MySQL搭建WordPress遇到「創建數據庫鏈接時出錯」的問題
其餘都不用改,直接點提交,已經能夠了。
《Web集羣實戰》第6章MySQL搭建WordPress遇到「創建數據庫鏈接時出錯」的問題
(2)修復socket方式,修改php.ini來鏈接MySQL:
經過phpinfo()查看,發現mysqli模塊和pdo_mysql模塊下的默認socket路徑不一致,應該是編譯時寫錯或沒配。
《Web集羣實戰》第6章MySQL搭建WordPress遇到「創建數據庫鏈接時出錯」的問題
《Web集羣實戰》第6章MySQL搭建WordPress遇到「創建數據庫鏈接時出錯」的問題
兩個mysql.sock的路徑不一致,致使mysql沒法通訊。因而打開php.ini,修改mysqli.default_socket、pdo_mysql.default_socket 的值爲/application/mysql/data/mysql.sock:
pdo_mysql.default_socket=/application/mysql/data/mysql.sock
mysqli.default_socket=/application/mysql/data/mysql.sock
保存修改後重啓php。再使用localhost鏈接就能夠了。
《Web集羣實戰》第6章MySQL搭建WordPress遇到「創建數據庫鏈接時出錯」的問題php

相關文章
相關標籤/搜索