mysql单点库到集群库的迁移

原文地址为: mysql单点库到集群库的迁移

应用场景

还没有mysql集群的时候,可能应用生产数据库是单节点的mysql,现在生产环境放到了mysql集群上,那么之前mysql单节点的数据,都要搬到mysql集群中,改怎么操作呢?

Mysql单点库到集群库的迁移,可以通过两种方式:
1. 单点数据库新建备份,生成备份.psc文件,然后通过navicat还原到集群数据库中。
2. 单点数据库生成.sql文件,然后到sql节点执行sql语句。两种方法都可行,但是针对数据量较大时,.sql文件会非常庞大,而不像.psc进行过压缩,传递较困难。

1. 迁移.psc

把mysql集群数据库当成单点数据库一样,直接用.psc文件进行还原备份。还原备份完后,需要转换它们的引擎为ndbcluster,具体步骤如下:

SELECT CONCAT('ALTER TABLE `', table_name, '` ENGINE=ndbcluster;') AS sql_statements FROM information_schema.tables AS tb WHERE table_schema = 'epointjweb4_0' AND `TABLE_TYPE` = 'BASE TABLE' ORDER BY table_name;

注:需要转换引擎的数据库名。
通过上面语句,生成的一系列ALTER语句,然后将这些ALTER语句再执行一遍。

2. 迁移.sql

导出整个数据库中的所有数据:
 # /usr/local/src/mysql/bin/mysqldump -u root -p dabaseName > fileName.sql
注:fileName.sql最好加上路径名,否则导出文件都不知道在哪儿了

导出数据库中的某个表的数据:
 # /usr/local/src/mysql/bin/mysqldump -u root -p dabaseName tableName > fileName.sql

导入sql方法一:
 # /usr/local/src/mysql/bin/mysql -uroot -p11111
 # mysql> source /usr/local/src/fileName.sql
注:fileName.sql要有路径名。

导入sql方法二:
 # mysql -uroot -p database < fileName.sql

转载请注明本文地址: mysql单点库到集群库的迁移

你可能感兴趣的:(mysql集群数据,集群数据导入,mysql集群迁移,数据迁移,mysql集群)