PHP mysql_connect() 出現 function not define 問題解決

Redhat MySQL 預設會將 mysql.sock 放在 /var/lib/mysql/mysql.sock, 但是另外自己 make 的 php, 預設會去拉 /tmp/mysql.sock, 所以會連不到 MySQL, 或者 mysql_connect() 會出現 function not define 等問題(php.ini 有 extension=mysql.so, 並也 restart apache, 卻還出現此錯誤).

只要去修改 my.cnf, 將 /var/lib/mysql/mysql.sock 的路徑, 改到 /tmp/mysql.sock 即可. 如同以下步驟:

  1. vi /etc/my.cnf
  2. #socket=/var/lib/mysql/mysql.sock # 註解掉
  3. socket=/tmp/mysql.sock # 設到 /tmp/mysql.sock

此完成後即可正常使用.


關於 Tsung

對新奇的事物都很有興趣, 喜歡簡單的東西, 過簡單的生活.
本篇發表於 My_Note-Unix。將永久鏈結加入書籤。

發表迴響