--查看创建的索引的CARDINALITY比率

--通常cardinality达到表数据的10%左右建索引会有意义
--如果是一个组合索引,索引第一位的cardinality表示第一个列的cardinality大小,第二列表示第一列和第二列共同的cardinality值
SELECT
T1.TABLE_SCHEMA,
T1.TABLE_NAME,
T2.INDEX_NAME,
ROUND(T2.CARDINALITY / T1.TABLE_ROWS * 100, 2) AS RATE
FROM
INFORMATION_SCHEMA.TABLES T1,
INFORMATION_SCHEMA.STATISTICS T2
WHERE
T1.TABLE_SCHEMA = T2.TABLE_SCHEMA
AND T1.TABLE_NAME = T2.TABLE_NAME
AND T2.SEQ_IN_INDEX = (SELECT
MIN(T3.SEQ_IN_INDEX)
FROM
INFORMATION_SCHEMA.STATISTICS T3
WHERE
T2.TABLE_NAME = T3.TABLE_NAME
AND T2.TABLE_SCHEMA = T3.TABLE_SCHEMA
AND T2.INDEX_NAME = T3.INDEX_NAME)
AND T1.TABLE_SCHEMA NOT IN ('MYSQL','PERFORMANCE_SCHEMA','INFORMATION_SCHEMA','SYS')
AND T1.TABLE_ROWS >=100
ORDER BY RATE;

--查看锁阻塞

-- 查看锁的SQL
SELECT
t3.trx_id waiting_trx_id,
t3.trx_mysql_thread_id waiting_thread,
t3.trx_query waiting_query,
t2.trx_id blocking_trx_id,
t2.trx_mysql_thread_id blocking_thread,
t2.trx_query blocking_query
FROM
information_schema.innodb_lock_waits t1,
information_schema.innodb_trx t2,
information_schema.innodb_trx t3
WHERE
t1.blocking_trx_id = t2.trx_id
AND t1.requesting_trx_id = t3.trx_id;

--查询出哪些表不是InnoDB引擎的

SELECT
TABLE_SCHEMA,
TABLE_NAME,
TABLE_TYPE,
ENGINE,
CREATE_TIME,
UPDATE_TIME,
TABLE_COLLATION
FROM
INFORMATION_SCHEMA.TABLES
WHERE
TABLE_SCHEMA NOT IN ('information_schema' , 'mysql', 'performance_schema', 'sys')
AND ENGINE <> 'InnoDB';

--生成修改存储引擎的语句

SELECT
-- TABLE_SCHEMA,
-- TABLE_NAME,
-- TABLE_TYPE,
-- ENGINE,
-- CREATE_TIME,
-- UPDATE_TIME,
-- TABLE_COLLATION,
CONCAT('alter table ', TABLE_SCHEMA,'.',TABLE_NAME, ' engine=InnoDB;') AS alter_sql
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_SCHEMA NOT IN
('information_schema', 'mysql', 'performance_schema', 'sys')
AND ENGINE <> 'InnoDB';

--  查看指定数据库的表信息

SET @table_schema='employees';
SELECT
table_name,
table_type,
engine,
table_rows,
avg_row_length,
data_length,
index_length,
table_collation,
create_time
FROM
information_schema.tables
WHERE
table_schema = @table_schema
ORDER BY table_name;

-- 查看会话连接信息

SELECT
THREAD_ID,
name,
type,
PROCESSLIST_ID,
PROCESSLIST_USER AS user,
PROCESSLIST_HOST AS host,
PROCESSLIST_DB AS db,
PROCESSLIST_COMMAND AS cmd,
PROCESSLIST_TIME AS time,
PROCESSLIST_STATE AS state,
PROCESSLIST_INFO AS info,
CONNECTION_TYPE AS type,
THREAD_OS_ID AS os_id
FROM
performance_schema.threads
WHERE
type = 'FOREGROUND'
ORDER BY THREAD_ID;

-- CHARACTER_SETS 查看数据库支持的字符集

SELECT * FROM INFORMATION_SCHEMA.CHARACTER_SETS
WHERE CHARACTER_SET_NAME LIKE 'utf%'; SHOW CHARACTER SET LIKE 'utf%';

-- COLLATIONS  字符序

-- 用于指定数据集如何排序,以及字符串的比对规则
SELECT * FROM INFORMATION_SCHEMA.COLLATIONS
WHERE COLLATION_NAME LIKE 'utf%'; SHOW COLLATION LIKE 'utf%';

-- 查看表结构定义信息

SELECT
table_name,
COLUMN_NAME,
ordinal_position,
DATA_TYPE,
IS_NULLABLE,
COLUMN_DEFAULT,
column_type,
column_key,
character_set_name,
collation_name
FROM
INFORMATION_SCHEMA.COLUMNS
WHERE
table_name = 'employees'
AND table_schema = 'employees';

show columns from employees from employees;

desc employeees.employees;

-- 查看支持的引擎

SELECT *  FROM INFORMATION_SCHEMA.ENGINES;
show ENGINES;

-- 查看数据库的数据文件信息

SELECT
FILE_ID,
FILE_NAME,
FILE_TYPE,
TABLESPACE_NAME,
FREE_EXTENTS,
TOTAL_EXTENTS,
((TOTAL_EXTENTS - FREE_EXTENTS) * EXTENT_SIZE) / 1024 / 1024 AS MB_used,
EXTENT_SIZE,
INITIAL_SIZE,
MAXIMUM_SIZE,
AUTOEXTEND_SIZE,
DATA_FREE,
STATUS,
ENGINE
FROM
INFORMATION_SCHEMA.FILES;

-- 查看指定表的约束

SELECT
constraint_schema,
table_name,
constraint_name,
column_name,
ordinal_position,
CONCAT(table_name,
'.',
column_name,
' -> ',
referenced_table_name,
'.',
referenced_column_name) AS list_of_fks
FROM
information_schema.KEY_COLUMN_USAGE
WHERE
REFERENCED_TABLE_SCHEMA = 'employees'
AND REFERENCED_TABLE_NAME IS NOT NULL
ORDER BY TABLE_NAME , COLUMN_NAME;

-- 查看指定分区表信息

SELECT
TABLE_SCHEMA,
table_name,
partition_name,
subpartition_name sub_par,
partition_ordinal_position par_position,
partition_method method,
partition_expression expression,
partition_description description,
table_rows
FROM
information_schema.PARTITIONS
WHERE
table_schema = 'test'
AND table_name = 't';

-- 查看支持的插件

SELECT
PLUGIN_NAME, PLUGIN_STATUS, PLUGIN_TYPE,
PLUGIN_LIBRARY, PLUGIN_LICENSE
FROM INFORMATION_SCHEMA.PLUGINS; SHOW PLUGINS;

-- 查看数据库连接信息

SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST;

SHOW FULL PROCESSLIST;

-- 查看数据库中的存储过程、函数等

SELECT
ROUTINE_SCHEMA,
routine_name,
ROUTINE_TYPE,
data_type,
routine_body,
routine_definition,
routine_comment
FROM
INFORMATION_SCHEMA.ROUTINES
WHERE
ROUTINE_TYPE = 'PROCEDURE'
AND ROUTINE_SCHEMA="employees";

-- 查看存在的数据库及字符集信息

SELECT
SCHEMA_NAME,
DEFAULT_CHARACTER_SET_NAME,
DEFAULT_COLLATION_NAME
FROM
INFORMATION_SCHEMA.SCHEMATA; SHOW DATABASES;

-- 查看索引信息

SELECT
table_schema,
table_name,
index_name,
COLUMN_NAME,
COLLATION,
CARDINALITY,
index_type
FROM
INFORMATION_SCHEMA.STATISTICS
WHERE
table_name = 'employees'
AND table_schema = 'employees'; SHOW INDEX FROM employees FROM employees;

-- 查看数据库大小

SELECT
table_schema 'database',
CONCAT(ROUND(SUM(data_length + index_length) / (1024 * 1024),
2),
'M') size
FROM
information_schema.TABLES
WHERE
ENGINE in ('MyISAM','InnoDB')
GROUP BY table_schema;

-- 查看表大小  

SELECT
CONCAT(table_schema, '.', table_name) table_name,
CONCAT(ROUND(data_length / (1024 * 1024), 2),
'M') data_length,
CONCAT(ROUND(index_length / (1024 * 1024), 2),
'M') index_length,
CONCAT(ROUND(ROUND(data_length + index_length) / (1024 * 1024),
2),
'M') total_size,
engine
FROM
information_schema.TABLES
WHERE
table_schema NOT IN ('information_schema' , 'performance_schema', 'sys', 'mysql')
ORDER BY data_length DESC;

