mysql バックアップ スクリプトを作成し、7 日間保存します。

mysql バックアップ スクリプトを作成し、7 日間保存します。

スクリプトの要件:

MySQL データベースを毎日バックアップし、スクリプトを 7 日間保存します。

/opt/dbbak ディレクトリに保存されます。

スクリプト名はdatabase_xxxx-xx-xx.sqlです

スクリプトの内容:

#!/bin/bash
NOW="$(日付 +"%Y-%m-%d")" をエクスポートします
DATA_DIR=/opt/dbbak をエクスポートします
/usr/local/ywgh/mysql/bin/mysqldump --opt -uroot –p 'mypassword' ywghblog > $DATA_DIR/ywghblog/ywghblog_$NOW.sql
$DATA_DIR/ywghblog を見つけます -type f -name "*.sql" -mtime +7 -exec rm -rf {} \;

スクリプトの説明:

まず、現在の年、月、日を取得するための変数 NOW を定義します。

ディレクトリ変数DATA_DIRを定義する場合、

次に、mysqldump コマンドを使用して、データベースを指定されたディレクトリにバックアップします。

最後に、find コマンドを使用して、指定されたディレクトリ内の sql ファイルを検索し、7 日以上経過したファイルを削除します。

-mtime +は7日間外のファイルを検索します

-mtime – 7日以内のファイルを検索

-execは次のコマンドを実行します

必要に応じてスクリプトを変更してください。

ナレッジポイント拡張: MYSQL データベース スクリプトの自動バックアップ

vi dbbackup.sh 開いたエディターで、次のように入力します。

#!/bin/bash
/usr/local/mysql/bin/mysqldump -uuser -ppasswd データベース名 > /home/wwwroot/backup/date_$(date '+%Y%m%d').sql

このコマンドは、 mysqldumpを使用してdatabasenameという名前のデータベースを /home/wwwroot/backup/ フォルダーにエクスポートし、date_date.sql という名前を付けることを意味します。-u の後の部分は MySQL ユーザー名、-p の後の部分は MySQL パスワード、databasename はバックアップするデータベースの名前です。これら 3 つを独自の名前に置き換えてください。

権限を変更し、バックアップ スクリプトを実行して、バックアップが成功したかどうかを確認します。

chmod +x dbbackup.sh
sh dbbackup.sh

すべて問題なければ、データを自動的にバックアップするスケジュールされたタスクを作成します。次のコマンドを入力します。

crontab -e

開いたファイルにスケジュールされたタスクを入力します。

56 23 * * * /root/dbbackup.sh

次に、Esc キーを押して :wq と入力し、編集を終了してファイルを保存します。

スケジュールされたタスクが作成されました。毎日 23:56 に dbbackup.sh を実行してデータベースをバックアップします。

要約する

上記は編集者が紹介したMySQLバックアップスクリプトであり、7日間保存されます。皆様のお役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。編集者がすぐに返信します。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。
この記事が役に立ったと思われた方は、ぜひ転載していただき、出典を明記してください。ありがとうございます!

以下もご興味があるかもしれません:
  • Linux サーバーのスクリプトを自動的にバックアップする方法 (mysql、添付ファイルのバックアップ)
  • MySQL のスケジュールされたバックアップ、削除、および回復機能を実装するシェル スクリプト
  • シェル スクリプトを使用して複数の MySQL データベースを毎日自動的にバックアップする方法
  • MySQL 増分バックアップとブレークポイントリカバリスクリプトの例
  • シェルを使用してMySQLデータバックアップスクリプトを作成する
  • mysql バックアップ スクリプト mysqldump の使い方の詳細な説明
  • シェルスクリプトを使用したMySQLデータベースの自動バックアップ
  • MySQL バックアップ スクリプトの書き方

<<:  Linux manコマンドの具体的な使い方

>>:  Linux whatisコマンドの使い方

推薦する

ホバードロップダウンメニューを実装するためのネイティブJS

JS はホバー ドロップダウン メニューを実装します。これは、フロントエンドの面接で遭遇するシナリ...

「MySQL サービスを開始できません エラー 1069」を解決する方法

今日、外出中に同僚から、ウェブサイトのバックエンドにアクセスできないというメッセージが届きました。と...

Vue における nextTick の役割といくつかの簡単な使用シナリオ

目的nextTickの役割といくつかの簡単な使用シナリオを理解する文章その機能は何ですか?遅延コール...

Apache POIの基本的な使い方の詳しい説明

目次基本的な紹介入門テスト (Excel ファイルからのデータの読み取り)ステップ1: Maven座...

vue-cropper を使用して vue で写真をトリミングする方法をご存知ですか?

目次1. インストール: 2. 使用方法: 3. 組み込みメソッド: 4. 使用方法:要約する公式サ...

HTML でのフォームとフォーム送信操作に関する情報のコレクション

ここでは、フォーム要素とフォーム送信に関する知識を紹介します。フォーム要素フォーム要素の DOM イ...

CentOS 6.5 インストール mysql5.7 チュートリアル

1. 新機能MySQL 5.7 はエキサイティングなマイルストーンです。デフォルトの InnoDB ...

MySql バッチに挿入するときにデータの重複を避ける方法

目次序文1. ignore を挿入2. 重複キーの更新時3. を置き換える要約する序文Mysql は...

Element-ui の組み込み 2 つのリモート検索 (ファジークエリ) の使用方法の説明

問題の説明フロントエンドリモート検索やファジークエリと呼ばれる種類のクエリがあります。 Ele.me...

IIS7 IIS8 http は自動的に HTTPS にジャンプします (ポート 80 はポート 443 にジャンプします)

IIS7 では、「URL REWRITE2」疑似静的モジュールがインストールされているかどうかを確...

DockerはClickHouseをインストールし、データテストを初期化します

クリックハウスの紹介ClickHouse は、SQL クエリを使用して分析データ レポートをリアルタ...

さまざまなSQL結合を簡単に学ぶ

SQL JOIN 句は、テーブル間の共通フィールドに基づいて 2 つ以上のテーブルの行を結合するため...

MySQL ツリー構造データベース テーブル設計

目次序文1. 基本データ2. 継承駆動設計3. 左右の値のエンコーディングに基づく設計4. ツリー構...

Linux システムでデプロイメント プロジェクトを設定する方法

1. ファイアウォールの設定を変更し、対応するポートを開きますLinux システムのファイアウォール...

JSON.stringify のさまざまな用途のまとめ

序文json を使用したことがある人なら、オブジェクトを文字列化してからバックエンドに送信するのが一...