MySQL umask 導致備份報錯

來源:互聯網
上載者:User

備份工具僅限於xtrabackup(2.0+)

umask 大家並不陌生,它設定的檔案(目錄)的預設許可權;一般新建立的目錄許可權為755,檔案為644;

但MySQL對於新建立的資料庫目錄的許可權為 700;資料表檔案為660;這可讓我們摸不著頭腦啦。難道MySQL不依賴系統自己設定的值?參考文檔:MySQL UMASK 決定資料庫目錄、檔案許可權是由兩個變數UMASK UMASK_DIR 來決定,UMASK 與 Linux中 umask恰好相反,Linux是規定umask 是許可權的反向掩碼,而UMASK 規定多少其許可權就是多少;

可設定UMASK UMASK_DIR 這兩個選項來設定MySQL建立檔案的預設許可權(需重啟MySQL);

為什麼MySQL要自己控制一些變數,來實現許可權控制(這就不得而知了,可能會安全有關)?

由UMASK 引起的注意事項:

備份:使用xtrabackup 備份的時候,系統使用者如果不是 root 或者mysql,它只備份那些有許可權進入的資料庫目錄,沒有許可權的它還不會報錯,ca(如果備份的第一個資料庫目錄就沒有進入許可權,就會直接報錯)

解決方式:修改資料庫目錄許可權為755,或者更改UMASK_DIR值;

MySQL備份和恢複具體實施

MySQL備份與恢複的三種方法總結

MySQL備份還原(視圖、預存程序)

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.