1. 程式人生 > >MySQL 資料庫連線失敗 SQLSTATE[HY000] [2003] Can't connect to MySQL server on '127.0.0.1' (13)

MySQL 資料庫連線失敗 SQLSTATE[HY000] [2003] Can't connect to MySQL server on '127.0.0.1' (13)

CentOS6.5x64 安裝禪道6.2,生成配置檔案,資料庫連線失敗

資料庫連線失敗 SQLSTATE[HY000] [2003] Can't connect to MySQL server on '127.0.0.1' (13)

root,密碼肯定沒有錯(命令列可以登入),用的127.0.0.1

PHP安裝正常,MySQL配置正確,PHP的PDO、MySQL擴充套件正確,使用

<?php
$link=mysql_connect('localhost','root','password');
if ($link)
echo "successfu";
else
echo "Faile";
mysql_close();
?>

php程式碼能夠正確連線資料庫,但是安裝禪道過程中始終連不上MySQL資料庫Can't connect to MySQL server on '127.0.0.1' (13),各種原因分析無果,最後仔細閱讀my.cnf檔案,發現mysqld中有配user=mysql的資訊,如下:
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

將user=mysql該為user=root 後重啟mysqld服務後安裝一切正常,官方引數解釋:

mysqld程式在啟動後將在給定UNIX/Linux賬戶下執行; mysqld必須從root賬戶啟動才能在啟動後切換到另一個賬戶下執行; mysqld_safe指令碼將預設使用–user=mysql選項來啟動mysqld程式。