この記事では主にMySQLデータベースのシェルスクリプト自動バックアップに関する関連情報を紹介します Webサイトやアプリケーションのバックグラウンドでデータベースをバックアップする機能ボタンがありますが、手動で実行する必要があります。毎日の自動バックアップの安全な方法が必要です。それが必要な友人は、MySQL データベースの
シェルスクリプト自動バックアップを参照してください
データベースを頻繁にバックアップすることは良い習慣ですが、データベースが破損したり、データ損失は非常に高い 低いですが、このようなことが起こったら、後悔しても仕方がありません。通常、Webサイトやアプリケーションのバックグラウンドにデータベースをバックアップする機能ボタンがありますが、手動で実行する必要があります。安全で自動化された毎日のバックアップ方法が必要です。次のシェル スクリプトを使用すると、Crontab を設定して MySQL データベースを毎日バックアップできます。
#!/bin/bash # 数据库认证 user="" password="" host="" db_name="" # 其它 backup_path="/path/to/your/home/_backup/mysql" date=$(date +"%d-%b-%Y") # 设置导出文件的缺省权限 umask 177 # Dump数据库到SQL文件 mysqldump --user=$user --password=$password --host=$host $db_name > $backup_path/$db_name-$date.sql
上記のスクリプトを通じて、SQL バックアップ ファイルを毎日エクスポートできます。ファイルの名前は、その日の日付に基づいて生成されます。時間が経つと、そのようなファイルが大量に生成されるため、古いバックアップ ファイルを定期的に削除する必要があります。このタスクは、上記のスクリプトの後に追加できます。
# 删除30天之前的就备份文件 find $backup_path/* -mtime +30 -exec rm {} \;
上記のスクリプトを使用しているときに、Crontab が定期的にスクリプトのエクスポートを実行したときはエラーは発生しませんでしたが、コンソールにログインして手動で実行すると、バックアップは成功しました。脚本。その後、Crontab 実行スクリプトにシステム環境情報が不足しており、mysqldump を見つけることができないことが判明しました。修正方法は、mysqldump のフルパスを使用することでした。エラーメッセージが報告されない理由は、mysqldump が エラーメッセージ を stderr に出力するためです。コマンドの最後に「2>&1」を追加するだけで、次のような情報リダイレクト コマンドのエラー メッセージが表示されます:
mysqldump -ujoe -ppassword > /tmp/somefile 2>&1
以上がMySQLデータベースのシェルスクリプト自動バックアップの詳細の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。