Skip_name_resolve

Dynamic No
Default Value OFF

默认值是off,也就是在检查客户端连接时在第一次要解析主机名(如果有开启DNS服务器,则做 “ IP->hostname & hostname->IP反向解析 ”;如没有开启DNS,则不做解析);

连接成功则将信息存储在host cache中。

Host Cache Operation

MySQL服务用host cache来保存非本地TCP连接,不保存127.0.0.1、::1和Unix socket创建的连接。

>由于保存了IP-to-Host列表,MySQL服务避免每次去做DNS检查,只在第一次做解析和反解析

>host cache保存着一些连接错误信息,max_connect_errors决定了连接错误次数后锁定该IP,锁定后需要 Flushing the Host Cache来解除

host cache的行记录如下:

1.当首次TCP客户端连接通过一个给定的地址访问MySQL服务,一行新的cache记录被创建,记录IP,host name,client 查找检验标识。初始,host name是null,标识是false,此条目还用于

后续同样IP的客户端连接

2.如果检验标识是false,MySQL服务尝试IP-to-host name-to-IP DNS这样的解决方式。如果成功则更新标识为true。如果尝试的解决方式不成功,则分永久和短暂,如果永久失败则置host

name为null,flag为true;如果是短暂失败则保持host name为null,flag为false。

设置host cache的大小

[mysqld]
host_cache_size=200

当连接失败达到max_connect_error设置的次数,该host将被锁定

[mysqld]
max_connect_errors=10000

客户端连接

1.一个应用的新建的客户端连接过来,MySQL服务首先检查host name是否在host cache,如果是,服务决定是否继续提供请求看该主机是否被锁住;

2.如果客户端连接的不在cache,服务试图去解析host name,尝试IP-to-host name-to-IP DNS这样的解决方式,如果一切正常则存储信息到host cache;

3.如果cache满了,则最近最少用的记录则被丢弃

MySQL skip_name_resolve参数的设置的更多相关文章

  1. 关于MySql链接url参数的设置

    jdbc.driverClassName=com.mysql.jdbc.Driverjdbc.url=jdbc:mysql://localhost:3306/database?useUnicode=t ...

  2. MySQL安装后的设定及其变量(参数)的设置

    1.为所有root用户设定密码:mysql> SET PASSWORDmysql> update mysql.user SET password=PASSWORD("your_p ...

  3. 关于MySql链接url参数的设置 专题

    报错: Establishing SSL connection without server's identity verification is not recommended. According ...

  4. MySql链接url参数的设置

    mysql JDBC URL格式如下: jdbc:mysql://[host:port],[host:port].../[database][?参数名1][=参数值1][&参数名2][=参数值 ...

  5. 关于skip_name_resolve参数的总结

    作为MySQL调优的一部分,很多人都推荐开启skip_name_resolve.这个参数是禁止域名解析的(当然,也包括主机名).很多童鞋会好奇,这背后的原理是什么,什么情况下开启这个参数比较合适. 基 ...

  6. mysql服务器参数

    mysql服务器参数: 配置是从上往下读取,同一个参数项,后边的配置项会覆盖前边的配置项 mysql获取配置信息路径: 命令行参数    mysqld_safe  --datadir=/data/sq ...

  7. 第四课(2)——mysql配置参数讲解

    *****************general***************** user 启动mysql domain的用户 port 数据库端口号 socket 数据库socket文件的路径 p ...

  8. mysql 常见参数

    my.cnf[client] 对mysql的所有客端都生效的[mysql] 只对mysql这个命令有效了[mysqd][mysqld_multi] 多实例启动[mysqld_safe][mysqldN ...

  9. 【查阅】mysql配置文件/参数文件重要参数笔录(my.cnf)

    持续更新,积累自己对参数的理解 [1]my.cnf参数 [client]port = 3306socket = /mysql/data/3306/mysql.sockdefault-character ...

  10. [原创]MySQL innodb_rollback_on_timeout参数对锁的影响

    环境:Server version:         5.6.21-log MySQL Community Server (GPL) 前提提要: innodb_rollback_on_timeout是 ...

随机推荐

  1. VIT论文笔记

    VIT An image is worth 16x16 words: transformers for image recognition at scale 将transformer首次应用在视觉任务 ...

  2. .NET 6 + Hangfire 实现后台作业管理

    一.环境: ASP.NET Core 6 + Hangfire + MySQL   二.新建ASP.NET Core空项目 项目名称:HangfireExample 框架:.NET 6.0   三.N ...

  3. js计算时间为刚刚、几分钟前、几小时前、几天前··

    //dateTimeStamp是一个时间毫秒,注意时间戳是秒的形式,在这个毫秒的基础上除以1000,就是十位数的时间戳.13位数的都是时间毫秒.     function timeago(dateTi ...

  4. golang流程控制if,switch分支

    if 分支 if 单分支 if 条件表达式 { 逻辑代码 } package main import "fmt" func main() { //var a int = 9 //i ...

  5. iOS 制作一个动态库

    方式一 1.新建一个framework  命名为test 2.将build archive architecture only  改成  NO 3.将Mach-O Type 改成 static Lib ...

  6. 容器 之搭建 jenkins ci 平台

    1 部署 gitlab docker run -d \ --name gitlab \ -p 8443:443 \ -p 80:80 \ -p 9998:22 \ -v $PWD/config:/et ...

  7. 用keil调试程序的时候,一点击调试就弹出STARTUP.A51那个窗口,解决办法

    前天晚上我折腾了很久 网上查了各种方法.最终自己发现,调试之前一定要在keil编译一遍,再debug这样就不会弹窗了. 另外,keil在调试过程中,修改代码是不会有任何作用的,你看我故意写错,继续单步 ...

  8. AC和瘦AP组网

    ac和瘦ap组网 参考了这篇文章[Cisco Packet Tracer]WLC配置瘦AP指南_时间进行的小宇的博客-CSDN博客_思科瘦ap配置命令 服务器server-pt配置 先设置IP地址,随 ...

  9. 利用canvas合并两个海报

    图片1 是个海报,图片2是个二维码,把这个二维码镶嵌到图片1 的指定位置上 function drawAndShareImage(opt, cb) { if (!opt) { console.erro ...

  10. <CONTAINING_RECORD宏>引发的<结构体深度剖析(内存对齐,对齐参数,偏移量)>

    什么是结构体内存对齐?为什么要对齐?怎样对齐? 结构体内存对齐:元素是按照定义顺序一个一个放到内存中去的,但并不是紧密排列的. 从结构体存储的首地址开始,每个元素放置到内存中时,它都会认为内存是按照自 ...