tencent cloud

文档反馈

MySQL 离线迁移数据

最后更新时间:2021-12-23 16:08:36
    本文为您介绍如何通过控制台和命令行工具两种方案迁移数据。

    控制台迁移数据

    通过控制台迁移数据有物理备份和逻辑备份两种方式,详细操作请参见:

    命令行工具迁移数据

    1. 使用 MySQL 命令行工具 mysqldump 生成待导入的 SQL 文件,方式如下:
    注意:
    使用 mysqldump 导出的数据文件必须兼容所购买的云数据库 MySQL 版本的 SQL 规范,可登录云数据库通过 select version(); 获取相应的 MySQL 版本信息。生成的 SQL 文件名称允许英文/数字/下划线,但不能包含 “test” 字符。
    请保证源和目标数据库版本一致,源和目标数据库字符集一致,mysqldump 工具的版本一致。您可以通过参数 --default-character-set 来指定字符集。
    shell > mysqldump [options] db_name [tbl_name ...] > bak_pathname
    其中,options 为导出选项,db_name 为数据库名称,tbl_name 为表名称,bak_pathname 为导出路径名。 更多 mysqldump 导出数据说明,请参见 MySQL 官方手册
    2. 通过 MySQL 命令行工具导入数据至目标数据库,方式如下:
    shell > mysql -h hostname -P port -u username -p < bak_pathname
    其中,hostname 为还原数据的目标主机,port 为目标主机的端口,username 为目标主机的数据库用户名,bak_pathname 为备份文件的完整路径。

    迁移数据(Windows 系统)

    1. 使用 Windows 系统的 mysqldump 工具生成待导入的 SQL 文件,具体请参考 命令行工具迁移数据 中的描述。
    2. 进入命令提示符,通过 MySQL 命令行工具导入数据至目标数据库。
    
    
    3. 登录目标 MySQL 数据库,执行show databases;命令,可查看到备份的数据库已导入至目标数据库。
    
    

    迁移数据(Linux 系统)

    本文以 Linux 系统的 CVM 为例,从 CVM 访问数据库请参见 访问 MySQL 数据库
    1. 登录 CVM,使用 MySQL 命令行工具 mysqldump 生成待导入的 SQL 文件。以云数据库上的 db_blog 数据库为例。
    
    
    2. 通过 MySQL 命令行工具,将数据还原至目标数据库。
    3. 登录目标 MySQL 数据库,执行show databases;命令,可查看到备份的数据库已导入至目标数据库。
    
    

    导入数据文件字符集编码问题

    1. 云数据库导入数据文件如果没有指定字符集编码,以云数据库设置的字符集编码执行。
    2. 如果导入数据文件中有指定的字符集编码,则以指定的字符集编码执行。
    3. 如果导入的数据文件的字符集编码与云数据库当前字符集编码不同,会造成乱码。
    更多字符集编码问题,请参见 使用限制 的字符集说明。
    联系我们

    联系我们,为您的业务提供专属服务。

    技术支持

    如果你想寻求进一步的帮助,通过工单与我们进行联络。我们提供7x24的工单服务。

    7x24 电话支持