前幾天晚上下班回來,心血來潮,第一次使用 hhvm,七八年前寫的一個有一百多萬次計算量的 php 5.6程序,用了hhvm 竟然能用 1 小時 就運算完了,大出乎我意料。但 如是代碼中要連接 mysql ,默認安裝的 hhvm 就會拋出一個 pdo 的異常
Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[HY000] [2002] Can't connect to local MySQL server through socket '/dev/null' (111)' in ...
今天週末,有時間去想想這個問題,
用 hhvm --info 查看了一下,發現 pdo_mysql.default_socket 值爲空,
default_socket 字面意思已經很明顯了,然後編輯 /etc/hhvm/php.ini 設置 正確的 mysql unix socket 的路徑
pdo_mysql.default_socket => /var/run/mysqld/mysqld.sock