1. データをバックアップするためのmysqldumpコマンドMySQL は、コマンドラインからデータベースのデータとファイルをエクスポートするための便利なツール mysqldump を提供しています。コマンドラインからデータベースの内容を直接エクスポートしてダンプすることができます。まず、 mysqldump コマンドの使い方を簡単に見てみましょう。 #MySQLdump よく使われる mysqldump -u root -p --databases database 1 database 2 > xxx.sql 2. 一般的なmysqldump操作の例すべてのデータベースのデータと構造をバックアップする mysqldump -uroot -p123456 -A > /data/mysqlDump/mydb.sql データベース全体の構造をバックアップする(-dパラメータを追加) mysqldump -uroot -p123456 -A -d > /data/mysqlDump/mydb.sql すべてのデータベースデータをバックアップする(-tパラメータを追加) mysqldump -uroot -p123456 -A -t > /data/mysqlDump/mydb.sql 単一のデータベース(データベース名 mydb)のデータと構造をバックアップします。 mysqldump -uroot-p123456 mydb > /data/mysqlDump/mydb.sql 単一データベースの構造をバックアップする mysqldump -uroot -p123456 mydb -d > /data/mysqlDump/mydb.sql 単一のデータベースのバックアップ mysqldump -uroot -p123456 mydb -t > /data/mysqlDump/mydb.sql 複数のテーブルのデータと構造をバックアップします(データと構造を別々にバックアップする方法は上記と同じです) mysqldump -uroot -p123456 mydb t1 t2 > /data/mysqlDump/mydb.sql 複数のデータベースを一度にバックアップする mysqldump -uroot -p123456 --databases db1 db2 > /data/mysqlDump/mydb.sql 3. MySQLバックアップコンテンツを復元する復元には2つの方法があります。1つ目はMySQLコマンドラインで、2つ目はSHELL行を使用して復元を完了することです。 システム コマンド ラインで、次のように入力して復元します。 mysql -uroot -p123456 < /data/mysqlDump/mydb.sql MySQL システムにログインした後、 source コマンドを使用して対応するシステム内のファイルを見つけて復元します。 mysql> ソース /data/mysqlDump/mydb.sql Linux では、通常、実行する必要があるコンテンツを記述するために BASH スクリプトが使用され、crontab コマンドを使用してスケジュールされた時間にコマンドを実行し、自動ログ生成を実現します。 次のコード関数は、MySQL をバックアップし、crontab と組み合わせて、過去 1 か月 (31 日間) の毎日の MySQL データベース レコードをバックアップします。 1. 一定数のバックアップファイルを維持するBASHを書くLinuxでは、viまたはvimを使用してスクリプトの内容を記述し、mysql_dump_script.shという名前を付けます。 #!/bin/bash #バックアップ数を保存し、31日分のデータをバックアップします。数=31 #バックアップ保存パスbackup_dir=/root/mysqlbackup #日付 dd=`日付 +%Y-%m-%d-%H-%M-%S` #バックアップツール tool=mysqldump #ユーザー名 username=root # パスワード password = TankB214 #バックアップするデータベース database_name=edoctor # フォルダーが存在しない場合は作成します if [ ! -d $backup_dir ]; それから mkdir -p $backup_dir; フィ # 書き方の簡単な方法は、mysqldump -u root -p123456 users > /root/mysqlbackup/users-$filename.sql です。 $tool -u $ユーザー名 -p$パスワード $データベース名 > $backup_dir/$データベース名-$dd.sql # バックアップ ログを作成するために書き込みます echo "create $backup_dir/$database_name-$dd.dupm" >> $backup_dir/log.txt #削除する必要があるバックアップを検索します delfile=`ls -l -crt $backup_dir/*.sql | awk '{print $9 }' | head -1` #現在のバックアップ数が$numberより大きいかどうかを判断します count=`ls -l -crt $backup_dir/*.sql | awk '{print $9 }' | wc -l` [ $count -gt $number ]の場合 それから #最も古いバックアップを削除し、バックアップの数だけ残す rm $delfile # 削除ファイルログを書き込みます echo "delete $delfile" >> $backup_dir/log.txt フィ 上記コードの主な意味は次のとおりです。 1. まず、バックアップ 2. 3.削除するファイルを定義する: 4.バックアップの数を定義します。ls 5. ファイルが制限を超えた場合は、最初に作成された 2. crontabを使用して定期的にバックアップスクリプトを実行するLinux では、定期的なタスクは通常、cron デーモン プロセス [ps -ef | grep cron] によって処理されます。 Cron は、コマンド ラインとそれが呼び出される時刻を含む 1 つ以上の構成ファイルを読み取ります。 cron 設定ファイルは「crontab」と呼ばれ、「cron table」の略です。 2.1 CronサービスCron は、人間の介入なしにジョブを実行できる、Liunx のスケジュール実行ツールです。 service crond start //サービスを開始します service crond stop //サービスを終了します service crond restart //サービスを再起動 service crond reload //設定を再読み込みします service crond status //サービスの状態を確認します 2.2crontabの構文
形式は次のとおりです。
2.3 cronスクリプトを作成するステップ 1: cron スクリプト ファイルを作成し、mysqlRollBack.cron という名前を付けます。 15,30,45,59 * * * * echo "xgmtest....." >> xgmtest.txt は、コマンドが 15 分ごとに 1 回実行され、印刷されることを意味します。 ステップ 2:スケジュールされたタスクを追加します。コマンド「crontab crontest.cron」を実行します。終わり ステップ 3: 「crontab -l」を実行して、スケジュールされたタスクが成功したかどうか、または対応する cron スクリプトが /var/spool/cron に生成されたかどうかを確認します。 注:この操作は、新しいcrontabを追加するのではなく、ユーザーのcrontabを直接置き換えます。 スケジュールされたタスク スクリプトを定期的に実行します (最初にシェル スクリプトの実行権限を与えることを忘れないでください) 0 2 * * * /root/mysql_backup_script.sh 次に、crontabコマンドを使用して、定期的にスケジュールされたスクリプトを作成します。 crontab mysqlRollback.cron 次に、次のコマンドを使用して、スケジュールされたタスクが作成されたかどうかを確認します。 4. crontab の使用例を添付します。(1)毎日午前6時 0 6 * * * echo "おはようございます。" >> /tmp/test.txt //注意: echo だけでは、cron がすべての出力を root のメールボックスに電子メールで送信するため、画面に出力が表示されません。 (2)2時間ごと 0 */2 * * * echo "ちょっと休憩しましょう。" >> /tmp/test.txt (3)午後11時から午前8時まで2時間ごと及び午前8時 0 23-7/2,8 * * * echo "良い夢を" >> /tmp/test.txt (4)毎月4日及び毎週月曜日~水曜日の午前11時 0 11 4 * 1-3 コマンドライン (5)1月1日午前4時 0 4 1 1 * コマンドライン SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=root //エラーが発生したりデータが出力された場合、データはこのアカウントに電子メールとして送信されます HOME=/ (6)/etc/cron.hourlyのスクリプトを1時間ごとに実行する 01 * * * * ルート実行部分 /etc/cron.hourly (7)/etc/cron.dailyのスクリプトを毎日実行する 02 4 * * * ルート実行部分 /etc/cron.daily (8)/etc/cron.weeklyのスクリプトを毎週実行する 22 4 * * 0 ルート実行部分 /etc/cron.weekly (9)/etc/cron.monthlyのスクリプトを毎月実行する 42 4 1 * * ルート実行部分 /etc/cron.monthly 注: 「run-parts」パラメータ。このパラメータを削除すると、フォルダ名の代わりに実行するスクリプトの名前を書き込むことができます。 (10)毎日午後4時、5時、6時の5分後、15分後、25分後、35分後、45分後、55分後にコマンドを実行します。 5、15、25、35、45、55、16、17、18 * * * コマンド (11)システムは毎週月曜日、水曜日、金曜日の午後3時にメンテナンスモードに入り、再起動します。 00 15 * * 1,3,5 シャットダウン -r +5 (12)毎時10分と40分に、ユーザーディレクトリでinnd/bbslinコマンドを実行します。 10,40 * * * * innd/bbslink (13)毎時1分にユーザーディレクトリでbin/accountコマンドを実行します。 1 * * * * ビン/アカウント 以下は 1 分ごとのテストのスクリーンショットです。対応するコードは次のとおりです。 * * * * * /root/mysql_backup_script.sh エフェクトのスクリーンショット: これで、MySQL データベースのバックアップをスケジュールするいくつかの方法 (包括的) に関するこの記事は終了です。MySQL データベースのバックアップをスケジュールするいくつかの方法の詳細については、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
>>: Docker で Maven プロジェクトをより速くビルドする
コードをコピーコードは次のとおりです。 <html> <ヘッド> <m...
1. 組み込み関数1. 数学関数ランド()丸め(数値) ceil(数値)階数(数値)ランダム丸め切り...
この記事では、Vueで複数の画像を追加、表示、削除するための具体的なコードを参考までに紹介します。具...
目次1. 遅いクエリSQLを見つけて最適化する方法a. スローログに基づいてスロークエリSQLを見つ...
仕事上の理由により、完全なオンライン化(つまり、すべてのデータがオンラインで完了し、インポートや...
目次挿入バッファとは何ですか?挿入バッファのトリガー条件は何ですか?なぜ一意のインデックスにできない...
コードをコピーコードは次のとおりです。 <!DOCTYPE html PUBLIC "...
目次1. Docker Composeとは何か、インストールして使用する方法2. DOCleverと...
適切な VS Code 拡張機能を Visual Studio に追加すると、開発者としての作業がは...
html ¶ <html></html> html:xml ¶ <ht...
結果: html <nav id="nav-1"> <a cl...
目次質問再生暗黙的な変換要約する参照する質問仕事中、1 つの SQL クエリ ステートメントのみを実...
1. クラスター化インデックステーブル データはインデックスの順序で保存されます。つまり、インデック...
この記事の例では、スライダー検証を実装するためのjsキャンバスの具体的なコードを参考までに共有してい...
フロントエンド開発部門は成長し、スタッフも増加し、技術も向上しています。 CSSer はフロントエン...