环境:ubuntu 18.04 (可通过命令查看:cat /proc/version) mysql版本:5.7 (可通过命令:mysql -V)
修改配置文件 /etc/mysql/mysql.conf.d/mysqld.cnf 指定datadir为新的路径: datadir = /work/mysql_db/mysql 注:这样直接修改后会报错 出现这个问题的原因是在ubuntu中存在一个apparmor的服务
AppArmor是一个高效和易于使用的Linux系统安全应用程序。 AppArmor对操作系统和应用程序所受到的威胁进行从内到外的保护, 甚至是未被发现的0day漏洞和未知的应用程序漏洞所导致的***。 AppArmor安全策略可以完全定义个别应用程序可以访问的系统资源与各自的特权。 AppArmor包含大量的默认策略,它将先进的静态分析和基于学习的工具结合起来, AppArmor甚至可以使非常复杂的应用可以使用在很短的时间内应用成功。(引用百度百科)
AppArmor针对mysql的配置文件路径
/etc/apparmor.d/usr.sbin.mysqld 修改其中的内容: (切记其它的目录如插件目录请不要修改,否则会提示登录的问题) #Allow data dir access 注销掉下面的两行,或者直接换成下面新路径即可 #/var/lib/mysql/ r, #/var/lib/mysql/** rwk, /work/mysql_db/mysql/ r, /work/mysql_db/mysql/** rwk,
需要重启AppArmor服务后生效:
systemctl restart apparmor 或者: /etc/init.d/apparmor restart
重启mysql服务即可正常启动
systemctl restart mysql 登录mysql,查看datadir路径: > show variables like ‘datadir‘; 显示数据路径已经发生了改变
ubuntu下更改mysql数据库datadir位置
标签:0day art linux系统 ppa rest day 一个 应用 mysql
查看更多关于ubuntu下更改mysql数据库datadir位置的详细内容...
声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://www.haodehen.cn/did118366