mysql查看数据库大小方便进行数据备份和迁移

知道每个数据库的大小的话 进入 information_schema 数据库

# 1、查询所有数据大小 
select concat(round(sum(data_length/1024/1024),2),'MB') as data from tables;

# 2、查看指定数据库大小  查看 cms_test数据库 存储数据大小 
select concat(round(sum(data_length/1024/1024),2),'MB') as data from tables
 where TABLE_SCHEMA='cms_test';
 
 # 3、查看指定数据库的某个表的大小 比如查看数据库home中 members 表的大小
select concat(round(sum(data_length/1024/1024),2),‘MB’) as data from tables where table_schema=‘数据库’ and table_name=‘表名’;

-- DATA_LENGTH:数据长度(字节单位)
-- /1024/1024:字节转换为M
-- round:四舍五入,留2位小数
-- concat 拼接MB

查看指定数据库容量大小

select
table_schema as '数据库',
sum(table_rows) as '记录数',
sum(truncate(data_length/1024/1024/1024, 2)) as '数据容量(G)',
sum(truncate(index_length/1024/1024/1024, 2)) as '索引容量(G)'
from information_schema.tables
where table_schema='mysql'; 

看了一下
测试环境数据50G+索引10G 数据库容量差不多得需要80G勉强可以
线上环境数据40G+索引6G 数据库容量也是80G

查看各个数据库容量大小

select
table_schema as '数据库',
sum(table_rows) as '记录数',
sum(truncate(data_length/1024/1024/1024, 2)) as '数据容量(G)',
sum(truncate(index_length/1024/1024/1024, 2)) as '索引容量(G)'
from information_schema.tables
group by table_schema

数据库命令

1、将一个数据库迁移到另一个

# 导入测试环境数据库 到本地 scucess
mysqldump -hxxx -P端口 -u用户名 -p密码 数据库 | mysql -uroot -p3306  authority
# 本地测试 jwt 迁移到 jtw2 数据库需要存在才行 scucess
mysqldump -uroot -p3306 jwt | mysql -uroot -p3306  jwt2
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值