=====================================================================================================
故障現象 : 沒法鏈接 mysql
錯誤信息 :ERROR 1045 (28000): Access denied for user 'usera'@'localhost' (using password:YES)
緣由 : 用戶帳號並未建立
檢查 :以管理員ROOT登陸後,show grants for 'usera'@'localhost'; 或者 select user from mysql.user; 確認用戶帳號是否存在。
處理 :建立用戶帳號。
=====================================================================================================mysql
==========================================================================
故障現象 : 沒法鏈接 mysql
錯誤信息 :ERROR 1130: Host xx.xx.xx.xx is not allowed to connect to this MySQL server
緣由 : mysql服務器沒有賦予此客戶端遠程鏈接的權限。
檢查 :在mysql服務器本地查詢mysql庫裏user表對應的host是否包含客戶端機器的IP(%爲不限制IP容許遠程鏈接)。
處理 :修改mysql庫下的user表:update user set host = '%' where user ='XXX';flush privileges;
====================================================================================linux
=====================================================================================================
故障現象 : 沒法鏈接 mysql
錯誤信息 :ERROR 2003 (HY000): Can't connect to MySQL server on 'hostxxxxx' (10061)
緣由 : mysqld數據庫服務沒有啓動。
檢查 :在windows 的任務管理器,或者 unix/linux 下 ps -aux | grep mysql 看一下。確認服務已經啓動。
處理 :啓動mysqld 服務
=====================================================================================================sql
=====================================================================================================
故障現象 : 沒法鏈接 mysql
錯誤信息 :ERROR 2003 (HY000): Can't connect to MySQL server on 'hostxxxxx' (10061)
緣由 : mysqld 客戶端與服務端端口不一致。
檢查 :在my.ini 設置下服務端口 這種狀況特別是客戶都與遠程服務器端口不一致 很容易出現的問題
處理 :啓動mysqld 服務
===================================================================================================== 數據庫
=====================================================================================================
故障現象 : 沒法鏈接 mysql windows
錯誤信息 :ERROR 2003 (HY000): Can't connect to MySQL server on 'hostxxxxx' (10061)
緣由 : 同時開啓大量的tcp端口和而僅有一小部分短命端口時,當他們處於time_wait時期,mysql可能會跑錯端口
檢查 :在windows 默認會開啓5000個臨時端口供調用,而他們的生命僅僅是120s,意思是在關閉端口的時候會有120秒的延時
處理 :減小不沒必要要的tcp端口。
修改註冊表
===================================================================================================== windows
=====================================================================================================
故障現象 : 沒法鏈接 mysql
錯誤信息 :ERROR 2002 (HY000): Can't connect to local MySQL server server through socket '/var/lib/mysql/mysql.sock'(111)
緣由 : mysqld的mysql.sock沒在相應的位置。
處理 :1.先查看/etc/rc.d/init.d/mysql status 看看是否啓動
2.改權限 chown -R mysql:msyql /var/lib/mysql
3.修改/etc/my.cnf (注意:先停數據庫)
[mysqld]
datadir=/usr/local/mysql/data
socket=/var/lib/mysql/mysql.sock
[mysql.server]
user=mysql
basedir=/usr/local/mysql
[client]
socker=/var/lib/mysql/mysql.sock
4.啓動數據庫
===================================================================================================== 服務器
概括以下:
故障現象 : 沒法鏈接 mysql
===================================================================================
錯誤信息 :ERROR 2003 (HY000): Can't connect to MySQL server on 'hostxxxxx' (10061)
緣由 : mysqld數據庫服務沒有啓動。
檢查 :在windows 的任務管理器,或者 unix/linux 下 ps -aux | grep mysql 看一下。確認服務已經啓動。
處理 :啓動mysqld 服務
===================================================================================
錯誤信息 :ERROR 1130: Host xx.xx.xx.xx is not allowed to connect to this MySQL server
緣由 : mysql服務器沒有賦予此客戶端遠程鏈接的權限。
檢查 :在mysql服務器本地查詢mysql庫裏user表對應的host是否包含客戶端機器的IP(%爲不限制IP容許遠程鏈接)。
處理 :修改mysql庫下的user表:update user set host = '%' where user ='XXX';flush privileges;
===================================================================================
錯誤信息 :ERROR 1045 (28000): Access denied for user 'usera'@'localhost' (using password:YES)
緣由 : 用戶帳號並未建立
檢查 :以管理員ROOT登陸後,show grants for 'usera'@'localhost'; 或者 select user from mysql.user; 確認用戶帳號是否存在。
處理 :建立用戶帳號。
===================================================================================
錯誤信息 :ERROR 2003 (HY000): Can't connect to MySQL server on 'hostxxxxx' (10061)
緣由 : mysqld 客戶端與服務端端口不一致。
檢查 :在my.ini 設置下服務端口 這種狀況特別是客戶都與遠程服務器端口不一致 很容易出現的問題
處理 :啓動mysqld 服務
===================================================================================
錯誤信息 :ERROR 2002 (HY000): Can't connect to local MySQL server server through socket '/var/lib/mysql/mysql.sock'(111)
緣由 : mysqld的mysql.sock沒在相應的位置。
處理 :1.先查看/etc/rc.d/init.d/mysql status 看看是否啓動
2.改權限 chown -R mysql:msyql /var/lib/mysql
3.修改/etc/my.cnf (注意:先停數據庫)
[mysqld]
datadir=/usr/local/mysql/data
socket=/var/lib/mysql/mysql.sock
[mysql.server]
user=mysql
basedir=/usr/local/mysql
[client]
socker=/var/lib/mysql/mysql.sock
4.啓動數據庫
===================================================================================
經常使用檢查步驟。
1. PING hostname 或 PING 189.xx.xx.xx 確認服務器IP層通訊沒有問題。若是PING通則繼續(2),PING不通則找網絡方面專家協助。
2. TELNET hostname 3306 確認服務器TCP層通訊沒有問題。(你的端口號可能不是3306),如通則繼續,如不通,請檢查mysqld 是否已經在運行,防火牆屏蔽了端口。
3. 檢查用戶權限, show grants ...網絡
你的用戶沒有使用 root 帳戶,或者你的root帳戶沒有授予登陸權限,須要使用
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
受權socket