* rename_db.sh

#!/bin/bash
# 假设将sakila数据库名改为new_sakila
# MyISAM直接更改数据库目录下的文件即可

USER=root
PASS=secret
ORIGINAL_DB=sakia
RENAMED_DB=new_sakila

mysql -u${USER} -p${PASS} -e "CREATE DATABASE IF NOT EXISTS ${RENAMED_DB}"
list_table=$(mysql -u${USER} -p${PASS} -Nse "SELECT table_name FROM information_schema.TABLES WHERE TABLE_SCHEMA='""${ORIGINAL_DB}""'")

for table in $list_table
do
    mysql -u${USER} -p${PASS} -e "RENAME TABLE ${ORIGINAL_DB}.$table to ${RENAMED_DB}.$table"
done

# mysql -u${USER} -p${PASS} -e "DROP DATABASE IF EXISTS ${ORIGINAL_DB}"

* run:

bash rename_db.sh

 

数据表重命名

alter table ip_access rename as ip_access_old;
ALTER TABLE ordersClassSpec RENAME TO ordersClass;