【云计算的1024种玩法】使用 DTS 轻松迁移云数据库

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用系列 2核4GB
简介: 相信很多老站长将自己的网站从旧服务器迁移到云服务器上的时候最头疼的就是数据库的备份和还原了吧。一些有年头的地方门户可能数据库文件即便是压缩后都会有几个G那么大,用 phpMyAdmin 根本不可能完全导出,就算用其他工具导出了备份文件上传下载传输又要浪费不知道多少时间,要知道国内服务器基本上都没大多带宽。

前言

相信很多老站长将自己的网站从旧服务器迁移到云服务器上的时候最头疼的就是数据库的备份和还原了吧。一些有年头的地方门户可能数据库文件即便是压缩后都会有几个G那么大,用 phpMyAdmin 根本不可能完全导出,就算用其他工具导出了备份文件上传下载传输又要浪费不知道多少时间,要知道国内服务器基本上都没大多带宽。

其实阿里云一直都有为大家上云迁移数据库准备一个很干货的产品,那就是 数据传输(DTS),可以方便的实现 MySQL、SQLServer、PostgreSQL、MongoDB 等多种数据源到 RDS、ECS甚至非阿里云服务器的迁移。

这里以 MySQL 服务器为例向大家介绍操作教程,其实还支持 SQLServer、PostgreSQL、MongoDB、Redis 等常见数据库。

要求 & 收获

需要使用到的产品:

  1. 任意(包括非阿里云)服务器/ECS/轻量应用服务器(安装任意 Linux 发行版镜像)
  2. MySQL 数据库
  3. 云数据库 MySQL 版(或者其他接受迁移的数据库)
  4. 数据传输产品

通过本文你将讲学到:

  1. 使用 DTS
  2. 数据库的快速迁移和恢复

教程

被迁移数据库可访问设置

传统网站架构一般来说为了安全起见,数据库的设置默认都是只接受本机(localhost)访问的,而 DTS 的迁移必须依赖公网,所以我们需要为 DTS 开放连接支持。

服务器防火墙

一般来说服务器会有一个防火墙,CentOS 7 是 FireWall、CentOS 6 、 Debian 是 iptables 以及 Ubuntu Server 是 UFW。

FireWall 开放数据库端口:

systemctl start firewalld.service #开启防火墙

#开放 http 80 和 https 443 和 SSH 22 端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent

#生效规则
firewall-cmd --reload

iptables 开放数据库端口:

修改 /etc/sysconfig/iptables 文件

适当位置加入:

-A INPUT -m state –state NEW -m tcp -p tcp –dport 3306 -j ACCEPT

然后重启 iptables

/etc/init.d/iptables restart  

ufw 开放数据库端口

ufw allow mysql

开放账户的远程连接

首先,我们要通过命令行登录操作一下 数据库:

mysql -u root -p

然后会需要输入一下 root 密码,输入的时候是隐藏的并不是说没有输入进去。
然后运行:

GRANT ALL PRIVILEGES ON *.* TO '数据库账号'@'%' IDENTIFIED BY '对应账号的密码' WITH GRANT OPTION;
FLUSH PRIVILEGES;

如果有安装 phpMyAdmin 就更简单了:

用户 - 登录信息 中将 Host 改成 任意主机 就行

image

数据库的设置

修改 my.cnf 文件,一般来说该文件会位于: /etc/my.cnf /etc/mysql/my.cnf /usr/local/mysql/etc/my.cnf 这几个位置,如果不知道就翻阅一下服务器环境的手册。

找到 bind-address = 127.0.0.1 修改为:

bind-address    = 0.0.0.0

一些交旧的 MySQL 版本,可能用的使用 skip-networking 命令来关闭网络,将其删掉即可。

然后重启 MySQL。

service mysql restart

ok,被迁移数据库的设置到此结束。这是一个大难点,因为不同的环境差异性太大。

迁移

设置被迁移数据库是唯一的难点,不过掌握了以后就可以通吃所有数据库了。如果目标迁移数据库是 云数据库 就不需要额外的设置了,创建好迁移数据库和账号就行。如果是迁移至自建的数据库,那么就需要再重复一次第一步了。

一、进入 DTS 创建迁移任务 填写好 被迁移数据库目标数据库,然后点击 测试,提示 测试通过 就ok了。

image

二、选择迁移对象,一般来说就是整个数据库都迁移。 如果有特殊的需求,比如说一个论坛的数据库肯定是不断增长的,如果要迁移就可能需要关站,但是通过增量迁移帖子对应的表就可以实现不关站的平滑迁移了,当然这对操作者的技能要求比较高,但是已经极大的降低了难度了。

image

三、然后就是预检查的如果都是绿勾就是一点事情都没有,如果有不对的地方就需要改正。

image

四、然后选择链路规格:

image

不同规格价格不同,不过貌似迁移到阿里云是不用钱的还是因为演示数据量太小我也是傻傻分不清楚。

五、然后等两个绿条都 100% 了就可以了,我们就可以修改数据库配置文件将数据库改成 RDS 或者其他被迁移的数据库即可。

image

