Mysql

MySQL 備份 Cron 作業

  • February 10, 2016

我有一個 cron 作業,通過導出它來備份我的 MySQL 數據庫。該腳本包含完成工作的 root 密碼。

我收到消息:

Using a password on the command line interface can be insecure

當然,這是完全正確的。

原來的腳本是:

mysqldump \
   --single-transaction \
   [more options]
   --user=root \
   --password= … \
> /data/mysql/mysql.sql

我知道如果我有以下內容應該可以工作~/.my.cnf

[client]
user = root
password = …

並省略腳本中的使用者和密碼。但是我收到以下錯誤消息:

mysqldump: Got error: 1045: Access denied for user 'root'@'localhost'
(using password: NO) when trying to connect

這告訴我它不起作用。

顯然我做錯了什麼。有什麼建議麼?

謝謝

所以關於 cron 的一件事就是它就像 env-less。所以它可能不知道 /root/.my.cnf

您可能想嘗試使用以下標誌來指向儲存使用者/密碼的配置的完整路徑

--defaults-file=/root/.my.cnf

引用自:https://serverfault.com/questions/755405