数据迁移

2022-5-16 大约 3 分钟

# 数据迁移

# 从本地 MySQL 迁移到云数据库 MySQL

本文介绍如何从本地自建数据库MySQL迁移到云数据库MySQL。从本地MySQL迁移至云数据库后,业务可减轻运维压力,仅需关注运维使用即可。

# 注意事项

  • 如果要将本地的 MySQL 数据导入到云数据库 MySQL,需要通过云主机作为传输媒介。
  • 新建的 MySQL 实例与作为传谁媒介的云主机需要在同一个 私有网络 内。
  • 新建的 MySQL 实例的容量空间需大于等于本地自建的 MySQL,以确保数据可以全部上传 。

# 操作步骤

  1. 创建云数据库 MySQL,具体的创建步骤请参考 数据库操作指南

  2. 通过控制台进行库的创建,确保本地自建的 MySQL 中需要导出的库名在云数据库 MySQL 中同样的创建了一遍。

  3. 通过控制台进行数据库账号的创建,也可以使用创建云数据库 MySQL 的时候的账号,然后赋予这个账号在第 2 步操作中新建的库的 读写 权限。

  4. 完成云数据库 MySQL 创建和初始化工作之后,开始从本地自建的 MySQL 进行数据导出到本地的操作,执行命令

     mysqldump -u用户名 -p密码 --single-transaction --set-gtid-purged=OFF --databases 数据库名称 > /路径/导出文件名.sql
    
    1

    参数描述 用户名:自建数据库的用户名。 密码:自建数据库的密码。 数据库名称:填写您需要导出的库名,多个库名通过空格来分隔。

  5. 完成本地自建的 MySQL 数据导出到本地之后,进行云主机创建,步骤请参考 创建云主机实例 ,创建云主机时候需要注意以下几点:

    • 请确保云主机和第 1 步创建的云数据库 MySQL 在同一个 私有网络 内。
    • 新建的云主机需要带一个 公网 IP,提供公网访问能力,否则没办法上传本地的数据文件到云主机上。
  6. 完成云主机创建后,就可以将本地的数据文件上传到云主机上,执行命令

     scp /路径/导出文件名.sql 云主机用户名@云主机公网IP: /云主机路径
    
    1

    参数描述 云主机用户名:创建云主机实例时候的用户名。 云主机公网 IP:云主机绑定的公网 IP 地址。 云主机路径:本地上传的文件在云主机中存放的路径。

  7. 如果没有任何错误提示,表示本地文件成功上传到云主机上了,接着就可以将数据导入到云数据库 MySQL 中,执行命令

     mysql -u用户名 -p密码 -h 云数据库域名 < /云主机路径/导出文件名.sql
    
    1

    参数描述 用户名:第 3 步操作中的用户名。 密码:第 3 步操作中的用户对应的密码。 数据库域名:云数据库 MySQL 的域名可以在实例的详情页查看。

  8. 如果没有任何错误提示,表示导入成功。登录数据库检查数据导入是否有缺失。