Apr
27
2021
如何迁移Linux实例系统盘中的数据
概述
购买Linux系统的云服务器ECS时,未购买数据盘,使用一段时间后,随着业务增加,现有系统盘已无法满足业务需求。执行df -h
命令查询空间使用率,确认系统盘使用率接近100%,则需要将数据迁移至新购买的数据盘。
详细信息
- 如果您对实例或数据有修改、变更等风险操作,务必注意实例的容灾、容错能力,确保数据安全。
- 如果您对实例(包括但不限于ECS、RDS)等进行配置与数据修改,建议提前创建快照或开启RDS日志备份等功能。
- 如果您在阿里云平台授权或者提交过登录账号、密码等安全信息,建议您及时修改。
针对此类情况,可参见以下思路进行解决:
说明:本方案涉及数据操作,操作前请通过创建快照等方法进行备份。
-
购买数据盘,创建好分区后,在系统内挂载数据盘到
/mnt/shujupan
目录。 - 创建好系统盘快照备份,以便于操作失败时进行回滚。
-
出于数据安全考虑,为保证迁移顺利进行,需要停止正在运行的服务程序,参见示例如下。
/etc/init.d/nginx stop /etc/init.d/httpd stop /etc/init.d/mysqld stop /etc/init.d/php-fpm stop /etc/init.d/vsftpd stop
-
假设当前系统盘的
/mnt/www
目录是需要进行数据迁移的目录,通过执行以下命令,将www
目录内的所有文件迁移到数据盘。cp -arp /mnt/www/* /mnt/shujupan/
说明:本文以
/mnt/www
目录为例。 -
执行以下命令,卸载
/mnt/shujupan/
目录。umount /mnt/shujupan/
-
执行以下命令,挂载
/mnt/www
目录。mount /dev/vdb1
/mnt/www
-
执行以下命令,修改fstab文件,指定数据盘挂载目录,实现开机自启动。
vi /etc/fstab
/dev/xvdb1 /mnt/www ext4 defaults 0 0
说明:其中ext4为数据盘的文件系统类型,xvdb1为数据盘分区,请根据实际情况调整。
-
重启后检查系统内的程序服务是否运行正常,测试站点、数据库等是否可以正常连接访问。如果没有异常,数据迁移成功。此时对于系统和程序,访问的还是
/mnt/www
目录,但这时该目录是位于数据盘,执行df -h
命令,确认系统盘空间使用率恢复正常。
适用于
- 云服务器 ECS
本公司销售:阿里云、腾讯云、百度云、天翼云、金山大米云、金山企业云盘!可签订合同,开具发票。
我有话说: