一:服務器異常:Host 'xx.xxx.xx.xxx' is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts'
發現主機又出錯了,錯誤是這樣。ERROR 1129 (00000): Host 'XXXXXX' is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts'
查了下資料
這說明mysqld已經得到了大量(max_connect_errors)的主機'hostname'的在中途被中斷了的連接請求。在 max_connect_errors次失敗請求后,mysqld認定出錯了(象來字一個黑客的攻擊),並且阻止該站點進一步的連接,直到某人執行命令 mysqladmin flush-hosts。
缺省地,mysqld在10個連接錯誤后阻塞一台主機。你可以通過象這樣啟動服務器很容易地調整它: set global max_connect_errors=1000;
注意,對給定的主機,如果得到這條錯誤消息,你應該首先檢查該主機的TCP/IP連接有沒有問題。如果你的TCP/IP連接不在運行,增加max_connect_errors變量的值對你也不會有幫助!
二:本地或者是遠程連接mysql速度非常慢的原因和解決方法
當遠程訪問mysql時,mysql會解析域名,會導致訪問速度很慢;
遠程連接MYSQL速度慢,有時遠程連接到MYSQL用時4-20秒不等,本地連接MYSQL正常,出現這種問題的主要原因是,默認安裝的MYSQL開啟了DNS的反向解析,在MY.INI(WINDOWS系統下)或MY.CNF(UNIX或LINUX系統下)文件的[mysqld]下加入skip-name-resolve這一句。
但是,這樣會引起一個問題:連接mysql時,不能使用 localhost連接了,而是要使用IP地址的;如果是按localhost對用戶賦權限的話,用戶登錄權限也要修改一下的。
[mysqld]
skip-name-resolve