在CentOS 5.3安裝好MySQL v5.1.35,使用預設的設定檔,即使用TCP port 3306連線MySQL的方式是沒有問題的,
在MySQL server同部server機上的phpMyAdmin亦沒有任何問題.
引用
cp -p /usr/local/mysql/share/mysql/my-huge.cnf /etc/my.cnf
但為了更安全,我打算啟用my.cnf中的skip-networking, 即不使用port 3306, 改用socket的方式來連線
引用
[mysqld]
socket = /usr/local/mysql/tmp/mysql.sock
pid-file = /usr/local/mysql/tmp/mysqld.pid
bind=127.0.0.1
skip-networking
skip-name-resolve
但使用skip-networking後,我用SSH連線上去,在MySQL server機上用指令
[root@test]# /usr/local/mysql/bin/mysql -u root -p -h 127.0.0.1
Enter password:
ERROR 2003 (HY000): Can't connect to MySQL server on '127.0.0.1' (111)
改用/usr/local/mysql/bin/mysql -u root -p -h localhost 就沒有問題
而phpmyadmin就出現
#2013 - Lost connection to MySQL server at 'reading initial communication packet', system error: 111
無論用 $cfg['Servers'][$i]['host'] = '127.0.0.1'; 或 $cfg['Servers'][$i]['host'] = 'localhost'; 都同樣出現以上錯誤.
現在我的所有程式都無法連線MySQL. 我是用以下方式創建用戶user2的
GRANT ALL PRIVILEGES ON *.* TO user2@localhost IDENTIFIED BY "mypassword" WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON *.* TO user2@'127.0.0.1' IDENTIFIED BY "mypassword" WITH GRANT OPTION;
請教各位學長,如果啟用skip-networking選項, 該怎樣才能令MySQL可以正常連線呢? thx~
[轉貼]MySQL無法使用skip-networking
版主: stnet253
誰在線上
正在瀏覽這個版面的使用者:Semrush [Bot] 和 1 位訪客