MySQL移動(dòng)數(shù)據(jù)目錄出現(xiàn)權(quán)限問題

發(fā)布時(shí)間:2024-01-26
環(huán)境:ubuntu 14.04.4 lts
現(xiàn)象:把/var/lib/mysql下的數(shù)據(jù)文件移動(dòng)到其他目錄下,之后發(fā)現(xiàn)啟動(dòng)mysql報(bào)錯(cuò),并且mysql無(wú)法運(yùn)行。具體的操作如下:
# service mysql stop # mv /var/lib/mysql /data # serivce mysql start報(bào)出的錯(cuò)誤信息為:
170425 9:55:36 [warning] using unique option prefix myisam-recover instead of myisam-recover-options is deprecated and will be removed in a future release. please use the full name instead. 170425 9:55:36 [note] plugin 'federated' is disabled. /usr/sbin/mysqld: can't find file: './mysql/plugin.frm' (errno: 13) 170425 9:55:36 [error] can't open the mysql.plugin table. please run mysql_upgrade to create it. 170425 9:55:36 innodb: the innodb memory heap is disabled 170425 9:55:36 innodb: mutexes and rw_locks use gcc atomic builtins 170425 9:55:36 innodb: compressed tables use zlib 1.2.8 170425 9:55:36 innodb: using linux native aio 170425 9:55:36 innodb: initializing buffer pool, size = 128.0m 170425 9:55:36 innodb: completed initialization of buffer pool 170425 9:55:36 innodb: operating system error number 13 in a file operation. innodb: the error means mysqld does not have the access rights to innodb: the directory. innodb: file name ./ibdata1 innodb: file operation call: 'open'. innodb: cannot continue operation.原因
最初以為是簡(jiǎn)單的權(quán)限問題,就把/data/mysql目錄賦權(quán)給mysql用戶
# chown -r mysql:mysql /data/mysql
但是再次啟動(dòng)mysql后,還是遇到同樣的錯(cuò)誤。上網(wǎng)查了一下,原因是由于現(xiàn)今的linux系統(tǒng)都采用apparmor來(lái)限制文件和目錄的執(zhí)行權(quán)限。
解決辦法
所以需要配置apparmor讓mysqld可以訪問/data/mysql目錄。具體操作如下:
# vi /etc/apparmor.d/usr.sbin.mysqld
在此文件末尾增加你的目錄(可以按照/var/lib/mysql的目錄改)
/usr/sbin/mysqld { #include <abstractions/base> #include <abstractions/nameservice> #include <abstractions/user-tmp> #include <abstractions/mysql> #include <abstractions/winbind> capability dac_override, capability sys_resource, capability setgid, capability setuid, network tcp, /etc/hosts.allow r, /etc/hosts.deny r, /etc/mysql/*.pem r, /etc/mysql/conf.d/ r, /etc/mysql/conf.d/* r, /etc/mysql/*.cnf r, /usr/lib/mysql/plugin/ r, /usr/lib/mysql/plugin/*.so* mr, /usr/sbin/mysqld mr, /usr/share/mysql/ r, /var/log/mysql.log rw, /var/log/mysql.err rw, /var/lib/mysql/ r, /var/lib/mysql/ rwk, /var/lib/mysql-files/ r, /var/lib/mysql-files/ rwk, /var/log/mysql/ r, /var/log/mysql/* rw, /var/run/mysqld/mysqld.pid rw, /var/run/mysqld/mysqld.sock w, /run/mysqld/mysqld.pid rw, /run/mysqld/mysqld.sock w, /sys/devices/system/cpu/ r, # site-specific additions and overrides. see local/readme for details. #include <local/usr.sbin.mysqld> /data/mysql/ r, /data/mysql/ rwk, }如果不寫第一句的/data/mysql/ r,則mysql能啟動(dòng),但是進(jìn)入mysql后輸入命令會(huì)提示下面錯(cuò)誤:
error 1018 (hy000): can't read dir of '.' (errno: 13
上一個(gè):microsoft office已停止工作怎么辦(microsoft office已經(jīng)停止工作)
下一個(gè):這樣恢復(fù)刪除的視頻,如何恢復(fù)手機(jī)刪除的照片和視頻

秀色無(wú)邊韓國(guó)水培花卉 點(diǎn)綴生活浪漫情懷
漢中市鍋爐除焦劑 助燃脫硫劑總代理商
教你最佳沖泡鳳凰單叢茶的方法
事實(shí)婚姻離婚怎么處理
生產(chǎn)、銷售劣藥罪如何量刑?
布爾邏輯運(yùn)算符有哪些?
氣相色譜檢測(cè)儀的氣源準(zhǔn)備及凈化問題
構(gòu)成搶劫槍支罪的要件有哪些?
聯(lián)想筆記本u盤安裝win10系統(tǒng)教程(聯(lián)想筆記本u盤重裝系統(tǒng)win7)
鋼筋電渣壓力焊質(zhì)量檢驗(yàn)具體概念是什么?
十八禁 网站在线观看免费视频_2020av天堂网_一 级 黄 色 片免费网站_绝顶高潮合集Videos