- 浏览: 7859588 次
- 性别:
- 来自: 广州
文章分类
- 全部博客 (2425)
- 软件工程 (75)
- JAVA相关 (662)
- ajax/web相关 (351)
- 数据库相关/oracle (218)
- PHP (147)
- UNIX/LINUX/FREEBSD/solaris (118)
- 音乐探讨 (1)
- 闲话 (11)
- 网络安全等 (21)
- .NET (153)
- ROR和GOG (10)
- [网站分类]4.其他技术区 (181)
- 算法等 (7)
- [随笔分类]SOA (8)
- 收藏区 (71)
- 金融证券 (4)
- [网站分类]5.企业信息化 (3)
- c&c++学习 (1)
- 读书区 (11)
- 其它 (10)
- 收藏夹 (1)
- 设计模式 (1)
- FLEX (14)
- Android (98)
- 软件工程心理学系列 (4)
- HTML5 (6)
- C/C++ (0)
- 数据结构 (0)
- 书评 (3)
- python (17)
- NOSQL (10)
- MYSQL (85)
- java之各类测试 (18)
- nodejs (1)
- JAVA (1)
- neo4j (3)
- VUE (4)
- docker相关 (1)
最新评论
-
xiaobadi:
jacky~~~~~~~~~
推荐两个不错的mybatis GUI生成工具 -
masuweng:
(转)JAVA获得机器码的实现 -
albert0707:
有些扩展名为null
java 7中可以判断文件的contenttype了 -
albert0707:
非常感谢!!!!!!!!!
java 7中可以判断文件的contenttype了 -
zhangle:
https://zhuban.me竹板共享 - 高效便捷的文档 ...
一个不错的网络白板工具
mysql 5.6中的information schema,就是存储了很多数据库的元数据,其实很多可以用来
做数据库的性能查询用,下面小结介绍其中几个:
1) Information_Schema.Tables
这里存放的是数据库的所有表的元数据信息,比如下面的语句可以计算哪些表是最占空间的:
又例如:
Select Table_Name
-> From Information_Schema.Tables
-> Where Engine <> 'innodb' and Table_Schema = 'employees';
2) Information_Schema.Columns
这个是存放管理列的信息了,比如:
mysql> Select Table_Name, Column_Name From Information_schema.Columns
-> Where Column_Name Like '%name%' And Table_Schema = 'employees';
3) Information_Schema.Referential_Constraints
这里是存放什么表用到什么样的外键
mysql> Select
-> Table_Name
-> ,Constraint_Name
-> ,Referenced_Table_Name Ref_Tbl
-> ,Unique_Constraint_Name As Ref_Cnstr
-> From Information_schema.Referential_Constraints
-> Where Constraint_Schema = 'employees';
+--------------+---------------------+-------------+-----------+
| Table_Name | Constraint_Name | Ref_Tbl | Ref_Cnstr |
+--------------+---------------------+-------------+-----------+
| dept_emp | dept_emp_ibfk_1 | employees | PRIMARY |
| dept_emp | dept_emp_ibfk_2 | departments | PRIMARY |
| dept_manager | dept_manager_ibfk_1 | employees | PRIMARY |
| dept_manager | dept_manager_ibfk_2 | departments | PRIMARY |
| salaries | salaries_ibfk_1 | employees | PRIMARY |
| titles | titles_ibfk_1 | employees | PRIMARY |
+--------------+---------------------+-------------+-----------+
6 rows in set (0.00 sec)
4) Information_Schema.Key_Column_Usage
这个是用来显示组成索引的有哪些列,比如:
利用mysql 的INFORMATION_SCHEMA.KEY_COLUMN_USAGE表查找某个表的外键(primary, unique, and foreign key constraints)
语句:select * from INFORMATION_SCHEMA.KEY_COLUMN_USAGE WHERE TABLE_NAME ='guestbook' and CONSTRAINT_NAME LIKE 'fk_%';
5)
Information_Schema.Processlist
看进程情况
mysql> Select User, Command, Time From Information_schema.processlist;
+------+---------+------+
| User | Command | Time |
+------+---------+------+
| root | Sleep | 86 |
| root | Sleep | 439 |
| root | Query | 0 |
+------+---------+------+
3 rows in set (0.01 sec)
6) Information_Schema.InnoDb_Lock_Waits
看等待事件
Select
r.trx_id waiting_trx_id
,r.trx_mysql_thread_id waiting_thread
,r.trx_query waiting_query
,b.trx_id blocking_trx_id
,b.trx_mysql_thread_id blocking_thread
,b.trx_query blocking_query
From information_schema.innodb_lock_waits w
Join information_schema.innodb_trx b On b.trx_id = w.blocking_trx_id
Join information_schema.innodb_trx r On r.trx_id = w.requesting_trx_id;
做数据库的性能查询用,下面小结介绍其中几个:
1) Information_Schema.Tables
这里存放的是数据库的所有表的元数据信息,比如下面的语句可以计算哪些表是最占空间的:
Select Concat(table_schema, '.', table_name) As "Name" ,Concat(Round(table_rows / 1000000, 2), 'M') As "Rows" ,Concat(Round(data_length / ( 1024 * 1024 * 1024 ), 2), 'G') As "Row Size" ,Concat(Round(index_length / ( 1024 * 1024 * 1024 ), 2), 'G') As "Index Size" ,Concat(Round(( data_length + index_length ) / ( 1024 * 1024 * 1024 ), 2), 'G') As "Total" ,Round(index_length / data_length, 2) "Row / Index Ratio" From information_schema.TABLES Order By data_length + index_length DESC Limit 10;
又例如:
Select Table_Name
-> From Information_Schema.Tables
-> Where Engine <> 'innodb' and Table_Schema = 'employees';
2) Information_Schema.Columns
这个是存放管理列的信息了,比如:
mysql> Select Table_Name, Column_Name From Information_schema.Columns
-> Where Column_Name Like '%name%' And Table_Schema = 'employees';
3) Information_Schema.Referential_Constraints
这里是存放什么表用到什么样的外键
mysql> Select
-> Table_Name
-> ,Constraint_Name
-> ,Referenced_Table_Name Ref_Tbl
-> ,Unique_Constraint_Name As Ref_Cnstr
-> From Information_schema.Referential_Constraints
-> Where Constraint_Schema = 'employees';
+--------------+---------------------+-------------+-----------+
| Table_Name | Constraint_Name | Ref_Tbl | Ref_Cnstr |
+--------------+---------------------+-------------+-----------+
| dept_emp | dept_emp_ibfk_1 | employees | PRIMARY |
| dept_emp | dept_emp_ibfk_2 | departments | PRIMARY |
| dept_manager | dept_manager_ibfk_1 | employees | PRIMARY |
| dept_manager | dept_manager_ibfk_2 | departments | PRIMARY |
| salaries | salaries_ibfk_1 | employees | PRIMARY |
| titles | titles_ibfk_1 | employees | PRIMARY |
+--------------+---------------------+-------------+-----------+
6 rows in set (0.00 sec)
4) Information_Schema.Key_Column_Usage
这个是用来显示组成索引的有哪些列,比如:
利用mysql 的INFORMATION_SCHEMA.KEY_COLUMN_USAGE表查找某个表的外键(primary, unique, and foreign key constraints)
语句:select * from INFORMATION_SCHEMA.KEY_COLUMN_USAGE WHERE TABLE_NAME ='guestbook' and CONSTRAINT_NAME LIKE 'fk_%';
5)
Information_Schema.Processlist
看进程情况
mysql> Select User, Command, Time From Information_schema.processlist;
+------+---------+------+
| User | Command | Time |
+------+---------+------+
| root | Sleep | 86 |
| root | Sleep | 439 |
| root | Query | 0 |
+------+---------+------+
3 rows in set (0.01 sec)
6) Information_Schema.InnoDb_Lock_Waits
看等待事件
Select
r.trx_id waiting_trx_id
,r.trx_mysql_thread_id waiting_thread
,r.trx_query waiting_query
,b.trx_id blocking_trx_id
,b.trx_mysql_thread_id blocking_thread
,b.trx_query blocking_query
From information_schema.innodb_lock_waits w
Join information_schema.innodb_trx b On b.trx_id = w.blocking_trx_id
Join information_schema.innodb_trx r On r.trx_id = w.requesting_trx_id;
发表评论
-
让 InnoDB 多任务运行
2018-09-06 16:06 750今天偶然看到的一招,记录下 如果服务器上的参数 innodb_ ... -
mysql中查询连接工作状态
2018-05-31 15:13 644#!/bin/bash while true do mysql ... -
MYSQL BACKUP的SHELL相关语句
2018-05-25 20:33 509#!/bin/bash ###############Basi ... -
MySQL This function has none of DETERMINISTIC, NO SQL...错误1418 的原因分析及解决方法
2018-05-08 11:17 579MySQL开启bin-log后,调用存储过程或者函数以及触发器 ... -
NUMA的选择
2018-04-24 09:52 1351现在的机器上都是有 ... -
关于MYSQL 5.7线程池的好文收集
2018-03-27 10:57 1484来自腾讯工程师的好文: https://www.jianshu ... -
MYSQL 的审计日志插件
2017-11-30 10:19 1234MYSQL 的审计日志插件,可惜目前只是LINUX用: 来自M ... -
(转)MySQL InnoDB缓冲池配置详解
2017-10-09 16:55 3998一、InnoDB缓冲池 InnoDB维护一个称为缓冲池的内存 ... -
(转)MySQL 5.7默认SQL模式带来的问题总结
2017-10-05 18:46 1826http://www.ywnds.com/?p=8865 在 ... -
(转)MySQL 5.7默认ONLY_FULL_GROUP_BY语义介绍
2017-10-05 18:45 1148http://www.ywnds.com/?p=8184 ON ... -
MySQL 5.6 新功能之 Index Condition Pushdown (ICP)
2017-10-05 15:52 748http://www.cnblogs.com/zhoujiny ... -
mysql 5.7中的MBR和BKA算法
2017-10-03 15:11 1687一、什么是MRR MMR全称是Multi-Range Re ... -
(收藏)万字总结:学习MySQL优化原理,这一篇就够了!
2017-09-30 23:37 1148http://dbaplus.cn/news-155-1531 ... -
(转)MySQL中NULL和空值的区别
2017-09-23 15:57 2191MySQL中NULL和空值的区别 http://www.yw ... -
mysql 5.7中关于count(*)的优化
2017-09-20 19:15 2309在mysql 5.7中,对于select count(*) f ... -
MySQL 索引设计概要
2017-09-12 21:12 475<<MySQL 索引设计概要>>,不错 ... -
10分钟学会理解和解决MySQL乱码问题
2017-07-22 18:21 507http://cenalulu.github.io/mysql ... -
MySQL的or/in/union与索引优化
2017-07-22 08:29 903https://mp.weixin.qq.com/s/ZWez ... -
MYSQL中查看某个表或库的大小语句
2017-04-02 09:12 1916在information_schema.tables中有相关记 ... -
(收藏)MYSQL大表方案
2017-01-09 19:58 1399https://segmentfault.com/a/1190 ...
相关推荐
MySQL中information_schema是什么
MySQL中information_schema系统表
information_schema数据库是在mysql的版本5.0之后产生的,一个虚拟数据库,物理上并不存在。information_schema数据库类似与“数据字典”,提供了访问数据库元数据的方式,即数据的数据。比如数据库名或表名,列类型...
Facebook针对MySQL开源Online Schema Change代码 Facebook数据库技术团队将 Online Schema Change的代码开源了。MySQL在线修改Schema结构这个麻烦事临近被彻底解决。...
FriendFeed如何使用MySQL存储无Schema数据.pdf
mySQL索引查看 select * from information_schema.statistics where table_schema='数据库名称' and table_name = '表名称'
新装的mysql里面有两个数据库:information_schema 和 mysql 。他们是干么用的?可以删除么?...mysql数据库中的 information_schema (17)是个什么啊?可以删掉吗?如果删除了会怎么样?比如一个cm
这个问题是微信群中网友关于MySQL权限的讨论,有这么一个业务需求(下面是他的原话): 因为MySQL的很多功能都依赖主键,我想用zabbix用户,来监控业务数据库的所有表,是否都建立了主键。 监控的语句是: FROM ...
代码如下:select TABLE_SCHEMA, concat(truncate(sum(data_length)/1024/1024,2),’ MB’) as data_size,concat(truncate(sum(index_length)/1024/1024,2),’MB’) as index_sizefrom information_schema.tables...
基于 mysql-schema-sync 开发的,从一个db同步table数据到另一个db的工具
包括1、sys schema 数据来源 。2、查看 sys 库的版本 3、sys schema 里都有什么 4、sys schema 详细介绍
mysql-schema-sync 是一款使用 Go 开发跨平台的 MySQL 表结构自动同步工具。主要用于解决多个环境数据库表结构不同步问题。
Coinciding with the new native data dictionary in MySQL 8.0, we have made a number of useful enhancements to our INFORMATION_SCHEMA subsystem design in MySQL 8.0. In this post I will first go th
mysql common_schema 完整sql。适合5.1版本以上,支持5.7以下的简单的json内容获取
一个简单的和改进的实施一些INFORMATION_SCHEMA表看到第14,“information_schema和数据字典一体化” Atomic DDL。看到第13.1.1,“原子数据定义语句的支持” 重要 数据字典功能的服务器需要一些运作上的差异相比,...
本文介绍了information_schema数据库的三张重要的表"schemata"、“tables”和“columns”在SQL注入中的应用思路。
mysql-schema-ts 将MySQL模式转换为TypeScript接口 Postgres实施: : 用法 # to infer an entire schema $ npx mysql-schema-ts mysql://root@localhost:3306/database # to infer a specific table $ npx mysql-...