在騰訊云上面搭建的mysql使用開發(fā)的電腦上navicat進(jìn)行訪問時(shí)總是特別的慢,原來(lái)是Mysql會(huì)對(duì)請(qǐng)求的地址進(jìn)行域名解析,開發(fā)的電腦并沒有域名,所以會(huì)導(dǎo)致特別的慢,使用以下進(jìn)行解決
[mysqld]
skip-name-resolve
skip-grant-tables
官方的解釋
How MySQL
uses DNS When a new thread connects to mysqld, mysqld will
spawn a new thread to handle the request. This thread will first check
if the hostname is in the hostname cache. If not the thread will call
gethostbyaddr_r() and gethostbyname_r() to resolve the hostname. If
the operating system doesn't support the above thread-safe calls, the
thread will lock a mutex and call gethostbyaddr() and gethostbyname()
instead. Note that in this case no other thread can resolve other
hostnames that is not in the hostname cache until the first thread is
ready. You can disable DNS host lookup by starting mysqld with
–skip-name-resolve. In this case you can however only use IP names in
the MySQL privilege tables. If you have a very slow DNS and many
hosts, you can get more performance by either disabling DNS lookop
with –skip-name-resolve or by increasing the HOST_CACHE_SIZE define
(default: 128) and recompile mysqld. You can disable the hostname
cache with –skip-host-cache. You can clear the hostname cache with
FLUSH HOSTS or mysqladmin flush-hosts. If you don't want to allow
connections over TCP/IP, you can do this by starting mysqld with
–skip-networking.
根據(jù)文檔說(shuō)明,如果你的mysql主機(jī)查詢DNS很慢或是有很多客戶端主機(jī)時(shí)會(huì)導(dǎo)致連接很慢,由于我們的開發(fā)機(jī)器是不能夠連接外網(wǎng)的,所以DNS解析是不可能完成的,從而也就明白了為什么連接那么慢了。同時(shí),請(qǐng)注意在增加該配置參數(shù)后,mysql的授權(quán)表中的host字段就不能夠使用域名而只能夠使用 ip地址了,因?yàn)檫@是禁止了域名解析的結(jié)果。
總結(jié)
以上所述是小編給大家介紹的MySql使用skip-name-resolve解決外網(wǎng)鏈接客戶端過慢問題,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
您可能感興趣的文章:- IDEA鏈接MySQL報(bào)錯(cuò)08001和連接成功后不顯示表的問題及解決方法
- mysql安裝navicat之后,出現(xiàn)2059,Authentication plugin及本地鏈接虛擬機(jī)docker,遠(yuǎn)程鏈接服務(wù)器
- python pymysql鏈接數(shù)據(jù)庫(kù)查詢結(jié)果轉(zhuǎn)為Dataframe實(shí)例
- MySQL多表查詢實(shí)例詳解【鏈接查詢、子查詢等】
- 實(shí)例操作MySQL短鏈接
- MySql 8.0.11 安裝過程及 Navicat 鏈接時(shí)遇到的問題小結(jié)
- 詳解MySQL分組鏈接的使用技巧
- 利用ssh tunnel鏈接mysql服務(wù)器的方法
- MySQL 查看鏈接及殺掉異常鏈接的方法