有些时候我们在初始创建项目的时候没有考虑周全,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个方法