mysql数据库重命名

今天导入数据库的时候,先创建了一个测试数据库,导入成功之后,发现软件重命名功能是无效的......

方法1:重命名(无效)

RENAME database olddbname TO newdbname

这个是5.1.7到5.1.23版本可以用的,现在的版本都用不了

使用脚本(无效)

#!/bin/bash
# 假设将sakila数据库名改为new_sakila
# MyISAM直接更改数据库目录下的文件即可

mysql -uroot -p123456 -e 'create database if not exists new_sakila'
list_table=$(mysql -uroot -p123456 -Nse "select table_name from information_schema.TABLES where TABLE_SCHEMA='sakila'")

for table in $list_table
do
    mysql -uroot -p123456 -e "rename table sakila.$table to new_sakila.$table"
done

使用这个脚本,但是5.6之后这个貌似用不了了,反正我失败了

使用navicat(成功)

  • 创建需要的新数据库;
  • 使用navicat选中所有的旧表,直接拖动到新数据库上就可以复制表结构和数据,而且复制速度很快(200M的几秒钟就复制完成了),复制完成之后,旧的可以删除,留着当个备份也行.

选中表之后拖动到数据库上就会出现选择项了
这个方法用来导入数据库/表也行


参考:

posted @ 2020-12-08 14:07  紫月java  阅读(1922)  评论(0编辑  收藏  举报