数据库重命名

MySQL 不支持直接修改数据库名,可以使用如下的脚本进行

#!/usr/bin/env bash

# MyISAM 直接更改数据库目录下的文件即可

mysql -uroot -h10.24.2.2 -P31687 -ppasswd -e 'create database if not exists old_db;'
list_table=$(mysql -uroot -h10.24.2.2 -P31687 -pzreYtwCGV5eMcJ7W -Nse "select table_name from information_schema.TABLES where TABLE_SCHEMA='new_db'")

for table in $list_table
do
    mysql -uroot -h10.24.2.2 -P31687 -ppasswd -e "rename table new_db.$table to old_db.$table"
done