MySQL DNS的使用过程详细分析

 更新时间:2012年11月16日 09:17:19   作者:  
当 mysql 客户端连接 mysql 服务器 (进程为:mysqld),mysqld 会创建一个新的线程来处理该请求。该线程先检查是否主机名在主机名缓存中
当 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 。

相关文章

  • MySQL中使用自定义变量 编写偷懒的UNION示例

    MySQL中使用自定义变量 编写偷懒的UNION示例

    以下是对MySQL中使用自定义变量,编写一个UNION的示例进行了详细的介绍,需要的朋友可以过来参考下
    2013-07-07
  • Mysql 8.0.18 hash join测试(推荐)

    Mysql 8.0.18 hash join测试(推荐)

    这篇文章给大家介绍Mysql 8.0.18 hash join测试的相关知识,本文通过实例代码讲解,非常不错,具有一定的参考借鉴价值,需要的朋友参考下吧
    2019-10-10
  • 关于MySQL中Update使用方法举例

    关于MySQL中Update使用方法举例

    这篇文章主要给大家介绍了关于MySQL中Update使用方法的相关资料,更新数据是使用数据库时最重要的任务之一,在本教程中您将学习如何使用MySQL UPDATE语句来更新表中的数据,需要的朋友可以参考下
    2023-11-11
  • MySQL慢查询分析工具pt-query-digest详解

    MySQL慢查询分析工具pt-query-digest详解

    pt-query-digest是用于分析mysql慢查询的一个工具,它可以分析binlog、General log、slowlog,也可以通过SHOWPROCESSLIST或者通过tcpdump抓取的MySQL协议数据来进行分析,这篇文章主要介绍了MySQL慢查询分析工具pt-query-digest详解,需要的朋友可以参考下
    2023-01-01
  • mysql如何将id重新修改为递增

    mysql如何将id重新修改为递增

    这篇文章主要介绍了mysql如何将id重新修改为递增,本文模拟场景结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-08-08
  • 详解MySQL性能优化(一)

    详解MySQL性能优化(一)

    本文对MySQL性能优化进行了详细的总结与介绍,需要的朋友可以参考下
    2015-08-08
  • Mysql中Join的使用实例详解

    Mysql中Join的使用实例详解

    本章节我们将向大家介绍如何使用MySQL 的 JOIN 在两个或多个表中查询数据。对mysql中的join感兴趣的朋友一起学习吧
    2017-04-04
  • mysql最新版8.0.17解压版安装教程

    mysql最新版8.0.17解压版安装教程

    这篇文章主要为大家详细介绍了最新版mysql 8.0.17 解压版安装教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-09-09
  • 利用pt-heartbeat监控MySQL的复制延迟详解

    利用pt-heartbeat监控MySQL的复制延迟详解

    这篇文章主要给大家介绍了利用pt-heartbeat监控MySQL的复制延迟的相关资料,文中详细介绍了pt-heartbeat、监控原理以及安装过程等的相关内容,对大家具有一定的参考学习价值,需要的朋友们下面来一起看看吧。
    2017-06-06
  • Mysql5.6忘记root密码修改root密码的方法

    Mysql5.6忘记root密码修改root密码的方法

    这篇文章主要介绍了Mysql5.6忘记root密码修改root密码的方法的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2016-06-06

最新评论