MySQL 连接设置

  • interactive_timeout = 1800
    • 指的是 mysql 在关闭一个交互的连接之前所要等待的秒数(交互连接如mysql gui tool 中的连接)
    • 全局,会话变量,动态变量,默认值为 28800(8 个小时),整型值
  • wait_timeout = 1800
    • 指的是 MySQL 在关闭一个非交互的连接之前所要等待的秒数
    •  全局,会话变量,动态变量,默认值为 28800(8 个小时),整

      型值。

  • lock_wait_timeout = 1800
    • MDL 元数据锁的超时时间

      o 注意,凡是需要获取 MDL 锁的操作都受到这个超时参数的影响,不单单是 DDL 语句,包含在表上的 DML、DDL 操作,以及视图、存储过程、存储函数、lock tables,flush table withread lock、handler 语句等。但不适用于隐式访问系统表的语句(但适用于使用 select、update 显式访问系统表的语句),如:grant 和 revoke 等

      o 该参数不适用于延迟插入的语句,因为发起延迟插入的会话并不会收到超时的通知。

      o 全局,会话变量,动态变量,默认值为 31536000(一年),整型值,取值范围 1~31536000,单位秒。

  • skip_name_resolve = 1
    • 设置是否跳过域名解析,只使用 IP 和 localhost 作为主机地址

      o 如果为 OFF,则 mysqld 在检查客户端连接时会使用 DNS 解析主机名(会优先使用/etc/hosts 中的记录进行解析,如果不存在对应的记录,就会走 DNS 查找,如果 DNS 查找失败)。 如果为ON,则 mysqld 只使用 IP 解析客户端。 在这种情况下,授权表中的所有主机列值必须为 IP 地址或 localhost

      o 全局变量,只读变量,布尔型,默认值为 OFF

  • max_connections = 512
    • 此参数控制允许连接到 mysql 的最大数量,默认是 151,如果状态变量connect_errors_max_connections 不为零,并且一直在增长,就说明不断有连接请求因为数据库连接达到最大 允许而连接失败,应该考虑增大 max_connections 参数的值,另外,由于每个 session 操作数据库表时都要占用文件描述符,数据库连接本身也要占用文件描述符,因此在调整这个参数时,也要对应调整操作系统的 open-files-limit 设置。建议设置为历史最高位的 80%,太大了容易导致所有连接卡死。注意:这个参数完全控制不具有 super 权限的用户的并发连接数,另外 mysql 还为具有 super 权限的用户额外预留了一个连接。即 mysql 的最大连接数其实是:max_connections+1

      o 全局变量,动态变量,整型值,默认为 151,取值范围为1~100000

  • max_connect_errors = 1000000
    • 如果一个主机连续登录 mysql 失败超过这个参数(如果在没有超过这个次数之后重试连接成功过一次,那么就会重置错误计数器),则 server断拒绝这个主机继续尝试登录,可以用 flush hosts 命令刷新这个登录失败的主机记录,并调整这个参数的大小避免这种情况的发生。

      o 全局变量,动态变量,整型值,默认值为 100,64 位平台取值范围为 1~18446744073709551615。

  • net_write_timeout=60
    • 客户端向 server 端请求数据后,server 端返回 client 所需数据并在向client 端发送数据时(server 端向客户端写入数据时),如果一个数据包写入客户端之后,客户端没有响应,那么 server 端会等待该参数定义的时长,如果超过这个时长后客户端还没有给出响应,那么 server 端将断开 client 连接。这与 net_read_timeout 参数的作用类似。

      o 全局,会话,动态变量,整型值,最小值为 1,默认值为 60。

  • net_retry_count=10
    • 设置在通信端口上的读取或写入中断时,重试多次放弃之后仍然失败就放弃。由于 FreeBSD 系统内部中断信号会发送到所有线程,因此在FreeBSD 操作系统上该变量的值应该设置一个较高的值。

      o 全局,会话,动态变量,整型值,默认值为 10,64 位平台取值范围为:1~18446744073709551615

  • net_read_timeout=30
    • 设置 client 向 server 端写入数据时(server 端向客户端读取数据),如果 server 端读取一个数据包 client 端超过 net_read_timeout 定义的时间没有响应,则断开 client 连接。这与 net_write_timeout 参数作用类似。

      o 全局,会话,动态变量,整型值,最小值为 1,默认值为 30。

  • net_buffer_length=65535
    • 设置每个客户端会话线程相关的连接缓冲区和结果集缓冲区初始大小,两个缓冲区在连接创建开始就设置为 net_buffer_length 变量给出的大小,后续根据需要可动态放大到 max_allowed_packet 系统变量指定的字节大小, 每个 SQL 语句执行完成之后,结果集缓冲区自动缩小到net_buffer_length 变量指定的大小。

      o 该变量通常不应该更改,但是如果内存很少,则可以将其设置小一些。

      o 全局变量,会话变量(会话级别为只读变量),动态变量,整型值,默认值为 16K,取值范围为:1024~1048576 字节(1K~1M)。

  • skip_networking=OFF
    • 设置是否跳过 TCP/IP 连接方式,如果服务器仅允许本地(非 TCP /IP)连接,则设置此选项为 ON。 在 Unix 上,本地连接使用 Unix 套接字文件。 在 Windows 上,本地连接使用命名管道或共享内存。设置仅允许本地连接时,使用--skip-networking 启动选项或者在配置文件中将此变量设置为 ON。

      o 全局变量,只读变量,布尔型,默认值为 OFF。

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值