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,應該就可以了。