采用AMH5.1面板,如何将数据库和网站程序转移到数据盘?
原文首发: http://amh.sh/bbs/post-6251-1-1.htm
我的测试环境:阿里云ECS ,CentOS6.5 64bit
硬盘的挂载和格式化具体可看阿里云教程:http://help.aliyun.com/knowledge_detail.htm?knowledgeId=5974154
但是先别急着按照它的教程挂载,否者后面会多一些操作,有一些麻烦。
我用的是AMH5.1面板,最重要的是下面三个目录。
所有环境目录 /home/wwwroot/
数据库目录 /home/usrdata/
创建备份的目录 /home/backup/
其实都在/home 目录下
方法一(简便易行,但是目前AMH5.1不能实现):
AMH5.1环境面板安装在系统盘,但网站和数据库数据放在数据盘。
这样的好处是不仅仅可以使用到更多的数据盘空间,更重要的是重装系统或环境不会影响网站数据。当然格式化数据盘也不会影响系统和环境(不过你格式化数据盘的话,数据就没啦!)。
(简单说环境和数据分开。)
方法:
AMH5.1安装在系统盘里,按照官方默认安装即可。阿里云服务器的数据盘挂载也按原来的操作。
只是在AMH5.1后台添加网站时将默认目录选择成/mnt/wwwroot/lnmp/domain/主标识域名/web 即可。
但是前提是可以选择网站根目录,而现在的AMH5.1版本 还没有这个功能。
所以该方法还不能实现。
期待@amysql大神 更新该功能。
方法二:AMH5.1面板环境,网站数据、数据库数据均安装在数据盘
注意:本方法适用于先挂载数据盘,再安装AMH5.1面板。只需要直接将数据盘挂载到目录/home
方法:
直接按阿里云官方的教程操作就可以了
关键的地方就是把 /mnt 替换为 /home
也就是第5步:添加分区信息时候
把命令 echo '/dev/xvdb1 /mnt ext3 defaults 0 0' >> /etc/fstab
改写成 echo '/dev/xvdb1 /home ext3 defaults 0 0' >> /etc/fstab
操作完上面这些,再安装AMH5.1面板
注意:如果你是先安装了AMH5.1面板,本人就是这种情况,由于阿里云默认不赠送数据盘,所以系统盘20G使用完毕,就只能增加数据盘了。此时网站和数据库全部都在数据盘,如果还是本方法去挂载,也就是添加分区的时候把/mnt 替换为 /home 。
按照@AMYSQL大大的说法(http://amh.sh/bbs/forum.php?mod= ... 179&page=2#pid37995),挂载虽然不会覆盖数据,但是它读到的是当前挂载的数据盘数据。也就是你的网站数据根本没法访问了。因为此时访问的是数据盘,但是数据盘中又没有你的数据。(取消挂载后还是可以读到之前的数据)
所以并不能直接挂载到/home 下面。
再次提醒:本方法适用于先挂载数据盘,再安装AMH5.1面板。
方法三:先安装了AMH5.1,默认网站都在在系统盘下,我又是按照阿里云的的教程把数据盘挂载到了mnt下。还有办法迁移到数据盘吗?
悲催的我就是如此,如何搞呢?
论坛搜索,结合帖子 http://amh.sh/bbs/post-493-1-1.htm(该帖子虽然说是4.2版本的,但是稍作修改也可以用在5.1上面。)
给出以下方法:
先把PHP、MySQL、Nginx都停止
(如何停止?ssh 登陆后 输入amh ,然后按照提示选择即可!)
都停止了后然后再操作。
cd /home #进入网站和数据库上层目录
mv wwwroot /mnt #把wwwroot移动到/mnt目录,即数据盘
ln -s /mnt/wwwroot #原目录不变,并软链接到数据盘,原有任何设置均不改变
mv usrdata /mnt #把usrdata文件夹转移到/mnt目录
ln -s /mnt/usrdata
mv backup /mnt
ln -s /mnt/backup
完成后重启AMH 5.1即可
方法四:先安装了AMH5.1,默认网站都在在系统盘下,我又是按照阿里云的的教程把数据盘挂载到了mnt下,不采用方法三的软链接方法,而是采用转移大法。
方法:先将系统盘/home目录下的文件移动到/mnt相对应的目录,然后把数据盘卸载重新挂载到到/home 。
mkdir /mnt/wwwroot 建立目录
mkdir /mnt/usrdata
mkdir /mnt/backup
关闭相关服务:(ssh登陆后输入amh 按照提示选择即可!)
PHP
mysqld
pureftpd
nginxd
mv home/wwwroot/* /mnt/wwwroot 复制文件
mv home/usrdata/* /mnt/usrdata
mv home/backup/* /mnt/backup
umount dev/xvdb1 卸载数据盘
mount /dev/xvdb1 /home 重新挂载到/home 目录,要重起生效,修改/etc/fstab文件
或者直接 echo '/dev/xvdb1 /home ext3 defaults 0 0' >> /etc/fstab 不用重启!
再开启相关服务:
PHP
mysqld
pureftpd
nginxd
如果有什么不周全的或者遗漏的地方,还请各位大神批评指正。谢谢!
---
转载请注明本文标题和链接:《采用AMH5.1面板,如何将数据库和网站程序转移到数据盘?》
发表评论