相关实践学习
2分钟自动化部署人生模拟器
本场景将带你借助云效流水线Flow实现人生模拟器小游戏的自动化部署
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
4月前
|
弹性计算 关系型数据库 数据库
手把手带你从自建 MySQL 迁移到云数据库,一步就能脱胎换骨
阿里云瑶池数据库来开课啦!自建数据库迁移至云数据库 RDS原来只要一步操作就能搞定!点击阅读原文完成实验就可获得一本日历哦~
|
4月前
|
关系型数据库 MySQL 数据库
RDS MySQL灾备服务协同解决方案构建问题之数据库备份数据的云上云下迁移如何解决
RDS MySQL灾备服务协同解决方案构建问题之数据库备份数据的云上云下迁移如何解决
|
5天前
|
安全 关系型数据库 MySQL
体验自建数据库迁移到云数据库RDS,领取桌面置物架!
「技术解决方案【Cloud Up 挑战赛】」正式开启!本方案旨在帮助用户将自建数据库平滑迁移至阿里云RDS MySQL,享受稳定、高效、安全的数据库服务,助力业务快速发展。完成指定任务即可赢取桌面置物架等奖励,限量供应,先到先得。活动时间:2024年12月3日至12月31日16点。
|
2月前
|
算法 大数据 数据库
云计算与大数据平台的数据库迁移与同步
本文详细介绍了云计算与大数据平台的数据库迁移与同步的核心概念、算法原理、具体操作步骤、数学模型公式、代码实例及未来发展趋势与挑战。涵盖全量与增量迁移、一致性与异步复制等内容,旨在帮助读者全面了解并应对相关技术挑战。
43 3
|
3月前
|
存储 SQL 关系型数据库
一篇文章搞懂MySQL的分库分表,从拆分场景、目标评估、拆分方案、不停机迁移、一致性补偿等方面详细阐述MySQL数据库的分库分表方案
MySQL如何进行分库分表、数据迁移?从相关概念、使用场景、拆分方式、分表字段选择、数据一致性校验等角度阐述MySQL数据库的分库分表方案。
460 15
一篇文章搞懂MySQL的分库分表,从拆分场景、目标评估、拆分方案、不停机迁移、一致性补偿等方面详细阐述MySQL数据库的分库分表方案
|
3月前
|
SQL Java 数据库连接
数据库迁移不再难:Flyway 与 Liquibase 大比拼,哪个才是你的真命天子?
【9月更文挑战第3天】数据库迁移在软件开发中至关重要,尤其在使用 ORM 框架如 Hibernate 时。为确保部署时能顺利应用最新的数据库变更,开发者常使用自动化工具。Flyway 和 Liquibase 是当前流行的两种选择,均能有效管理数据库版本控制。Flyway 采用 SQL 脚本表示变更,简单易用;Liquibase 支持多种脚本格式,功能更强大,适合复杂项目。本文将对比这两种工具的特点,并通过示例展示各自的优缺点,帮助开发者根据项目需求做出合适的选择。
655 1
|
4月前
|
JSON NoSQL Ubuntu
在Ubuntu 14.04上如何备份、恢复和迁移MongoDB数据库
在Ubuntu 14.04上如何备份、恢复和迁移MongoDB数据库
95 1
|
4月前
|
API Java 开发框架
【从零到精通】如何用Play Framework快速构建RESTful API?看完这篇你就懂了!
【8月更文挑战第31天】《Play Framework快速入门:从零开始构建RESTful API》介绍了如何使用高性能Web开发框架Play Framework构建简单的RESTful API。从环境搭建到项目创建,再到实现用户列表的增删查功能,本文档详细指导每个步骤,并解释核心概念。适合初学者快速上手。首先确保已安装JDK和sbt,然后通过sbt创建Play项目,接着定义控制器、模型及路由,最后运行应用进行测试。通过本教程,你将掌握构建RESTful API的基础知识,为进一步学习Play Framework打下坚实基础。
54 0
|
4月前
|
SQL Oracle 关系型数据库
Entity Framework Core 实现多数据库支持超厉害!配置连接、迁移与事务,开启多元数据库之旅!
【8月更文挑战第31天】在现代软件开发中,为了满足不同业务需求及环境要求,常需支持多个数据库系统。Entity Framework Core(EF Core)作为一款强大的对象关系映射(ORM)框架,通过数据库提供程序与多种数据库如SQL Server、MySQL、PostgreSQL、Oracle等交互。开发者可通过安装相应NuGet包并配置`DbContextOptionsBuilder`来指定不同数据库连接,从而实现多数据库支持。
263 0
|
4月前
|
SQL 数据管理 关系型数据库
SQL与云计算:利用云数据库服务实现高效数据管理——探索云端SQL应用、性能优化、安全性与成本效益,为企业数字化转型提供全方位支持
【8月更文挑战第31天】在数字化转型中,企业对高效数据管理的需求日益增长。传统本地数据库存在局限,而云数据库服务凭借自动扩展、高可用性和按需付费等优势,成为现代数据管理的新选择。本文探讨如何利用SQL和云数据库服务(如Amazon RDS、Google Cloud SQL和Azure SQL Database)实现高效的数据管理。通过示例和最佳实践,展示SQL在云端的应用、性能优化、安全性及成本效益,助力企业提升竞争力。
75 0