MySQL INFORMATION_SCHEMA 使用的更多相关文章

  1. (转)十分钟了结MySQL information_schema

    十分钟了结MySQL information_schema  原文:http://www.cnblogs.com/shengdimaya/p/6920677.html information_sche ...

  2. mysql information_schema介绍

    mysql information_schema介绍 一.information_schema是什么 information_schema是MySQL自带的一个信息数据库,其保存着关于MySQL服务器 ...

  3. MySQL information_schema表查询导致内存暴涨

    case:下面的一条sql语句,导致mysql实例内存暴涨: select * from tables where table_name not in(select table_name from p ...

  4. 十分钟了结MySQL information_schema

    information_schema数据库是MySQL系统自带的数据库,它提供了数据库元数据的访问方式.感觉information_schema就像是MySQL实例的一个百科全书,记录了数据库当中大部 ...

  5. mysql—information_schema数据库

    一.介绍 MySQL中有一个默认数据库名为information_schema,在MySQL中我们把 information_schema 看作是一个数据库,确切说是信息数据库.其中保存着关于MySQ ...

  6. mysql information_schema 数据库简介:

    .CHARACTER_SETS 表 CREATE TEMPORARY TABLE `CHARACTER_SETS` ( `CHARACTER_SET_NAME` varchar() NOT NULL ...

  7. mysql information_schema

    SELECT TABLE_NAME,COLUMN_NAME,CHARACTER_MAXIMUM_LENGTH,COLUMN_COMMENT FROM COLUMNS WHERE TABLE_SCHEM ...

  8. [MySQL] INFORMATION_SCHEMA 数据库包含所有表的字段

    sql注入后可以通过该数据库获取所有表的字段信息 1. COLLATIONS表 提供有关每个字符集的排序规则的信息. COLLATIONS表包含以下列: COLLATION_NAME 排序规则名称. ...

  9. mysql performance_schema 和information_schema.tables了解

    这个是关于mysql的系统表,性能表,核心表操作的一些介绍,深入算不上 我们一般很少去动 mysql  information_schema 信息相关  performance_schema 性能相关 ...

随机推荐

  1. [小问题笔记(十一)] SQL SERVER 将可空字段改为 NOT NULL不可为空的两个方法

    一个字段里面有一些数据是NULL是很讨厌的,写查询麻烦不说,最重要的is null  或者is not null都是不能命中索引的,会导致全表扫描啊. 所以对于一个已经存在NULL的字段,有时间的话最 ...

  2. wamp升级php7

    原文:http://blog.csdn.net/cheng6251/article/details/50730441 1.下载php7   http://windows.PHP.net/downloa ...

  3. Angular内提供了一个可以快速建立测试用web服务的方法:内存 (in-memory) 服务器

    如何使用 Angular 内存 (in-memory) 服务器https://segmentfault.com/a/1190000009898540

  4. 实例化后的list的默认值

    public class List默认值 { public static void main(String[] args) { List<String> arrayList = new A ...

  5. windows系统下,安装多个版本的jdk,java -version

    问题描述: 开始安装了 jdk8 后来装了jdk9,可以为项目配置不同的jdk,相安无事: 今天发现软件需要jdk8的环境,结果我的java -version始终是jdk9.0.1: 解决办法:使ja ...

  6. HDU - 59562016ACM/ICPC亚洲区沈阳站I - The Elder 树上斜率优化dp

    题意:给定上一棵树,然后每条边有一个权值,然后每个点到 1 的距离有两种,第一种是直接回到1,花费是 dist(1, i)^2,还有另一种是先到另一个点 j,然后两从 j 向1走,当然 j 也可以再向 ...

  7. LM3S之boot loader学习笔记-1

    LM3S之boot loader学习笔记-1 彭会锋 (首先声明,此系列文章编写参考了很多资料,其中一些内容是原版内容的引用和整理,并加入了一些自己的见解,我已经尽量标明引用部分,如有未全部标注部分, ...

  8. leetcode算法总结

    算法思想 二分查找 贪心思想 双指针 排序 快速选择 堆排序 桶排序 搜索 BFS DFS Backtracking 分治 动态规划 分割整数 矩阵路径 斐波那契数列 最长递增子序列 最长公共子系列 ...

  9. python sort与sorted使用笔记

    Python list内置sort()方法用来排序,也可以用python内置的全局sorted()方法来对可迭代的序列排序生成新的序列 一,最简单的排序 1.使用sort排序 my_list = [3 ...

  10. day19 Models补充+缓存+信号+序列化+分析抽屉页面

    参考链接: http://www.cnblogs.com/wupeiqi/articles/5237704.html http://www.cnblogs.com/wupeiqi/articles/5 ...