MySql中的常用参数查询
作者:WFkwYu 发布时间:2024-01-18 06:00:30
1、超时时间
以下这些配置项单位都是秒,在mysql命令行中可以使用show global variables like '变量名';可查询配置值。
mysql> show global variables like '%timeout%';
+-----------------------------+----------+
| Variable_name | Value |
+-----------------------------+----------+
| connect_timeout | 10 |
| delayed_insert_timeout | 300 |
| have_statement_timeout | YES |
| innodb_flush_log_at_timeout | 1 |
| innodb_lock_wait_timeout | 50 |
| innodb_rollback_on_timeout | OFF |
| interactive_timeout | 28800 |
| lock_wait_timeout | 31536000 |
| net_read_timeout | 30 |
| net_write_timeout | 60 |
| rpl_stop_slave_timeout | 31536000 |
| slave_net_timeout | 60 |
| wait_timeout | 28800 |
+-----------------------------+----------+
connect_timeout
:连接响应超时时间。服务器端在这个时间内如未连接成功,则会返回连接失败。wait_timeout
:连接空闲超时时间。与服务器端无交互状态的连接,直到被服务器端强制关闭而等待的时间。可以认为是服务器端连接空闲的时间,空闲超过这个时间将自动关闭。interactive_timeout
:连接空闲超时时间。与服务器端无交互状态的连接,直到被服务器端强制关闭而等待的时间。interactive_timeout
和wait_timeoutu
意义虽然相同,但是有使用对象有本质的区别。interactive_timeout针对交互式连接(比如通过mysql客户端连接数据库),wait_timeout针对非交互式连接(比如一般在PHP中使用PDO连接数据库,当然你可以设置CLIENT_INTERACTIVE选项来改变)。所谓的交互式连接,即在mysql_real_connect()函数中使用了CLIENT_INTERACTIVE选项。net_read_timeout
:数据读取超时时间。在终止读之前,从一个连接获得数据而等待的时间秒数;当服务正在从客户端读取数据时,net_read_timeout控制何时超时。即客户端执行数据读取,等待多少秒仍未执行成功时自动断开连接。net_write_timeout
:数据库写超时时间。和net_read_timeout意义类似,在终止写之前,等待多少秒把block写到连接;当服务正在写数据到客户端时,net_write_timeout控制何时超时。slave-net-timeout
:从库延后同步的时间,当slave认为连接master的连接有问题时,就等待N秒,然后断开连接,重新连接master
slave-net-timeout在主从同步时从库上起作用;connect_timeout:在获取连接阶段起作用;interactive_timeout和wait_timeout:在连接空闲阶段起作用;net_read_timeout和net_write_timeout:则是在连接执行时起作用。
MySQL连接超时设置的问题。默认的wait_timeout 是28800,8个小时。
解决办法有两种,
方法一,将连接池中的超时时间设置的短于这个值(本项目用的spring boot data jpa,默认连接,设置后不起作用);
方法二,把mysql的这个值设大一些:在[mysqld]下加wait_timeout = 86400。此时是设置的全局设定,可通过命令 show global variables like “%timeout%”;看到变化,而show variables like “%timeout%”;和show session variables like “%timeout%”;仍为原值。
这个值设置为多大应根据应用使用情况来定。太小会导致频繁超时,太多会导致连接长时间不释放,也会出错。所以一方面调整好这个数值,一方面采用更好的连接池方案。
2、查看最大连接数
mysql> show global status like 'Max_used_connections';
+----------------------+-------+
| Variable_name | Value |
+----------------------+-------+
| Max_used_connections | 4 |
+----------------------+-------+
1 row in set (0.00 sec)
mysql> show variables like 'max_connections%';
+-----------------+-------+
| Variable_name | Value |
+-----------------+-------+
| max_connections | 10000 |
+-----------------+-------+
1 row in set (0.01 sec)
通常max_connections的大小应该设置为比Max_used_connections状态值大,Max_used_connections状态值反映服务器连接在某个时间段是否有尖峰,如果该值大于max_connections值,代表客户端至少被拒绝了一次,可以简单地设置为符合以下条件:Max_used_connections/max_connections=0.8
3、查看当前数据库状态
mysql> status;
--------------
mysql Ver 14.14 Distrib 5.7.14, for linux-glibc2.5 (x86_64) using EditLine wrapper
Connection id: 17318
Current database:
Current user: root@localhost
SSL: Not in use
Current pager: stdout
Using outfile: ''
Using delimiter: ;
Server version: 5.7.14-log MySQL Community Server (GPL)
Protocol version: 10
Connection: Localhost via UNIX socket
Server characterset: utf8
Db characterset: utf8
Client characterset: utf8
Conn. characterset: utf8
UNIX socket: /tmp/mysql.sock
Uptime: 20 hours 2 min 14 sec
Threads: 5 Questions: 118037 Slow queries: 0 Opens: 1743 Flush tables: 1 Open tables: 916 Queries per second avg: 1.636
--------------
来源:https://blog.csdn.net/qq_35663625/article/details/120532398


