MySQL分析
set @dbName = 'bsa_crmeb_bak';
set @tableName = 'bsa_crmeb_bak';
SELECTSCHEMA_NAME AS '数据库名',DEFAULT_CHARACTER_SET_NAME AS '字符集',DEFAULT_COLLATION_NAME AS '排序规则'
FROM information_schema.SCHEMATA
WHERE SCHEMA_NAME = @dbName;
SELECTTABLE_NAME AS '表名',TABLE_ROWS AS '预估记录数',DATA_LENGTH/1024/1024 AS '数据大小(MB)',INDEX_LENGTH/1024/1024 AS '索引大小(MB)',(DATA_LENGTH + INDEX_LENGTH)/1024/1024 AS '总大小(MB)',(DATA_LENGTH + INDEX_LENGTH)/1024/1024/1024 AS '总大小(GB)',TABLE_COMMENT AS '表注释'
FROM information_schema.TABLES
WHERE TABLE_SCHEMA = @dbName
ORDER BY (DATA_LENGTH + INDEX_LENGTH) DESC;
ANALYZE TABLE @tableName;
SELECTTABLE_NAME AS '表名',TABLE_ROWS AS '预估记录数',DATA_LENGTH/1024/1024 AS '数据大小(MB)',INDEX_LENGTH/1024/1024 AS '索引大小(MB)',(DATA_LENGTH + INDEX_LENGTH)/1024/1024 AS '总大小(MB)',sum((DATA_LENGTH + INDEX_LENGTH)/1024/1024/1024) AS '总大小(GB)',TABLE_COMMENT AS '表注释'
FROM information_schema.TABLES
WHERE TABLE_SCHEMA = @dbName
ORDER BY (DATA_LENGTH + INDEX_LENGTH) DESC;
SELECTCOLUMN_NAME AS '字段名',COLUMN_TYPE AS '数据类型',IS_NULLABLE AS '是否可空',COLUMN_DEFAULT AS '默认值',COLUMN_COMMENT AS '字段说明',COLUMN_KEY AS '索引信息'
FROM information_schema.COLUMNS
WHERE TABLE_SCHEMA = @dbNameAND TABLE_NAME = @tableName
ORDER BY ORDINAL_POSITION;
SELECTCOUNT(*) AS 总记录数,COUNT(DISTINCT user_id) AS 唯一用户数,MIN(create_time) AS 最早创建时间,MAX(create_time) AS 最新创建时间
FROM @tableName;
SELECTCOUNT(*) AS 总记录数,COUNT(DISTINCT user_id) AS 唯一用户数,MIN(create_time) AS 最早创建时间,MAX(create_time) AS 最新创建时间
FROM @tableName where user_id = 1655;
SELECTuser_id,COUNT(*) as 数量,ROUND(COUNT(*) * 100.0 / (SELECT COUNT(*) FROM @tableName), 2) as 百分比
FROM @tableName
GROUP BY user_id
ORDER BY 数量 DESC;
SHOW INDEX FROM @tableName;
SELECTINDEX_NAME AS '索引名',COLUMN_NAME AS '字段名',NON_UNIQUE AS '是否非唯一',SEQ_IN_INDEX AS '索引顺序',INDEX_TYPE AS '索引类型'
FROM information_schema.STATISTICS
WHERE TABLE_SCHEMA = @dbName
AND TABLE_NAME = @tableName
ORDER BY INDEX_NAME, SEQ_IN_INDEX;
SET profiling = 1;
SELECT * FROM @tableName WHERE user_id = 1655;
SHOW PROFILES;
SHOW PROFILE FOR QUERY 1;
SHOW STATUS LIKE 'Threads_connected';
SHOW STATUS LIKE 'Threads_running';
SHOW VARIABLES LIKE 'max_connections';
SHOW VARIABLES LIKE 'slow_query_log';
SHOW VARIABLES LIKE 'long_query_time';
SELECTTABLE_NAME,ENGINE,TABLE_ROWS,DATA_LENGTH/1024/1024 AS '数据大小(MB)'
FROM information_schema.TABLES
WHERE TABLE_SCHEMA = @dbName
ORDER BY DATA_LENGTH DESC;
SELECTTABLE_NAME AS '表名',COLUMN_NAME AS '字段名',CONSTRAINT_NAME AS '约束名',REFERENCED_TABLE_NAME AS '引用表',REFERENCED_COLUMN_NAME AS '引用字段'
FROM information_schema.KEY_COLUMN_USAGE
WHERE TABLE_SCHEMA = @dbName
AND REFERENCED_TABLE_NAME IS NOT NULL
ORDER BY TABLE_NAME;
SELECTTABLE_NAME AS '视图名',VIEW_DEFINITION AS '视图定义'
FROM information_schema.VIEWS
WHERE TABLE_SCHEMA = @dbName;
SELECTROUTINE_NAME AS '名称',ROUTINE_TYPE AS '类型',CREATED AS '创建时间',LAST_ALTERED AS '最后修改时间'
FROM information_schema.ROUTINES
WHERE ROUTINE_SCHEMA = @dbName;
SHOW VARIABLES LIKE '%buffer_pool%';
SHOW VARIABLES LIKE '%innodb%';
SHOW STATUS LIKE '%innodb%';