首页 > 运维 > linux运维 > 正文

记一次服务器网站数据迁移实例

齐天大圣
发布: 2020-05-07 16:41:31
原创
188 人浏览过

公司服务器有一个系统盘40G,目前已经用掉了30%左右,老板新购了一块磁盘200G,让我把之前数据迁移到新的磁盘上。迁移工作非常顺利。这里和大家分享下我是怎么做的。

格式化

lsblk查看新的磁盘文件名

首先我们需要知道磁盘文件用,用lsblk来查看,知道了新的磁盘文件名为/dev/vdb

分区

我将200G的磁盘分了两个区,大小分别为50G和100G,剩下50G留着以后看看怎么用。

# 分区的命令
fdisk /dev/vdb
…… 

# 强制让内核重新找一次分区表
partprobe

# 格式化分区
mkfs.xfs /dev/vdb1
mkfs.xfs /dev/vdb2
登录后复制

挂载

分区及格式化后,就需要挂载分区。linux下分区必须先挂载才能使用。

创建一个新的目录/data,用来挂载/dev/vdb1。这个分区暂时保留,留着以后用。

网站数据都在/www 目录下,这个目录的数据我们是准备存放到新磁盘分区上的。怎样让迁移工作量最小化呢?

我采用的方法是,将原目录/www 修改为 /wwwbak,然后重新创建空目录 /www 。/www目录现在是空的了,所以可以挂在到新的磁盘分区上,我们将100G的分区挂载到/www目录。然后将/wwwbak目录的所有数据复制到/www目录。至此,迁移工作就完成了。

# 关闭nginx及mysql服务
killall nginx
killall mysqld

# 将原/www目录修改为/wwwbak
mv /www /wwwbak
# 创建空目录
mkdir /www /data

# 挂载
mount /dev/vdb1 /data
mount /dev/vdb2 /www
登录后复制

修改/etc/fstab文件

修改/etc/fstab 文件,让开机自动挂载。

# 查看分区的uuid
blkid

# 修改fstab文件内容
vim /etc/fstab
...

# 重新挂载一遍看有没有错误
mount -a
登录后复制

迁移数据

迁移数据这个时候就非常简单了。cp一定要加选项-a,这样文件属性不会改变。

# 复制数据
cp -a /wwwbak/* /www

# 开启ningx和mysql
/etc/init.d/nginx start
/etc/init.d/mysql start
登录后复制

数据迁移后,/wwwbak目录就可以删除了,也可以留着,做一个备份。

以上是记一次服务器网站数据迁移实例的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
1
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板