项目日志库需要重构,但是单个日志库太大(最小10G有的甚至在100G以上)。使用mysqldump
方式备份不现实,可以使用rename
操作,把数据表迁移到一个新的备份库中,速度快且不用丢数据。
操作前请先检查是否有程序占用,确保连接数据库的程序已经退出,不然操作会等待锁有可能导致卡死。
show processlist;
#创建新的数据库
mysql -h127.0.0.1 -P3306 -uUSERNAME -pPASSWORD -e 'create database if not exists new_database'
#获取旧数据库中的所有表
table_list=$( mysql -h127.0.0.1 -P3336 -uUSERNAME -pPASSWORD -Nse "select table_name from information_schema.TABLES where TABLE_SCHEMA='old_database'")
#将旧数据库的表和数据全部迁移到新的数据库
for table in $table_list
do
mysql -h127.0.0.1 -P3306 -uUSERNAME -pPASSWORD -e "rename table old_database.$table to new_database.$table"
done
以上流程务必先测试一下,涉及到数据库的操作请谨慎执行。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。