首页 > 数据库 > mysql教程 > 如何高效地重命名MySQL InnoDB数据库?

如何高效地重命名MySQL InnoDB数据库?

Mary-Kate Olsen
发布: 2024-12-23 17:34:11
原创
393 人浏览过

How Can I Efficiently Rename a MySQL InnoDB Database?

重命名 MySQL 数据库:InnoDB 的有效解决方案

重命名 MySQL 数据库可能是一项艰巨的任务,特别是对于大型数据库和那些使用 InnoDB,它存储数据的方式与 MyISAM 不同。但是,通过正确的方法,可以高效地完成此操作。

要重命名 InnoDB 数据库,我们需要创建一个新的空数据库,然后将每个表单独移入其中:

RENAME TABLE old_db.table TO new_db.table;
登录后复制

表迁移后调整数据库权限非常重要。

对于 shell 中的脚本编写,您可以使用以下其中一种命令:

mysql -u username -ppassword old_db -sNe 'show tables' | while read table; \
    do mysql -u username -ppassword -sNe "rename table old_db.$table to new_db.$table"; done
登录后复制

for table in `mysql -u root -ppassword -s -N -e "use old_db;show tables from old_db;"`; do mysql -u root -ppassword -s -N -e "use old_db;rename table old_db.$table to new_db.$table;"; done;
登录后复制

注释:

  • -p 选项和 -p 选项之间不要留空格密码。
  • 如果数据库没有密码,去掉 -u 用户名 -ppassword
  • 如果表包含触发器,则无法使用上述方法移动它。在这种情况下,请使用传统的数据库克隆技术:mysqldump old_db | mysql new_db.
  • 数据库重命名后可以复制存储过程:mysqldump -R old_db | mysql new_db.

以上是如何高效地重命名MySQL InnoDB数据库?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板