1. データのバックアップ 1. mysqldumpコマンドを使用してバックアップする mysqldump コマンドは、データベース内のデータをテキスト ファイルにバックアップします。テーブルの構造とテーブル内のデータは、生成されたテキスト ファイルに保存されます。 mysqldump コマンドの動作原理は単純です。まず、バックアップする必要があるテーブルの構造を検出し、テキスト ファイルに CREATE ステートメントを生成します。次に、テーブル内のすべてのレコードを 1 つの INSERT ステートメントに変換します。次に、これらのステートメントを通じてテーブルを作成し、データを挿入できます。 1. データベースをバックアップする mysqldump の基本構文: mysqldump -u ユーザー名 -p dbname table1 table2 ...-> バックアップ名.sql で: dbname パラメータはデータベースの名前を示します。 table1 および table2 パラメータは、バックアップするテーブルの名前を示します。空白のままにすると、データベース全体がバックアップされます。 ルートユーザーとしてテストデータベースの person テーブルをバックアップします。 mysqldump -u root -p テスト担当者 > D:ackup.sql 生成されたスクリプトは次のとおりです。 ファイルの先頭には、MySQL のバージョン、バックアップ ホスト名、データベース名が記録されます。 ファイル内の「--」で始まるコメントは SQL 言語のコメントであり、「/*!40101」などの形式で始まるコメントは MySQL に関連するコメントです。 40101 は MySQL データベースのバージョン番号です。MySQL バージョンが 1.11 以上の場合には、/*!40101 から */ までの内容が SQL コマンドとして実行されます。4.1.1 未満の場合にはコメントとして扱われます。 2. 複数のデータベースをバックアップする 文法: mysqldump -u ユーザー名 -p --databases dbname2 dbname2 > Backup.sql --databases オプションを追加し、その後に複数のデータベースを指定します。 mysqldump -u root -p --databases テスト mysql > D:ackup.sql 3. すべてのデータベースをバックアップする すべてのデータベースをバックアップするための mysqldump コマンドの構文は次のとおりです。 mysqldump -u ユーザー名 -p -すべてのデータベース > バックアップ名.sql 例: mysqldump -u -root -p -すべてのデータベース > D:all.sql 2. データベースディレクトリ全体を直接コピーする MySQL には、MySQL 内のデータベース ファイルを直接コピーするという非常に簡単なバックアップ方法があります。これは最も簡単で最速の方法です。 ただし、その前に、コピー中にデータベース データが変更されないようにサーバーを停止する必要があります。データベースのレプリケーション プロセス中にデータが書き込まれると、データの不整合が発生します。これは開発環境では問題ありませんが、運用環境でバックアップ サーバーを許可することは困難です。 注意: この方法は、InnoDB ストレージ エンジンを使用するテーブルには適用できませんが、MyISAM ストレージ エンジンを使用するテーブルには便利です。同時に、復元時に MySQL バージョンは同じである必要があります。 3. クイックバックアップにはmysqlhotcopyツールを使用する 名前からホットバックアップであることがわかります。したがって、mysqlhotcopy は MySQL サーバーを停止せずにバックアップをサポートします。さらに、mysqlhotcopy のバックアップ方法は mysqldump よりも高速です。 mysqlhotcopy は、主に Linux システムで使用される Perl スクリプトです。高速バックアップのために、LOCK TABLES、FLUSH TABLES、cp を使用します。 原則: まず、バックアップするデータベースに読み取りロックを追加し、次に FLUSH TABLES を使用してメモリ内のデータをハードディスク上のデータベースに書き戻し、最後に、バックアップするデータベース ファイルをターゲット ディレクトリにコピーします。 コマンドの形式は次のとおりです。 [root@localhost ~]# mysqlhotcopy [オプション] dbname1 dbname2 backupDir/ dbname: データベース名; backupDir: バックアップを保存するフォルダー。 一般的なオプション: --help: mysqlhotcopy ヘルプを表示します。 mysqlhotcopy は mysql に含まれていないため、Perl データベース インターフェイス パッケージをインストールする必要があります。ダウンロード アドレスは次のとおりです: http://dev.mysql.com/downloads/dbi.html 現在、このツールは MyISAM テーブルのみをバックアップできます。 2. データの復元 1. mysqldumpコマンドバックアップを使用してデータベースを復元する 構文は次のとおりです。 mysql -u root -p [dbname] < バックアップ.sq 例: mysql -u ルート -p < C:backup.sql 2. 直接コピーディレクトリのバックアップを復元する この方法で復元する場合は、2 つの MySQL データベースのバージョン番号が同じであることを確認する必要があります。 この関数は MyISAM テーブルには有効ですが、InnoDB テーブルには有効ではありません。InnoDB テーブルのテーブル スペースは直接コピーできません。 要約する 以下もご興味があるかもしれません:
|
>>: Linux の総合システム監視ツール dstat の詳細な例
プロジェクトシナリオプロジェクトの背景全体にカスタム透かしを追加します。透かしのテキスト、フォントの...
この記事では、トランザクション、インデックス、ロックなどの MySQL の知識ポイントの原理と使用法...
カルーセルアニメーションは、ページの外観とインタラクティブなパフォーマンスを向上させることができます...
目次クラス void のポイントES6 矢印関数ヴュートファイvue-cli非同期と同期実行と展開ヒ...
注: このデモはミニプログラム環境でテストされており、他の h5 および pc Web ページにも適...
VirtualBoxのインストールディレクトリを見つけます。ディレクトリ内には容量を拡張するために...
複雑なテーブル構造では、一部のセルが垂直方向に複数のセルにまたがるため、列間属性 COLSPAN を...
目次PagodaをインストールするPythonランタイム環境を構成するPythonをインストールする...
この記事は主に、SQL のストアド プロシージャから返されたデータを取得するプロセスの分析を紹介しま...
目次1. CentOS7.0へのJDK1.8のインストール2. Dockerのインストール3.Doc...
序文:私はずっと、SQL 文がどのように、どのような順序で実行されるのかを知りたいと思っていました。...
序文この記事では、MySQL で特殊文字を使用してデータベース名を作成する方法について説明します。こ...
1. HTML部分 <Col span="2">ファイルをアップロー...
<br />2006年10月12日のNetEaseの新ホームページの公開から、2008年...
環境: 1. CentOS6.5 X64 2.mysql-5.6.34-linux-glibc2.5...