在air上,用MySQLi方式連接數(shù)據(jù)庫就出現(xiàn)這個問題了,原來是mac系統(tǒng)配置MySQL環(huán)境的時候丟失系統(tǒng)的mysql.socket造成的,大概的意思就是。你用php連接MySQL的時候,需要一個mysql.socket文件,但是這個文件并沒有能夠正確的在你的php.ini文件中映射,路徑不對,暫且這么理解吧,我不求甚解了。
操作系統(tǒng):mac os
1、找到php.ini find / -name php.ini 2、然后找到pdo_mysql.default_socket,mysql.default_socket,mysqli.default_socket你會發(fā)現(xiàn)他們后面的值是空的,或者帶有什么路徑的值。 3、用phpinfo()函數(shù)查看擴展中pdo.mysql,mysqli中所用的mysql.sock連接是什么。跟第二部進行對比。 4、找到文件find / -name mysql.sock 然后你會發(fā)現(xiàn)這個mysql.sock的文件的位置就在  /PRivate/tmp/mysql.sock 。接著,我們把這個路徑替換到第二步驟中那些socket連接后面去: pdo_mysql.default_socket=/private/tmp/mysql.sock mysql.default_socket = /private/tmp/mysql.sock mysqli.default_socket = /private/tmp/mysql.sock 當然,這個路徑我只是示例,具體看你服務器上的mysql.sock文件到路徑位置了。 5、重啟Apache服務器:sudo /usr/sbin/apachectl restart 來刷新php.ini文件。 6、驗證,再次使用phpinfo()函數(shù)輸出,查看上面提到的幾個值,看看是否有了變化。 7、開始連接,可以參考我的mysqli連接MySQL的文章。現(xiàn)在就不會報錯了
雖然問題解決了,但是對mysq.sock文件和php.ini文件,還有眾多配置的問題不是真的弄懂。先記錄一下吧。QAQ
新聞熱點
疑難解答
圖片精選