Mysql数据迁移操作
1.迁移数据前先设置mysql服务器参数
innodb_large_prefix=ON
2.远程分别导出base和store数据库命令
导出测试环境base数据库
mysqldump --user=timesll@timesll-test-mysql \
--password='' --column-statistics=0 \
--host=timesll-test-mysql.mysql.database.chinacloudapi.cn \
--port=3306 --result-file="basedump.sql" --databases "base"
导出测试环境store数据库
mysqldump --user=timesll@timesll-test-mysql \
--password='' --column-statistics=0 \
--host=timesll-test-mysql.mysql.database.chinacloudapi.cn \
--port=3306 --result-file="storedump.sql" --databases "store"
参数说明:
--user 数据库用户名
--password 数据库密码
--host 数据库连接地址
--port 数据库端口号
--result-file 导出的文件名称
--databases 要导出的数据库
3.验证导出的sql头文件
可以使用vi命令,确认use后的名称是即将要导出到的库,如果不是需要手动更改。

4.将导出的数据导入到新库
将步骤2导出的数据库执行以下命令分别导入新的库环境,注意替换为环境的实际连接信息。
导入新base库
mysql -h 127.0.0.1 -u dev -p base < basedump.sql
导入新sore库
mysql -h 127.0.0.1 -u dev -p store < storedump.sql
5.迁移完对数据完整性验证
方法1:
mysqldump --skip-comments --skip-extended-insert -u root -p dbName1>file1.sql
mysqldump --skip-comments --skip-extended-insert -u root -p dbName2>file2.sql
diff file1.sql file2.sql
方法2:
mysqldbcompare --server1=dev:'password'@rm-wz92lk20v9bp2bt93io.mysql.rds.aliyuncs.com \
--server2='timesll@timesll-test-mysql':'password'@timesll-test-mysql.mysql.database.chinacloudapi.cn --diffftype=sql base:base
相关推荐
-
PHP8种变量类型的详细讲解2025-02-22 00:32:24
-
php+apache 和 php+nginx的区别2025-02-22 00:21:27
-
PHP:与workerman结合实现定时任务2025-02-22 00:15:57
-
Nginx的Rewrite规则与实例2025-02-22 00:15:39
-
MySql中身份证字段的简单脱敏介绍2025-02-22 00:15:36