MySQL中利用RENAME TABLE快速高效重命名库(schema)
目前的MySQL中一旦创建的了新的库(schema)就无法对它进行重命名,所以如果需要对一个库重命名一般的做法是把目标库中的数据dump出来后导入想重命名的新库中,在MySQL的导入中是使用大量的insert,大量使用了DML,如果是大数据量的库那就很低效,其实在MySQL中可以利用RENAME TABLE这种DDL的方式来移动表数据后来重命名库,下面就简单的介绍一下。首先,RENAME TABLE使用方法很简单:
RENAME
TABLE
old_table
TO
new_table;
由此在平时就可以通过查询MySQL的information_schema.TABLES这张字典表获得相应目标库的数据,如在MySQL中有一个test的库需要重命名为test2:
CREATE
DATABASE
test2;#先建好test2
SELECT
CONCAT(
'RENAME TABLE test.'
,TABLE_NAME,
' TO test2.'
,TABLE_NAME,
';'
) DDL
FROM
information_schema.`TABLES`
WHERE
TABLE_SCHEMA =
'test'
;
#生成test转移至test2的DDL后复制执行
DROP
DATABASE
test;#最后再删除旧库
不过需要注意的是该方式需要有一定的权限
相关推荐
世樹 2020-11-11
SCNUHB 2020-11-10
bleach00 2020-11-10
CoderToy 2020-11-16
emmm00 2020-11-17
王艺强 2020-11-17
ribavnu 2020-11-16
bianruifeng 2020-11-16
wangshuangbao 2020-11-13
苏康申 2020-11-13
vivenwan 2020-11-13
moyekongling 2020-11-13
云中舞步 2020-11-12
要啥自行车一把梭 2020-11-12
aydh 2020-11-12
kuwoyinlehe 2020-11-12
minerk 2020-11-12
vitasfly 2020-11-12