程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> MySQL DNS的應用進程具體剖析

MySQL DNS的應用進程具體剖析

編輯:MySQL綜合教程

MySQL DNS的應用進程具體剖析。本站提示廣大學習愛好者:(MySQL DNS的應用進程具體剖析)文章只能為提供參考,不一定能成為您想要的結果。以下是MySQL DNS的應用進程具體剖析正文


當 mysql 客戶端銜接 mysql 辦事器 (過程為:mysqld),mysqld 會創立一個新的線程來處置該要求。該線程先檢討能否主機名在主機名緩存中。假如不在,線程試圖解析主機名。
假如體系是線程平安的,則 gethostbyaddr_r () 和 gethostbyname_r() 被挪用,來履行主機名解析;
假如體系不支撐線程平安挪用,則線程會鎖定一個互斥體並挪用 gethostbyaddr() 和 gethostbyname() 。在這類情形下,在第1個線程解鎖互斥體前,沒有其它線程可以解析不在主機名緩存中的主機名。
經由過程 --skip-name-resolve 選項啟動 mysqld 來禁用DNS主機名查找。此時,只可使用 MySQL 受權表中的 IP 地址,不克不及應用主機名。
假如 DNS 解析很慢且包含很多主機,經由過程用--skip-name-resolve 禁用DNS查找或增長HOST_CACHE_SIZE界說(默許值:128)偏重新編譯mysqld來進步機能;
經由過程 --skip-host-cache 選項啟動辦事器來禁用主機名緩存。要想消除主機名緩存,履行 FLUSH HOSTS 語句或履行 mysqladmin flush-hosts 敕令。
假如要完整制止 TCP/IP 銜接,用 --skip-networking 選項啟動 mysqld 。
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved