ubuntu16 中修改mysql5.7 my.cnf,踩的坑(1)(記)

修改了my.cnf放到/etc/mysql/目錄下邊之后,systemctl stop mysql 之后重啟報錯如下

Job for mysql.service failed because the control process exited with error code. See "systemctl status mysql.service" and "journalctl -xe" for details.

systemctl status mysql.service 之后顯示的

Aug? 3 10:36:16 ubuntu systemd[1]: mysql.service: Control process exited, code=exited status=1

Aug? 3 10:36:16 ubuntu systemd[1]: Failed to start MySQL Community Server.

Aug? 3 10:36:16 ubuntu systemd[1]: mysql.service: Unit entered failed state.

Aug? 3 10:36:16 ubuntu systemd[1]: mysql.service: Failed with result 'exit-code'.

Aug? 3 10:36:16 ubuntu systemd[1]: mysql.service: Service hold-off time over, scheduling restart.

Aug? 3 10:36:16 ubuntu systemd[1]: Stopped MySQL Community Server.

Aug? 3 10:36:16 ubuntu systemd[1]: Starting MySQL Community Server..

這主要是因為修改了datadir的路徑?jīng)]有修改/etc/apparmor.d/usr.sbin.mysqld中datadir中的信息

apparmor控制了應(yīng)用的目錄訪問權(quán)限,所以mysql是繞不開它的。修改“/etc/apparmor.d/usr.sbin.mysqld”文件。

將其中默認(rèn)的data目錄是:

/var/lib/mysql/ r,

/var/lib/mysql/** rwk,

把這兩行修改為移動過的的實際的數(shù)據(jù)文件目錄,例如:

/my data path/ r,

/my data path/** rwk,

保存,執(zhí)行 service apparmor restart 重啟apparmor服務(wù)。

systemctl restart apparmor

之后對mysql進(jìn)行初始化

?mysql --initialize?

初始化之時可能會出現(xiàn)兩個

1、can't find messagefile 'usr/local/mysql/share/english/errmsg.sys'.....Fatal error: Can't change to run as user 'mysql';Please check that the user

2、The innodb_system data file 'ibdata1' must be writable

對于錯誤1是因為沒有指定正確的語言文件位置。需要在my.cnf中添加

[mysqld]

language =.... ? ?最好找到原來數(shù)據(jù)庫的語言位置 ?如我的為/usr/share/mysql/english

對于錯誤2是因為指定的datadir 沒有寫權(quán)限

chown -R mysql:mysql ?'your data path'

chmode -R 777 'your data path'

可能需要多次初始化才哪成功。每次初始化失敗之后,再次初始化之前一定將datadir目錄下的文件清空干凈

rm ?-rf ?ib*

初始化成功之后,記錄mysqld 生成的root首次登錄的密碼,之后可以重啟mysql ,使用root賬戶登錄,登錄成功無法進(jìn)一步操作,需要修改密碼

alter user 'root'@'localhost' identified by 'your password'

備注:每次操作之后都可以在/var/log/mysql/error.log 看到mysql啟動的日志

也可以查看ubuntu的系統(tǒng)日志/var/log/syslog


[Ubuntu修改MySQL默認(rèn)數(shù)據(jù)庫目錄](http://lizhenliang.blog.51cto.com/7876557/1612778)

[Ubuntu16.04 配置mysql并修改存儲路徑的艱難之旅](http://blog.csdn.net/baiyufairy/article/details/70478611)

[MySQL5.1啟動錯誤:Can’t find messagefile '..errmsg.sys'](http://blog.chinaunix.net/uid-9370128-id-271953.html)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容