數據庫的安全性無疑很重要,這裏教你們幾招簡單方法提升安全性。mysql
關於 datadir 正確的權限模式是 0750,甚至是 0700。sql
也就是最多隻容許 mysqld 進程屬主用戶及其所在用戶組可訪問,但只有屬主可修改文件。數據庫
最好是直接設置成 0700,相對更安全些,避免數據文件意外泄漏。安全
[yejr@imysql.com]# chown -R mysql.mysql /data/mysql57 [yejr@imysql.com]# chmod 0700 /data/mysql57 [yejr@imysql.com]# ls -la /data/ drwxr-x---. 8 mysql mysql 4096 Feb 14 08:08 mysql57
不少人習慣將 mysql socket文件放在 /tmp 目錄下。socket
尤爲是跑多實例時,/tmp 目錄下可能有 mysql3306.sock、mysql3307.sock、mysql3308.sock 等多個這樣的文件。工具
要注意,mysql.sock 文件默認的權限模式是 0777,也就是任何人都有機會經過 /tmp 目錄下的 socket 文件直接登入 mysql,尤爲是root密碼爲空或弱密碼,而且還容許本地 socket 方式登入時,是個比較危險的安全隱患。spa
所以,咱們強烈建議把 mysql socket 文件放置在每一個實例本身的 datadir 下,而且參考第一條建議,設置正確的權限模式。同時甚至也能夠把 mysql.sock 文件權限模式修改成 0700。code
[yejr@imysql.com]# chmod 0700 /data/mysql57/mysql.sock [yejr@imysql.com]# ls -la /data/mysql57/mysql.sock srwx------. 1 mysql mysql 0 Feb 12 16:00 /data/mysql57/mysql.sock
通常來講,咱們會爲每一個mysql帳戶設置密碼,這樣是安全了,但使用和維護起來就不方便了。進程
每次登入都要輸入密碼,尤爲是調用mysql client工具時,若是直接將密碼寫在client工具的選項裏,則是很是危險的行爲,從歷史命令就能看到密碼了,而且會有相似下面的提示:class