本站所有文章均为原创,如对您有帮助,恳请帮忙点击任何一处广告
  • 首页
  • MySQL
  • MySQL基础教程(11)MySQL默认系统库的作用与实际运用

MySQL基础教程(11)MySQL默认系统库的作用与实际运用

发布:TangLu2020-1-4 11:45分类: MySQL 标签: mysql

一、MySQL服务默认数据库介绍

在MySQL初始化完成后,会自动创建好几个默认数据库,这些数据库和MySQL服务自身有密切关系,通过这些库可以查询到和数据库服务本身相关的信息。

1、mysql库mysql服务核心数据库,主要存储了数据库用户、权限等信息,如果将慢日志或者通用日志调整成table形式也存在这个库里。

user:用户账号信息

db:库级别权限表

select * from mysql.user where user='tanglu' \G  #查询tanglu用户库级别的权限


tables_priv:表级权限

columns_priv:列级别全新表

procs_priv:存储过程与函数权限

proxies_priv:代理用户的权限

event:事件与任务调度表

gtid:与GTID主从复制有关的表

innodb_index_stats:innodb索引统计信息

innodb_table_stats:innodb表统计信息

plugin:插件表


2、sys库该库所有数据来自performancce_schema。主要是快速了解数据库运行情况。


3、performancce_schema库用于收集数据库服务器性能数据,以便分析问题。比如哪个SQL执行次数最多、耗时最长、哪个SQL被锁等有用的信息


4、information_schema数据库的元数据存放在该库中,包含了所有的数据库、表、索引,每个会话信息也在该库中记录。通过这个库可以 进行一些数据资产统计,比如有多少个库、多少表、占用了多大的硬盘空间等。

TABLES表:保存了所有表的数据字典信息,比如表名、表引擎、表大小、表行数等等有用信息

PROCESSLIST表:记录了会话详细信息,执行show processlist命令其实就是在查询该表

INNODB_TRX表:记录了所有事务,包括事务是否被锁

INNODB_LOCK_WAITS:记录了事务正在等待的锁的信息


二、MySQL默认系统的实际运用

1、统计MySQL实例下每个库中所有表的表名以及个数

SELECT table_schema,COUNT(table_name),GROUP_CONCAT(table_name) FROM `information_schema`.`tables` GROUP BY table_schema;


2、统计MySQL实例下每个库占用空间总大小,并以MB为单位显示

SELECT table_schema,SUM(AVG_ROW_LENGTH*TABLE_ROWS+INDEX_LENGTH)/1024/1024 FROM `information_schema`.`TABLES` GROUP BY table_schema;


3、查找出MySQL实例下非InnoDB的表

SELECT table_schema,table_name FROM information_schema.tables WHERE ENGINE !='InnoDB' AND table_schema NOT IN ('sys','performance_schema','information_schema','mysql');


4、统计出MySQL实例下所有用户

SELECT CONCAT(USER,'@',HOST) FROM mysql.user;


5、查询当前MySQL中会话信息,相比使用show processlist命令直接查看,用SQL的形式能灵活的进行过滤

select * from information_schema.processlist where time > 50;
select * from information_schema.processlist where info like 'my query%';


6、

select concat('KILL ',id,';') from information_schema.processlist where user='bi_readonly';  #使用concat拼接,实现批量杀死某个用户的进程

温馨提示如有转载或引用以上内容之必要,敬请将本文链接作为出处标注,谢谢合作!
et_highlighter51
版权所有:《Linux运维技术学习站点
文章标题:《MySQL基础教程(11)MySQL默认系统库的作用与实际运用
除非注明,文章均为 《Linux运维技术学习站点》 原创
转载请注明本文短网址:http://www.linuxe.cn/post-558.html  [生成短网址]

已有 0/493 人参与

发表评论:

欢迎分享Linux运维技术学习站点

欢迎使用手机扫描访问本站,还可以关注微信哦~