了解Databases for MySQL的数据可移植性
数据可移植性服务或工作负载从罕见重大事故和大规模故障(如服务中断)中恢复的能力。 这包括影响整个地区的自然灾害、数据库损坏或导致工作负荷增加的服务中断。 这种影响超出了高可用性设计所能承受的范围。涉及一套工具和程序,使客户能够导出在不同服务提供商或内部软件上实施类似工作负载和数据处理所需的数字工件。 它包括在客户自己的位置复制和存储服务客户内容的程序,包括服务用于存储和处理数据的相关配置。
职责
IBM Cloud服务提供接口和说明,指导客户将服务客户内容(包括相关配置)复制并存储到自己选定的位置。
您有责任将导出的数据和配置用于数据可移植到其他基础设施的目的。 这可能涉及以下方面
- 规划和执行在不同的云提供商或内部软件上建立替代基础架构,提供与IBM服务类似的功能。
- 规划和执行在备用基础设施上移植所需应用程序代码的工作,包括客户应用程序代码的调整和部署自动化。
- 将导出的数据和配置转换为备用基础设施和经调整的应用程序所需的格式。
有关使用IBM Cloud® Databases for MySQL 时的责任,请参阅 Databases for MySQL的共同 责任。
数据导出程序
Databases for MySQL提供了导出内容的机制,这些内容已通过服务上传、存储和处理。
从Databases for MySQL导出数据
从IBM Cloud® Databases for MySQL 迁移数据有两种方法。 我们推荐使用 "mysqldump
和 "mydumper
"。 最适合您的工具取决于某些条件,包括网络连接、数据集大小和中间模式需求。
准备工作
在开始数据迁移之前,请在本地安装MySQL,以便使用“mysql
和”mysqldump
工具。
MySQL工作台还提供了一个图形工具,用于处理MySQL服务器和数据库。
mysqldump
该本地MySQL客户端实用程序默认安装,可执行逻辑备份,重现表结构和数据,而无需复制实际数据文件。mysqldump
会转储一个或多个MySQL数据库,以便备份或转移到另一个MySQL服务器。 更多信息,请参阅 mysqldump 文档。
在以下情况下使用 "mysqldump
- 数据集小于 10 GB。
- 迁移时间并不重要,重试迁移的成本也很低。
- 您无需进行任何中间模式或数据转换。
如果满足以下任何条件,请勿使用 "mysqldump
- 您的数据集大于 10 GB。
- 源数据库和目标数据库之间的网络连接不稳定或缓慢。
请按照以下步骤操作::
在源数据库上运行 "mysqldump
,创建一个 SQL 文件,用于重新创建数据库。 使用 CLI 迁移 "mysql
至少需要以下参数:
- 主机名(
-h
标志) - 端口号(
-P
标志) - 用户名(
-u
标志) - --ssl-mode=VERIFY_IDENTITY(客户端需要加密连接,并根据服务器 CA 证书及其证书中的服务器主机名进行验证)。
- --ssl-ca(证书颁发机构 (CA) 文件的路径名,可在用户界面 "概览"页面的 "端点 CLI "选项卡中找到)。
- 数据库名称
- 结果文件(
-r
标志)
您的 CLI 命令如下所示:
mysqldump -h <host_name> -P <port_number> -u <user_name> --ssl-mode=VERIFY_IDENTITY --ssl-ca=mysql.crt --set-gtid-purged=OFF -p <database_name> -r dump.sql
要生成跟踪运行中错误的 "mysqldump
作业日志文件,请使用以下命令:
mysqldump -h <host_name> -P <port_number> -u <user_name> --log-error=error.log --ssl-mode=VERIFY_IDENTITY --ssl-ca=mysql.crt --set-gtid-purged=OFF -p ibmclouddb -r dump.sql
例如,在导入时也可以这样做:
mysql -h <host_name> -P <port_number> -u admin --ssl-mode=VERIFY_IDENTITY --ssl-ca=mysql.crt -p ibmclouddb < dump.sql > import_logfile.log
mysql
命令有很多选项。 更多信息,请参阅 mysqldump 文档和 命令参考。
我的垃圾桶
mydumper
及其配套的逻辑备份工具“myloader
使用多线程功能执行数据迁移,与”mysqldump
类似。 不过,"mydumper
提供了许多改进,例如并行备份、一致读取和更易于管理的输出。 并行化可以在导入和导出过程中提高性能,而输出可以更容易管理,因为单个表会被转储到单独的文件中。
在以下情况下使用 "mydumper
- 数据集大于 10 GB。
- 源数据库和目标数据库之间的网络连接快速而稳定。
- 您需要进行中间模式或数据转换。
如果满足以下任何条件,请勿使用 "mydumper
- 您的数据集小于 10 GB。
- 源数据库和目标数据库之间的网络连接不稳定或非常缓慢。
在开始使用 "mydumper
导出数据之前,请参阅 mydumper 项目,了解有关安装和必要开发环境的详细信息和分步说明。
接下来,请参阅 如何使用 mydumper页面,了解有关使用“mydumper
和”myloader
工具执行完整数据迁移的信息。
导出数据格式
导出的数据为 SQL 格式,可使用 "mysql
命令导入任何其他MySQL实例。 使用管理员用户执行导入。 更多信息,请参阅 mysqldump 文档。
数据所有权
所有导出的数据都归类为客户内容,因此适用于它们的全部客户所有权和许可权,如 IBM Cloud服务协议 所述。