關於php中使用IP和localhost連接問題


php連接數據庫分兩種,一種是IP,一種是unix sock,即localhost,如果是連接本地mysql,用localhost較好,也方便后期的管理,如果用於連接非本地數據庫,則要通過IP了。

php連接mysql代碼


<?php
$con = mysql_connect('localhost','phpadmin','phptest');
if (!$con)
{
die('cannot connect mysql' . mysql_error());
}
echo "mysql connect OK";
mysql_close();
?>

打開網頁后出現下面代碼

cannot connect mysqlCan't connect to local MySQL server through socket '/opt/mysql/var/mysql.sock' (2)

1、看mysql有沒有授權用戶通過localhost訪問數據庫,如果已經有授權了,就得從另外一方面來排查。

2、查看mysql的配置文件,看看sock是否有配置,如果沒有,添加配置,指定路徑,方便一會從php.ini文件來指定,如果不能隨便重啟mysql服務,通過命令來查找sock所在目錄(此時mysql服務已經開啟,會有sock存在系統中,未開啟服務時不存在)#find / -name mysql.sock ,這樣可以看到scok所在目錄,然后修改php.ini配置文件,找到mysql.default_socket = ,在等號后面添加上面找到的sock路徑,如mysql.default_socket = /tmp/mysqld.sock,然后重啟php-fpm,應該就可以了。

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM