跳转至

使用Shell批量更改Mysql表名


2016-04-13 by dongnan

目标

更改 mysql 数据库名及表名。

说明

注意,数据无价操作前备份好数据。

使用

编辑 shell文件,并根据实际情况修改相关参数。

bash -x mysql_table_rename.sh

shell脚本

#!/bin/bash
#20160413 by http://ywwd.net
#script_name:mysql_table_rename.sh


#variables

database_name='test1'
new_database_name='test2'
tables=`mysql --defaults-file=.my.conf -e "select table_name from information_schema.tables where table_schema='${database_name}' \G;" | awk '/table_name:/ {print $2}' | tr '\n' ' '`

#main
#create new database
mysql --defaults-file=.my.conf -e "create database $new_database_name character set utf8;"

#rename table to new database
for table in $tables ;do
   echo $table && sleep 1
   mysql --defaults-file=.my.conf -e "rename table ${database_name}.$table to ${new_database_name}.ywwd_${table};"
done



回到页面顶部