Mysql数据库改名

转自:https://www.cnblogs.com/leffss/p/7832100.html

#!/bin/bash
#作者:fafu_li
#时间:2015.08.10
#mysql数据库改名,官方没有直接修改数据库名称的命令
#只有通过修改表名方式实现

source /etc/profile        #加载系统环境变量
source ~/.bash_profile    #加载用户环境变量
set -o nounset             #引用未初始化变量时退出

mysqlconn="mysql -h localhost -uroot -p123456"

#需要修改的数据库名
olddb="test1"
#修改后的数据库名
newdb="test2"

#创建新数据库
$mysqlconn -e "drop database if exists ${newdb};create database ${newdb};"

#获取所有表名
tables=$($mysqlconn -N -e "select table_name from information_schema.tables where table_schema='${olddb}'")

#修改表名
for name in $tables;do
    $mysqlconn -e "rename table ${olddb}.${name} to ${newdb}.${name}"
done

#删除老的空库
#$mysqlconn -e "drop database ${olddb}"
posted @ 2018-06-19 12:03  Presley  阅读(220)  评论(0编辑  收藏  举报