Mysql daatabaseを備えたUbuntuサーバーがあります。夜中に別のサーバー(ovhなど)でこのデータベースの自動バックアップを設定したいと思います。
そのための最良のツールは何なのか分かりません。誰かアドバイスがあれば...
前もって感謝します。
このタスクを自動化する最も簡単な方法は、MySQLダンプとcronjobの組み合わせです。このトピックに関する多くの情報は、このサイトおよび他のインターネットサイトで見つけることができますが、完了のためです。
mysqldump.shファイルを作成します
これには、cronジョブでスケジュールするmysqlダンプコマンドが含まれます(ユーザー、パスワード、およびパスを環境に合わせて置き換えます)。
mysqldump -u root -p<mysql_root_password> --all-databases | gzip > /desired/backup/folder/mysqldb_`date +%F`.sql.gz
Edit:スクリプトでバックアップをリモートの場所に保存する場合は、対応するデバイスまたは共有をマウントし、スクリプトでマウントパスを使用します。
スクリプトをテストします
スクリプトに実行権限があることを確認します。
chmod +x /path/to/mysqldump.sh
スクリプトを実行します。
sh /path/to/mysqldump.sh
そして、それが正しく機能していることをテストします(バックアップファイルは指定されたバックアップフォルダーに作成されます)。
新しいcronジョブを作成およびスケジュールします
コマンドプロンプトタイプで
Sudo crontab -e
そして、ファイルの最後に次の行を追加します。
30 23 * * * /path/to/mysqldump.sh
これにより、毎日23:30にスクリプトが実行されます。
この単純なスクリプトを拡張します
この単純なバックアップ方法を改善するためにできることは、文字通りたくさんあります。
ここで終わらせて実験しないでください! :-)
バックアップツールまたはクラウドベースのバックアップサービスを使用します
上記の方法は最も簡単な方法の1つであり、特定のニーズに合わせて拡張できますが、他の選択肢があることに言及する価値があります。
上記のソリューションやサービスとは一切関係がなく、参照用にのみリストしていますので、ご自身の責任で使用してください。
便利なリンク/リファレンス:
Cron-> https://en.wikipedia.org/wiki/Cron
MySQLダンプ-> https://dev.mysql.com/doc/refman/5.7/en/mysqldump.html