九九国产视频_亚洲精品国产三级在线观看_很污很黄能把下面看湿的短文_69色视频日韩在线视频

ThinkPHP下PDO連接數據庫報錯出現“PDO->__construct(‘mysql:host=localhost…’”(SQLSTATE[HY000] [2002])

[重要通告]如您遇疑難雜癥,本站支持知識付費業務,掃右邊二維碼加博主微信,可節省您寶貴時間哦!

前幾天有個客戶說他裝的ThinkPHP框架的站點,過一段時間就崩了~~出現一系列的錯誤,先出現的是(SQLSTATE[HY000] [2002])

過一點時間又出現“PDO->__construct(‘mysql:host=localhost…’” 如下圖

關于SQLSTATE[HY000] [2002]? ?ThinkPHP或者mysql出現“SQLSTATE[HY000]: General error: 1030 Got error 28 from storage engine”的解決辦法

出現SQLSTATE[HY000] [2002] ,這問題也不一定是單一的問題,來分析一下;

PDO連接數據庫報錯:“SQLSTATE[HY000] [2002] No such file or directory”。

出現這個問題的原因是PDO無法找到mysql.sock或者mysqld.sock

PDO連接數據庫報錯解決方法1:

找到相應的.sock文件,并設置php.ini文件中的pdo_mysql.default_socket的值為.sock文件的路徑。

pdo_mysql.default_socket= /tmp/mysqld.sock

然后重啟Apache,或者nginx下重啟php-fpm即可。

PDO連接數據庫報錯解決方法2:(我是用這種方法解決,簡單省力)

將PDO連接中的dsn的host由“localhost”改為“127.0.0.1”即可

解惑:WordPress在數據庫連接使用127.0.0.1與localhost對數據庫連接速度的影響

延伸閱讀:用localhost連接MySQL和127.0.0.1有什么區別呢?

在我們印象中這兩個都可以訪問到本地的服務,但是本質上有什么區別的?

host=127.0.0.1,使用 TCP連接,mysql server會認為這個連接來自127.0.0.1這個IP或者localhost.localdomin這個域名。

host=localhost,不使用TCP連接,它使用Unix socket連接mysql服務

以上是這兩種host連接區別的簡單總結,知道了這個區別,當php用localhost去連接mysql的時候,它該用哪個socket呢?大家都知道mysql服務啟動后它的進程里有一個--socket=/var/lib/mysql/mysql.sock的參數(大家的地址和我的可能會不相同,這個可以在mysq.cnf中進行設置),其中這個mysql.sock就是要用到的socket,我們只要把這個完整地址告訴php就可以,告訴的方式就是修改php.ini

pdo_mysql.default_socket=? 這項是否有配置或者配置是否正確

設置好以后重啟php-fpm就大功告成了。

問題未解決?付費解決問題加Q或微信 2589053300 (即Q號又微信號)右上方掃一掃可加博主微信

所寫所說,是心之所感,思之所悟,行之所得;文當無敷衍,落筆求簡潔。 以所舍,求所獲;有所依,方所成!

支付寶贊助
微信贊助

免責聲明,若由于商用引起版權糾紛,一切責任均由使用者承擔。

您必須遵守我們的協議,如您下載該資源,行為將被視為對《免責聲明》全部內容的認可->聯系老梁投訴資源
LaoLiang.Net部分資源來自互聯網收集,僅供用于學習和交流,請勿用于商業用途。如有侵權、不妥之處,請聯系站長并出示版權證明以便刪除。 敬請諒解! 侵權刪帖/違法舉報/投稿等事物聯系郵箱:service@laoliang.net
意在交流學習,歡迎贊賞評論,如有謬誤,請聯系指正;轉載請注明出處: » ThinkPHP下PDO連接數據庫報錯出現“PDO->__construct(‘mysql:host=localhost…’”(SQLSTATE[HY000] [2002])

發表回復

本站承接,網站推廣(SEM,SEO);軟件安裝與調試;服務器或網絡推薦及配置;APP開發與維護;網站開發修改及維護; 各財務軟件安裝調試及注冊服務(金蝶,用友,管家婆,速達,星宇等);同時也有客戶管理系統,人力資源,超市POS,醫藥管理等;

立即查看 了解詳情