MySQL skip_name_resolve参数的设置
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参数的设置的更多相关文章
- 关于MySql链接url参数的设置
jdbc.driverClassName=com.mysql.jdbc.Driverjdbc.url=jdbc:mysql://localhost:3306/database?useUnicode=t ...
- MySQL安装后的设定及其变量(参数)的设置
1.为所有root用户设定密码:mysql> SET PASSWORDmysql> update mysql.user SET password=PASSWORD("your_p ...
- 关于MySql链接url参数的设置 专题
报错: Establishing SSL connection without server's identity verification is not recommended. According ...
- MySql链接url参数的设置
mysql JDBC URL格式如下: jdbc:mysql://[host:port],[host:port].../[database][?参数名1][=参数值1][&参数名2][=参数值 ...
- 关于skip_name_resolve参数的总结
作为MySQL调优的一部分,很多人都推荐开启skip_name_resolve.这个参数是禁止域名解析的(当然,也包括主机名).很多童鞋会好奇,这背后的原理是什么,什么情况下开启这个参数比较合适. 基 ...
- mysql服务器参数
mysql服务器参数: 配置是从上往下读取,同一个参数项,后边的配置项会覆盖前边的配置项 mysql获取配置信息路径: 命令行参数 mysqld_safe --datadir=/data/sq ...
- 第四课(2)——mysql配置参数讲解
*****************general***************** user 启动mysql domain的用户 port 数据库端口号 socket 数据库socket文件的路径 p ...
- mysql 常见参数
my.cnf[client] 对mysql的所有客端都生效的[mysql] 只对mysql这个命令有效了[mysqd][mysqld_multi] 多实例启动[mysqld_safe][mysqldN ...
- 【查阅】mysql配置文件/参数文件重要参数笔录(my.cnf)
持续更新,积累自己对参数的理解 [1]my.cnf参数 [client]port = 3306socket = /mysql/data/3306/mysql.sockdefault-character ...
- [原创]MySQL innodb_rollback_on_timeout参数对锁的影响
环境:Server version: 5.6.21-log MySQL Community Server (GPL) 前提提要: innodb_rollback_on_timeout是 ...
随机推荐
- killall: command not found
centos7精简安装后,使用中发现没有killall命令.经查找,可以通过以下命令解决:yum install psmisc -y 简单介绍一下 psmisc :Psmisc软件包包含三个帮助管理/ ...
- WDA学习(26):Phase Indicator使用
1.19 UI Element:Phase Indicator使用 本实例测试创建Phase Indicator; 运行结果: 1.创建Component,View: V_PHASE_IND; 2.创 ...
- 2022-05-30内部群每日三题-清辉PMP
1.对于一个长期的基础设施项目,由于全球商业环境,项目经理必须获得风险最小的供应商.项目经理应该使用什么合同类型? A.固定总价合同(FFP) B.成本加固定费用合同(CPFF) C.总价加激励费用合 ...
- Java使用RestTemplate发送Post请求时携带参数
String url = "https://www.baidu.com"; HttpHeaders headers = new HttpHeaders(); //设置请求头,自己从 ...
- HTTP头注入:XFF注入
0x00:XFF是什么? X-Forwarded-For:简称XFF头,它代表客户端,也就是HTTP的请求端真实的IP,(通常一些网站的防注入功能会记录请求端真实IP地址并写入数据库or某文件[通过修 ...
- 无法识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确,然后再试一次
无法识别为 cmdlet.函数.脚本文件或可运行程序的名称.请检查名称的拼写,如果包括路径,请确保路径正确,然后再试一次 解决方法: 1.在开始菜单里找到Windows PowerShell.并以管理 ...
- Java集合-练习巩固
练习一 public class H1_Test { public static void main(String[] args) { H1_News h1News = new H1_News(&qu ...
- JavaScript案例:倒计时
展示效果: 代码示例: <!DOCTYPE html> <html lang="en"> <head> <meta charset=&qu ...
- 关于MYSQL知识点复习
关于MYSQL关联查询JOIN: https://www.cnblogs.com/withscorpion/p/9454490.html
- 简单了解如何自己动手制作RPM包
导读 RPM文件在Linux系统中的安装最为简便.以著名的图像处理软件XV为例,其RPM包xv-3.10a-13.i386.rpm可以在该程序的主页中下载取得. 我们介绍如何自己动手制作RPM包.0, ...