阿里云mysql启动失败迁移数据库完全摸索过程
最近vos启动失败,在检查的过程中发现是mysql启动失败。非常缓慢。我真的有点蒙了。Linux极少用,也没有时间研究过。
这咋搞,问了“龙少”这个高手,他随口说了一句,是不是空间满了?我说不知道啊,
他说你用的 df
-TH.看看。果然。Used
100%.这样来了,
咋办?新买一块云盘,格式化,挂载:
相关教程如下:
购买:这过程忽略,过于简单。
首先做好系统盘镜像。毕竟,小白,啥也不懂。
一、以ext3为例:使用“mkfs.ext3
/dev/xvdb1”命令对新分区进行格式化,格式化的时间根据硬盘大小有所不同。
二、使用“echo
'/dev/xvdb1 /mnt ext3 defaults 0
0' >> /etc/fstab”(不含引号)命令写入新分区信息。然后使用“cat
/etc/fstab”命令查看,出现以下信息就表示写入成功。
注:ubuntu12.04不支持barrier,所以正确写法是:echo '/dev/xvdb1
/mnt ext3 barrier=0 0
0' >> /etc/fstab
如果需要把数据盘单独挂载到某个文件夹,比如单独用来存放网页,可以修改以上命令中的/mnt部分
挂载新分区
使用“mount -a”命令挂载新分区,然后用“df
-h”命令查看,出现以下信息就说明挂载成功,可以开始使用新的分区了。
ECS
Linux系统盘数据转移方法https://help.aliyun.com/knowledge_detail/7604727.html
看了还是很多不懂,上面连接是阿里云工单同学给我的。
再问更细的,阿里云工单同学就说,他们回答不了,让我去论坛提问。或者花钱去请人解决。
http://blog.chinaunix.net/uid-12427199-id-3767763.html
三、实际我执行的命令:忽略购买过程.因为太简单。
df -TH
960 echo
'/dev/xvdb1 /mnt/data1 ext3 defaults 0 0'>>
/etc/fstab
961 mount
/dev/xvdb1 /mnt/data1 错误,目标目录不存在
962 mkdir
/mnt/data1
963 mount
/dev/xvdb1 /mnt/data1
989 cp -r
/var/lib/mysql /mnt/data1
四、修改配置文件:
百度一下:或者提交阿里云清单都得到mysql位置:/etc/my.cnf
替换:/var/lib/mysql 为:/mnt/data1/mysql
我将新20g云盘,挂到了/mnt/data1.,然后复制:/var/lib/mysql
到/mnt/data1下。
我咋知道 /var/lib/mysql 因为启动失败,所以得找错误日志,百度一下,就找到原来在这目录下了。发现数据库文件原来在这儿啊。
启动还是失败:994
/etc/init.d/mysqld start
[FAILED]
发现还要修改:
/etc/init.d/mysqld
于是用ssh 下载下来,将里面的
替换:/var/lib/mysql 为:/mnt/data1/mysql
再启动还是失败,应该是没有给权限的原因,因为最后发现有chown命令。
chown -R mysql /mnt/data1/mysql
chown -R mysql /etc/init.d/mysqld
意思就是:给这2个目录mysql用户权限。
这2条命令是我自己写的。呵呵。也是参考别人发现的。
[root@qt ~]#
/etc/init.d/mysqld start
Starting
mysqld:
[
OK ]
终于成功。登录vos系统,成功!!!点击网站,测试数据库访问,成功。
将/var/lib/mysql 改名为:/var/lib/mysql2
(用ssh
文件管理)
再次测试,发现还是全部成功。网站数据库和vos数据库全部访问成功。
重新启动电脑:发现数据库没有自动启动,需要手动启动:
(百度一下,如何自动启动mysqld,20分后得到最简单如下:)
vi
/etc/rc.d/rc.local
增加一行:(按i进行插入)
service mysqld restart
:wq
Reboot
2分钟后,网站和vos同时测试成功。Mysql自动启动
就这一个小小任务,都在不断的挑战自己,战胜了寸步难行的困难。经历3天断断续续的学习。每走一步,前面都是黑暗!这时候心里是最累的!你不知道要走多少布才会见光明