猜你喜欢
- 通过官方文档https://docs.djangoproject.com/zh-hans/3.1/topics/db/multi-db/和c
- 一个方便的特性是你可以给一个视图指定默认的参数。 这样,当没有给这个参数赋值的时候将会使用默认的值。例子:# urls.pyfrom dja
- 第一种import win32clipboardimport time#速度快 容易出错class niubi(): def l
- 1、我的源码在 /home/topsec/Documents/php-7.0.11 ,安装位置在 /usr/local/php7, php.
- 运行下列脚本,可以打印出模型各个节点变量的名称:from tensorflow.python import pywrap_tensorflo
- 在读取dict的key和value时,如果key不存在,就会触发KeyError错误,如:t = { 'a':
- 简单演示import matplotlib.pyplot as pltimport numpy as np# 从[-1,1]中等距去50个数
- 最近想尝试一下在IBM Bluemix上使用Python语言创建Web应用程序,所以需要在本地搭建Python Web的开发测试环境。关于P
- 目前,保护数据免受未授权用户的侵犯是系统管理员特别关心的问题。如果你现在用的是MySQL,就可以使用一些方便的功能来保护系统,来大大减少机密
- 一、前言最近经常碰到开发误删除误更新数据,这不,他们又给我找了个麻烦,我们来看下整个过程。二、过程由于开发需要在生产环节中修复数据,需要执行
- (10)addEvent 网上最流行的版本是Scott Andrew的,据说javascript界曾举行一场比赛(此事件我们可以在Pro J
- 常用的标准库序列化模块import pickle序列化和反序列化把不能直接存储的数据变得可存储,这个过程叫做序列化。把文件中的数据拿出来,回
- Python json 错误xx is not JSON serializable解决办法在使用json的时候经常会遇到xxx
- 如今,随着网站的越来越普及,与Web相关的开发技术持续热门,从前端到后端,从标记语言到开发语言,各种技术交相辉映,沉沉浮浮,从开始简单的ht
- 时间处理是我们日常开发中最最常见的需求,例如:获取当前datetime、获取当天date、获取明天/前N天、获取当天开始和结束时
- 本文实例讲述了Python 闭包,函数分隔作用域,nonlocal声明非局部变量操作。分享给大家供大家参考,具体如下:实例对象也可以实现闭包
- python查找多层嵌套字典的值def find_dic(item, key): if isinstance(it
- BeautifulSoup是Python的一个第三方库,可用于帮助解析html/XML等内容,以抓取特定的网页信息。目前最新的是
- 对于多层感知机而言,整个模型做的事情就是接收输入生成输出。但是并不是所有的多层神经网络都一样,所以为了实现复杂的神经网络就需要神经网络块,块
- 在python3中按数据类型的可变与不可变大致分为如下几种类型:不可变数据(3个):Number(数字)、String(字符串)、Tuple