业务场景
最近的一个项目最开始由于资源问题,mysql 数据库是部署在一台云服务器上的,这两天客户提供了云数据库,所以原来在部署在 ECS 服务器上的数据库,需要迁移到云数据库。在云数据库上的优势很多,它自动是分配了一主二从,自动备份等。所以这两天的任务就是要将原来的数据库迁移。 mysql 版本 mysql5.7.17
迁移步骤
迁移数据库是一项需要很谨慎的任务。整个迁移过程大概分成以下几步:备份原数据库数据
//备份数据库,并指定日期
mysqldump -uadmin -p****** databaseName | gzip > /databak/databaseName_$(date +%Y%m%d).sql.gz云数据库上初始化数据库、编码、用户名、数据库等基础信息 先通过腾讯云平台创建用户,以及相关权限
//连接数据库
mysql -h172.16.0.1 -uUserName -p******
//创建数据库,并指定编码
CREATE DATABASE databaseName DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;执行还原操作
//解压备份好的.sql文件
gunzip -v /databak/databaseName_20200517.sql.gz
//还原数据库
source /databak/databaseName_20200517.sql
产生的问题
正常情况下,按照以上迁移数据的步骤,应该等还原操作完成即可,但是事情往往不会那么顺利,如果很顺利可能我们对数据库迁移的认知就到这里就可以了。
实际上在执行还原操