パスワード付きの1つのデータベースでmysqldumpとcronを使用しようとしています

パスワード付きの1つのデータベースでmysqldumpとcronを使用しようとしています

初心者です。cron を使用して mysqldump を取得しようとしていますが、方法がわかりません。問題が 2 つあります。スクリプトにパスワードを追加するにはどうすればよいでしょうか。また、db_backup を保存するフォルダーを設定するにはどうすればよいでしょうか。

今は手動でやっていますが、自動化したいです

私はこれをデータベースが保存されるフォルダから手動で使用し、完璧に動作します

mysqldump -u jv74 -p db_jv74 > db_jv74_bk.sql

答え1

/home/jv74/.my.cnfパスワードの問題の場合は、次の内容のファイルを作成します。

   [client]
   user=myuser
   password=mypassword

適切な権限を付与します:

chmod 600 /home/jv74/.my.cnf

mysqlこれにより、 (およびmysqldump) がパスワードを要求しなくなります。 で実行する場合はcron、オプション ファイルを明示的に指定する必要があります。

mysqldump --defaults-file=/home/jv74/.my.cnf

適切なフォルダへのリダイレクトについては、フルパスを指定します。

mysqldump --defaults-file=/home/jv74/.my.cnf db_jv74 > /path/to/folder/dv_jv74_bk.sql

関連情報