Twenty-five years without you

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

在Linux系统上,安装好并启动mysql后,如果需要移动数据目录(通常是需要将数据目录移动到数据盘挂载点目录下),通常是一下几个步骤:

1:停止mysql服务

service mysql stop

2:复制原数据目录到目标新目录

cp -rp /var/lib/mysql /data/my_new_data_folder

【-rp表示携带原有文件的权限属性到新目录,避免出现权限问题】

3:修改配置文件,[mysqld]节点下的datadir属性值,改为新的目录

4:启动mysqld

service mysqld start

 

一般这样操作下来,都能正常启动,有时候会遇到一些“坑”,避坑如下:

1:selinux的坑,如果遇到无法启动的情况,检查服务器的selinux是否已启用,如果启用了就禁用掉。

 

2:apparmor,这个和selinux一样,它也对mysql所能使用的目录权限做了限制,执行

cat /etc/apparmor.d/usr.sbin.mysqld

可以在文件中看到这样的配置:

# Allow data dir access
  /var/lib/mysql/ r,
  /var/lib/mysql/** rwk,

这里路径明显是原有的数据目录路径,我们就照葫芦画瓢,在下面加两行,成为这样:

# Allow data dir access
  /var/lib/mysql/ r,
  /var/lib/mysql/** rwk,

  /var/lib/mysql/ r,
  /var/lib/mysql/** rwk,

 

同理,如果需要修改其他目录,例如错误日志目录,也是在这个文件对应位置加上新的目录就行。

 

posted on 2024-12-05 17:41  Rumble Zheng  阅读(32)  评论(0编辑  收藏  举报