使用场景:A库下的表mv到B库去,因为是mv所以很快,这里强调不是copy,执行完A库下的表就没了。测试几十G的数据只需要十几秒。
#!/bin/bash
# 假设将A数据库名改为B
# MyISAM直接更改数据库目录下的文件即可
mysql -uroot -p'123456' -e 'create database if not exists B'
list_table=$(mysql -uroot -p'123456' -Nse "select table_name from information_schema.TABLES where TABLE_SCHEMA='A'")
for table in $list_table
do
mysql -uroot -p'123456' -e "rename table A.$table to B.$table"
done