查看进程
该命令可查看mysql的连接数及执行的命令、链接IP等
-- 只列出前100条
SHOW PROCESSLIST;
-- 全列出
SHOW FULL PROCESSLIST;
查看进程数截图:
搜索所有表中的内容
-- 搜索所有表中包含的列名,如"name"
SELECT table_schema, table_name, column_name
FROM information_schema.columns
WHERE column_name LIKE '%name%'
-- 搜索zkeco库里,行数超过10行的表
SELECT TABLE_NAME
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_SCHEMA = 'zkeco' -- 替换为您的数据库名称
AND TABLE_ROWS > 10;
查看实例里占用空间最大的表
SELECT
table_schema AS `Database`,
table_name AS `Table`,
ROUND(((data_length + index_length) / (1024 * 1024 * 1024)), 2) AS `Size (GB)`
FROM
information_schema.TABLES
WHERE
table_schema NOT IN ('information_schema' , 'performance_schema', 'mysql')
ORDER BY (data_length + index_length) DESC
LIMIT 20;
查看/设置并发数
并发数是指同一时刻数据库能处理多少个请求。由最大连接数和最大用户数决定。
最大连接数(
max_connections
):当前数据库的最大连接数,不区分用户。上限是16384
最大用户连接数(max_user_connections
):当前数据库用户所能连接的连接数,0为不限制。
但并不是设置越大越好。因为MySQL会为每个连接提供缓冲区,意味着消耗更多的内存。
-- 查看最大连接数
SHOW VARIABLES LIKE '%max_connections%';
-- 设置最大连接数
SET GLOBAL MAX_CONNECTIONS = 1024;
-- 查看用户最大连接数(重启失效。要想永久生效修改配置文件)
SHOW VARIABLES LIKE '%max_user_connections%';
#-- 设置用户最大连接数(重启失效。要想永久生效修改配置文件)
set GLOBAL max_user_connections = 0;
日志保留天数
Mysql数据库由于业务原因,数据量增长迅速,binlog日志会增加较多,占用大部分磁盘空间。
出于节约空间考虑,可进行删除多余binary日志,并设置定期删除操作。
使用以下命令可以控制binlog日志文件保留时间,超过保留时间的binlog日志会被自动删除
-- mysql8.0以下版本查看当前数据库日志binlog保存时效 以天为单位,默认0 永不过期,最多只能设置99天
show variables like 'expire_logs_days';
-- 设置保留天数。(重启失效。要想永久生效修改配置文件)
set global expire_logs_days=60;
通过binlog恢复数据
开启binlog
通过以下命令查看是否开启了binlog
show variables like '%log_bin%';
通过改命令也可以查看binlog的保存位置
binlog保存位置
查看当前正在写入的binlog文件
在服务器上也能在上述路径汇总找到binlog记录的文件
测试恢复文件
修改前的数据:
修改后数据:
查询要恢复事件的起始位置:
show binlog EVENTS in 'mysql-bin.005105'
可看到起始位置是564结束为止是1163
恢复数据
(待补充)
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
评论(0)