微信关注,获取新知

记录MySQL数据库改名的2个方法

有些时候我们在初始创建项目的时候没有考虑周全,MySQL数据库名称可能取的不够具有识别性。但是随着数据库的增加,数据库名可能需要和项目匹配容易被同事们运维协作,所以最好数据库名和项目名相似容易查看识别。这里,我们可以通过修改数据库名的办法来修改MYSQL数据库名称。

第一、新建导入法

如果需要一个比较简单的办法,我们可以新创建新的数据库名。然后将旧数据库导出来重新导入到新的数据库名里。且在项目中,设置修改新数据库的连接,如果稳定运行说明新导入进来的数据库是没有问题的。这样旧数据库也可以删除。

我们一定要确保在新数据库名运行没有问题再删除旧款数据库。

这里我们导入和导出数据库建议采用 mysqldump 和 mysql 命令。

第二、修改表名法

这里,举个例子,我们的数据库名称itdb_old 想改名为 itdb_new。

1、先创建新库:

create database itdb_new;

2、修改表名,将表移动到新库里:

rename table db_old.tb to itdb_new.tb;

如果我们的数据库表多,需要用脚本批量操作。

3、最后删除旧库:

drop database itdb_old;

我们可以最后删除,确保新的能正常运行。

附上一个shell脚本批量修改表名称。

#!/bin/bash
# 假设将itdb_old数据库名改为itdb_new
mysql -h127.0.0.1 -uadmin -p'laojiangme' -e 'create database if not exists itdb_new'
list_table=$(mysql -h127.0.0.1 -uadmin -p'laojiangme' -Nse "select table_name from information_schema.TABLES where TABLE_SCHEMA='itdb_old'")
for table in $list_table
do
mysql -h127.0.0.1 -uadmin -p'123456' -e "rename table itdb_old.$table to itdb_new.$table"
done

对应数据库名称和密码我们自行根据自己的情况修改。

我们根据自己实际的情况修改,但是一定要谨慎修改数据库名,尤其是旧款数据库要注意备份。

投上你的一票

未经允许不得转载:老蒋玩运营 » 记录MySQL数据库改名的2个方法