MySQL中修改库名的操作教程
MySQL在5.1引入了一个renamedatabase操作,但在MySQL5.1.23后又不支持这个命令。可以说是一个实验性的功能,没有在生产中支持过(mysql-5.1release在mysql-5.1.30),那么生产中我们有时为了追求完美需要改一下库名。怎么操作呢?
这里提供一个变通的方法。
1.创建出新库名:
mysql>createdatabasedb_v2; mysql>createdatabasedb_v2;
2.生成rename语句,从olddb里迁移,我这里olddb里sbtest;
mysql>selectconcat("renametable",table_schema,".",table_name,"todb_v2.",table_name,";")intooutfile'/tmp/rename_to_db_v2.sql'frominformation_schema.tableswheretable_schema='sbtest'; mysql>selectconcat("renametable",table_schema,".",table_name,"todb_v2.",table_name,";")intooutfile'/tmp/rename_to_db_v2.sql'frominformation_schema.tableswheretable_schema='sbtest';
3.执行生成的sql
mysql>source/tmp/rename_to_db_v2.sql mysql>source/tmp/rename_to_db_v2.sql
就这么简单可以搞定了。
Goodluck!