更换Mysql数据目录后, mysql服务器无法启动。
解决方法记录如下
首先,我们看怎么修改mysql的数据文件目录
建新数据库目录
mkdir /media/hda11/db
复制linux下原数据到新目录下
cp -dpR /var/lib/mysql/* /media/hda11/db
给新目录重命属性
chown mysql:mysql /media/hda11/db
修改文件/etc/apparmor.d/usr.sbin.mysqld
:sudo gedit /etc/apparmor.d/usr.sbin.mysqld
把
/var/lib/mysql r,
/var/lib/mysql/** rwk,
改成
/media/hda11/db r,
/media/hda11/db/** rwk,
修改目录
sudo gedit /etc/mysql/my.cnf
如
datadir = /var/mysql换成datadir = /media/hda11/db
再开服务器
sudo /etc/init.d/apparmor restart
sudo /etc/init.d/mysql restart
注意事项:修改文件之前,应该先备份原始文件。如my.cnf, usr.sbin.mysqld
但是,/etc/apparmor.d /usr.sbin.mysqld 的备份,不要放在当前目录下,而是要备份到别的地方,否则它会加载这个目录下所有的文件的权限内容,导致修改后依然没有权限,mysql就启动不成功。我 就在这儿转了好久,都没有找到问题所在。最后一遍试验的时候,才成功。原来问题在这里。
引用来源:
http://www.akii.org/2010-03/ubuntu9-10-replacement-mysql-data-directory-mysql-server-can-not-start-has-been-resolved/