この記事では、 MySQLのさまざまなバックアップ操作を実行する方法に関するいくつかの実用的な例を示します。 mysqldumpを使用するデータベース コマンドと、 mysqlを使用してそれらを復元する方法も確認します。 およびmysqlimport Linuxのコマンド 。
mysqldump コマンドラインクライアントプログラムであり、ローカルまたはリモートの MySQLをダンプするために使用されます 単一のフラットファイルにバックアップするためのデータベースまたはデータベースのコレクション。
すでにMySQLをお持ちであると想定しています Linuxにインストール 管理者権限を持つシステムであり、 MySQLに関する知識がすでに少しあることを前提としています。 。 MySQLがインストールされていないか、 MySQLに触れていない場合 次に、以下の記事をお読みください。
- MySQLサーバーをRHEL/CentOS 6-5、Fedora17-12にインストールします
- データベース管理用の20のMySQLコマンド
MySQLデータベースをバックアップする方法は?
MySQLのバックアップを取るため 1つまたは複数のデータベースの場合、データベースはデータベースサーバーに存在し、アクセスできる必要があります。コマンドの形式は次のようになります。
# mysqldump -u [username] –p[password] [database_name] > [dump_file.sql]
上記のコマンドのパラメータは次のとおりです。
- [ユーザー名] :有効なMySQLユーザー名。
- [パスワード] :ユーザーの有効なMySQLパスワード。
- [database_name] :バックアップする有効なデータベース名。
- [dump_file.sql] :生成するバックアップダンプファイルの名前。
単一のMySQLデータベースをバックアップする方法
単一のデータベースのバックアップを作成するには、次のコマンドを使用します。このコマンドはデータベースをダンプします[rsyslog ] rsyslog.sqlと呼ばれる単一のダンプファイルへのデータを含む構造 。
# mysqldump -u root -ptecmint rsyslog > rsyslog.sql
複数のMySQLデータベースをバックアップする方法
複数のデータベースのバックアップを取りたい場合は、次のコマンドを実行します。次のコマンド例は、データベースのバックアップを取ります[ rsyslog 、 syslog ]構造とデータをrsyslog_syslog.sqlという単一のファイルにまとめます 。
# mysqldump -u root -ptecmint --databases rsyslog syslog > rsyslog_syslog.sql
すべてのMySQLデータベースをバックアップする方法
すべてのデータベースのバックアップを取りたい場合は、オプション –all-databaseを指定して次のコマンドを使用します 。次のコマンドは、すべてのデータベースとその構造およびデータを all-databases.sqlというファイルにバックアップします。 。
# mysqldump -u root -ptecmint --all-databases > all-databases.sql
MySQLデータベース構造のみをバックアップする方法
データなしでデータベース構造のバックアップのみが必要な場合は、オプション –no-dataを使用します コマンドで。次のコマンドは、データベース[ rsyslogをエクスポートします ]構造 ファイルにrsyslog_structure.sql 。
# mysqldump -u root -ptecmint -–no-data rsyslog > rsyslog_structure.sql
MySQLデータベースデータのみをバックアップする方法
データベースのデータをバックアップするには 構造がない場合のみ、オプション –no-create-infoを使用します コマンドで。このコマンドはデータベース[rsyslog ]データ ファイルにrsyslog_data.sql 。
# mysqldump -u root -ptecmint --no-create-db --no-create-info rsyslog > rsyslog_data.sql
データベースの単一テーブルをバックアップする方法
以下のコマンドを使用すると、データベースの単一のテーブルまたは特定のテーブルのバックアップを取ることができます。たとえば、次のコマンドは wp_postsのバックアップのみを取ります データベースのテーブルwordpress 。
# mysqldump -u root -ptecmint wordpress wp_posts > wordpress_posts.sql
データベースの複数のテーブルをバックアップする方法
データベースから複数または特定のテーブルのバックアップを取りたい場合は、各テーブルをスペースで区切ります。
# mysqldump -u root -ptecmint wordpress wp_posts wp_comments > wordpress_posts_comments.sql
リモートMySQLデータベースをバックアップする方法
次のコマンドは、リモートサーバーのバックアップを取ります[ 172.16.25.126 ]データベース[ギャラリー ]ローカルサーバーに。
# mysqldump -h 172.16.25.126 -u root -ptecmint gallery > gallery.sql
MySQLデータベースを復元する方法
上記のチュートリアルでは、データベース、テーブル、構造、およびデータのみのバックアップを取る方法を説明しました。次に、次の形式を使用してそれらを復元する方法を説明します。
# # mysql -u [username] –p[password] [database_name] < [dump_file.sql]
単一のMySQLデータベースを復元する方法
データベースを復元するには、ターゲットマシンに空のデータベースを作成し、 msyqlを使用してデータベースを復元する必要があります。 指図。たとえば、次のコマンドは rsyslog.sqlを復元します rsyslogにファイルします データベース。
# mysql -u root -ptecmint rsyslog < rsyslog.sql
ターゲットマシンにすでに存在するデータベースを復元する場合は、 mysqlimportを使用する必要があります。 コマンド。
# mysqlimport -u root -ptecmint rsyslog < rsyslog.sql
同様に、データベーステーブル、構造、およびデータを復元することもできます。この記事が気に入ったら、友達と共有してください。