Ubuntu 微软 shell HTML5 linux wordpress centos Python Android nginx 程序员 开源 Windows Firefox apache mysql php linux命令 google java

安全快速更改MySQL数据库名称

mysql似乎没有更改数据库名称的语句(也许是我不知道),如果你有数据库服务器的管理权限,可以直接更改一下目录名即可,但如果没有权限,可以通过更改表名达到修改数据库名的目的。

下面是把CentOS数据库更改为centos_old。

1、新建数据库centos_old.

mysql > create database centos_old;

2、使用select concat拼成所有rename table的语句。

mysql -uroot -p -e "select concat('rename table centos.',table_name,' to centos_old.',table_name,';') from information_schema.TABLES where TABLE_SCHEMA='centos';" > rename_mysql_name.sql

打开rename_mysql_name.sql,把第一行删除。

rename_mysql_name.sql内容大概为:

rename table centos.wp_commentmeta to centos_old.wp_commentmeta;
rename table centos.wp_comments to centos_old.wp_comments;
rename table centos.wp_forum_forums to centos_old.wp_forum_forums;
rename table centos.wp_forum_groups to centos_old.wp_forum_groups;
rename table centos.wp_forum_posts to centos_old.wp_forum_posts;
rename table centos.wp_forum_threads to centos_old.wp_forum_threads;
rename table centos.wp_forum_usergroup2user to centos_old.wp_forum_usergroup2user;
rename table centos.wp_forum_usergroups to centos_old.wp_forum_usergroups;
rename table centos.wp_links to centos_old.wp_links;
rename table centos.wp_options to centos_old.wp_options;
rename table centos.wp_postmeta to centos_old.wp_postmeta;
rename table centos.wp_posts to centos_old.wp_posts;
rename table centos.wp_term_relationships to centos_old.wp_term_relationships;
rename table centos.wp_term_taxonomy to centos_old.wp_term_taxonomy;
rename table centos.wp_terms to centos_old.wp_terms;
rename table centos.wp_usermeta to centos_old.wp_usermeta;
rename table centos.wp_users to centos_old.wp_users;

3、执行rename语句

mysql -uroot -p < rename_mysql_name.sql

这样就完成了centos数据库名更改为centos_old的操作。

延伸阅读

评论