最近發(fā)現(xiàn)ssh連接的時候卻很慢,ping的速度非常好,讓人誤以為是ssh連接不上。?
分析結(jié)果,主要原因為:DNS的解析IP導致,可分別使用以下幾種分析處理方式?
1.linux ssh連接慢 最近發(fā)現(xiàn)ssh連接的時候卻很慢,ping的速度非常好,讓人誤以為是ssh連接不上。?
分析結(jié)果,主要原因為:DNS的解析IP導致,可分別使用以下幾種分析處理方式?
1.1、在server上/etc/hosts文件中把你本機的ip和hostname加入
1.2、在server上/etc/ssh/sshd_config文件中修改或加入UseDNS=no ?
1.3、注釋掉server上/etc/resolv.conf中不使用的IP所有行
1.4、修改server上/etc/nsswitch.conf中hosts為hosts:files
1.5、authentication gssapi-with-mic也有可能出現(xiàn)問題,在server上/etc/ssh/sshd_config文件中修改 GSSAPIAuthentication no。/etc/init.d/sshd restart重啟sshd進程使配置生效。 如之前為服務器配置了雙網(wǎng)卡,使的在/etc/resolv.conf文件中多了一行目前不使用的IP地址。注釋或者刪除該行即可。
2.mysql連接速度慢 在局域網(wǎng)內(nèi)連接其他機器的MYSQL,發(fā)現(xiàn)速度慢的很,不知道什么原因,總有幾秒的延遲.遠程連接mysql異常緩慢,經(jīng)常執(zhí)行一條命令,然后要等個10幾秒執(zhí)行下一條。解決方法是在mysql的my.ini中的mysqld節(jié)加入skip-name-resolve,該命令參數(shù)避免了對主機名進行解析從而加快連接速度。后來在網(wǎng)上發(fā)現(xiàn)解決方法,my.ini里面添加[mysqld]
skip-name-resolve
skip-grant-tables
這樣速度就快了!
skip-name-resolve
skip-grant-tables
原因是:
a、mysql客戶端每次訪問db,mysql就會試圖去解析來訪問的機器的hostname,并緩存到hostname cache,如果這時解析不了,等一段時間會失敗,數(shù)據(jù)才能被取過來。
b、系統(tǒng)將對任何用戶的訪問不做任何訪問控制
友情提示:重啟mysql生效
skip-name-resolve
選項就能禁用DNS解析,連接速度會快很多。不過,這樣的話就不能在MySQL的授權(quán)表中使用主機名了而只能用ip格式。
若使用–skip-grant-tables系統(tǒng)將對任何用戶的訪問不做任何訪問控制,但可以用 mysqladmin flush-privileges或mysqladmin reload來開啟訪問控制;默認情況是show databases語句對所有用戶開放。