Linux 系统下数据库迁移实战指南

一.数据库迁移概念

在 Linux 系统中,使用数据库进行数据迁移是一种非常常见的场景。数据库通常存储了大量结构化的业务数据,因此需要特别谨慎地进行迁移。以下是关于使用数据库进行数据迁移的详细概念、方法和注意事项:


1. 数据库迁移的背景

  • 数据库升级:例如从 MySQL 5.6 升级到 MySQL 8.0,或者从旧版本的 PostgreSQL 升级到新版本,迁移数据是为了适配新版本的数据库特性。

  • 服务器迁移:当需要将数据库从一台服务器迁移到另一台服务器时,需要完整地迁移数据库数据、配置文件和相关依赖。

  • 业务需求:可能需要将数据迁移到新的环境以支持业务扩展,例如从开发环境迁移到生产环境,或者从本地服务器迁移到云环境。

  • 数据整合:当公司合并或业务重组时,可能需要将多个数据库中的数据合并到一个中央数据库中。

  • 灾备和备份:为了确保数据安全,需要定期将数据库数据备份到其他位置,以应对服务器故障、数据丢失等突发情况。


2. 数据库迁移的内容

  • 数据库表和数据:这是迁移的核心内容,包括所有用户自定义表以及表中的数据记录。

  • 数据库架构和元数据:包括表的结构(字段定义、数据类型、约束条件、索引、外键等)、存储过程、函数、触发器、视图等。

  • 数据库用户和权限:用户账号、用户权限和角色等相关信息也需要迁移,以确保新环境中的用户可以正常访问数据库。

  • 配置文件:数据库的配置文件(如 MySQL 的 my.cnf 或 PostgreSQL 的 postgresql.conf)也需要迁移,并根据新环境进行适当调整。

  • 日志文件和备份:包括事务日志、二进制日志(Binary Logs)等,这些文件对于数据库的恢复和同步非常重要。


3. 数据库迁移的步骤

  • 评估:评估当前数据库的状态,包括数据量、表结构复杂性、依赖关系等。根据评估结果,选择合适的迁移方法。

  • 备份:在迁移之前,必须对数据库进行完整备份(全量备份)。备份是数据迁移的安全保障,即使迁移过程中出现问题,也可以通过备份恢复数据。

  • 规划和测试:制定详细的迁移计划,包括迁移的时间窗口、步骤、工具选择等。在测试环境中进行迁移测试,验证迁移方案的有效性和数据完整性。

二.迁移准备 

1.Linux虚拟机

Linux 虚拟机,是数据库迁徙的起点。在 ARCHER CM 这个资源宝库中,我们可以轻松申请到 Linux 虚拟机。根据业务需求,为虚拟机配置合适的 “骨骼”,包括 CPU 核心数、内存大小以及存储容量。例如,对于一个中型数据库迁移任务,可能需要配置 4 核 CPU、8GB 内存以及 100GB 的存储空间,以确保虚拟机能够流畅运行数据库安装与迁移过程。配置完成后,虚拟机就像一座刚刚搭建起框架的新建筑,等待我们注入数据与应用的活力。

2.文件上传

当虚拟机准备好后,我们需要将项目所需文件上传到home目录下(有需要可私信)

三.数据库迁移

1.数据库安装

首先我们需要对上传的文件进行授权

chmod + /home/*

接着我们就可以对数据库进行安装(虚拟机需要进行联网)

sudo /home/1_install-mysql-arm64.sh 

到这一步,我们需要独立设置MySQL的密码

/mnt/mysql/bin/mysqladmin -uroot -S /tmp/mysql.sock password 'Lzd@@50##50'

随后继续进行安装

 sudo /home/3_install-mysql-arm64.sh

到这一步,数据库的安装就完成了

2.安装redis

sudo /home/4_install-redis.sh

安装需要等待一会儿,显示如下代表安装完成

3.安装 Java

sudo /home/5_install_java.sh

输入安装命令,它会弹出如下操作:

我们依次进行操作命,最后出现此页面即可。

4.安装 Docker

sudo /home/6_docker-install-offline.sh

验证代码:

docker --version

出现此页面,安装完成。

5.加载 Nginx 镜像

我们需要将 Nginx 镜像备份文件加载到 Docker 引擎中

docker load -i /home/nginx-arm64v8.img

得到如下效果:

接着验证镜像加载

docker images

可以得到此镜像

6.数据迁移

接下来,使用 window 系统下的数据库(如 NAV 数据库)进行迁移,这是一场跨平台的数据大迁徙。首先,利用数据库连接工具,如同搭建一座桥梁,连接虚拟机数据库(需知晓虚拟机 IP 地址)。在工具中输入虚拟机的 IP 地址、数据库端口以及之前设置的用户名和密码,建立稳定的连接通道。然后创建一个名为cmes_center的新数据库,这相当于在目标端为数据准备了一个全新的家园。接着,我们需要找到传输的数据库,这里以另一个数据库为例。连接到来源数据库,打开工具中的 “数据传输” 选项,进入数据迁移的控制中心。在这个环节,根据具体需求勾选相应的数据表、视图等对象,然后点击全选,启动数据传输任务。在传输过程中,工具会实时显示迁移进度,如同数据迁徙的进度条逐渐拉满。等待几分钟,数据如同一群迁徙的候鸟,从原来的数据库环境飞向新的虚拟机数据库家园,完成数据迁徙的壮举。

接着,我们需要找到传输的数据库(各位可自行查找)这里以我另一个数据库为例

连接到来源数据库,选择工具→数据传输。

我们来到选项,根据我的来勾选即可

接着下一步,来到此页面,我们全选

等待几分钟,就可以传输完成

总结 :这场在 Linux 系统中展开的数据库迁徙之旅,涵盖了从环境搭建、软件安装到数据迁移的全方位过程。通过以上详细步骤,我们不仅完成了一次技术上的数据迁移,更实现了业务数据在新环境中的重生与延续,为企业的数字化转型提供了坚实的数据基石。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值