mysql 实例下具体查看库,和表的大小
短信预约 -IT技能 免费直播动态提醒
1.mysql 查看实例下,每个库的大小
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_size
from information_schema.tables
group by TABLE_SCHEMA
order by data_length desc;
2.mysql 查看具体某个库里面的某个表的大小。
select concat(round(sum(DATA_LENGTH/1024/1024),2),'M') from tables where table_schema=\"${db}\" AND table_name=\"${table}\"
3.查看mysql 实例下,所有库下的每个表的大小。
#!/bin/bash
>allsize.txt
for n in `cat mysqlbackuplist.txt`
do
echo ========= ${n} ========= >>allsize.txt
for db in `mysql -uroot -ppassword -h$n -e 'show databases;' |awk 'NR>1{print $1}'|egrep -v 'schema|tmp|sys|innodb|mysql|tigasedb'`
do
>${db}size.txt
echo ========= ${db} =========
echo ========= ${db} ========= >>allsize.txt
for table in `mysql -uroot -ppassword -h$n -e "use ${db}; show tables"`
do
selectsql="select concat(round(sum(DATA_LENGTH/1024/1024),2),'M') from tables where table_schema=\"${db}\" AND table_name=\"${table}\";"
mysql -uroot -ppassword -h$n -e "use information_schema; $selectsql" |awk -v table=$table 'NR>1{print table " " $1}' >>${db}size.txt
done
cat ${db}size.txt|sort -k 2 -rn >> allsize.txt
done
done
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341