当サイト、Codex 日本語版は今後積極的な更新は行わない予定です。後継となる新ユーザーマニュアルは、https://ja.wordpress.org/support/ にあります。
万が一、当サイトで重大な問題を発見した際などは、フォーラムWordSlack #docs チャンネルでお知らせください。</p>

「データベースのバックアップ」の版間の差分

提供: WordPress Codex 日本語版
移動先: 案内検索
(↓WPJ Codex データインポート(おそらく 2005年7月24日 (日) 01:08 Lorelle 版 en:Backing Up Your Database)、リンク調整・カテゴリ追加)
(最新英語版を反映、和訳完了 en:Backing Up Your Database 14:58, 23 April 2016‎ Atachibana版)
 
(2人の利用者による、間の8版が非表示)
1行目: 1行目:
{{Old}}
+
ブログで書きためた大事なデータを守るため、定期的にデータベースのバックアップを取りましょう。また、WordPress をアップグレードする 前にもバックアップを取っておくことをおすすめします。何か問題が生じた場合でも[[データベースの復元|バックアップからデータベースを復元]]できます。
  
'''定期的にあなたのデータベースのバックアップを取りましょう。またプログラムをアップグレードする際にもバックアップを取っておくことが推奨されています。'''
+
MySQL データベースのバックアップを取るには、phpMyAdmin やコマンドライン、各種 GUI ツールの利用など色々な方法があります。また、WordPress 用のプラグインを使えば、管理画面からのバックアップ作成や定期バックアップ取得が行えます。
  
==phpMyAdmin の使い方==
+
<div class="important">
 +
'''注意:''' このページにある手順は投稿、固定ページ、コメントなどを含む WordPress のデータベースをバックアップしますが、サーバー上の画像やテーマファイルなどのファイルやフォルダはバックアップされません。WordPress サイト全体のバックアップについては、[[WordPress のバックアップ]]を参照してください。
 +
</div>
  
[[phpMyAdmin]]/[[:en:phpMyAdmin|en]] とは、あなたのデータベースを操作するためのプログラムの名前です。親切なホスティングサーバにはたいてい付属しています。
+
== cPanel X を使用したバックアップ<span id="Backup_using_cPanel_X"></span> ==
  
このページにある情報は、UNIX上のバージョン 2.5.3 および 2.5.7 pl1 の phpMyAdmin でテストされたものです。<br />
+
cPanel は多くのホスティングサーバーで使用されている管理パネルです。バックアップ機能を使用して MySQL データベースをバックアップできます。ただしフルバックアップは純粋にアーカイブ目的であり、また cPanel を使用して復元できないため取得しないでください。「Download a MySQL Database Backup」にてデータベース名をクリックします。ローカルドライブに *.gz ファイルがダウンロードされます。
(訳註: 訳者の手元には 2.6.2 しかなかったのでそのバージョンでテストしています)
+
 
 +
復元の際に、このファイルを解凍する必要はありません。同じ cPanel プログラムを使用して gz ファイルを指定してアップロードします。アップロードが完了するとブラウザのステータスバーに「dump complete」と表示されます。新しいホストにアップロードする場合は同じユーザー名、パスワードでユーザーを再作成する必要があります。パスワードを変更する場合は、wp-config.php ファイルの対応する箇所も変更してください。
 +
 
 +
== phpMyAdmin の使用<span id="Using_phpMyAdmin"></span> ==
 +
[[phpMyAdmin]] は MySQL データベースを管理するプログラムです。
 +
 
 +
以下の情報は linux 上の MySQL 5.6.28 に接続する phpMyAdmin 4.4.13 で取得、確認しています。
 +
 
 +
[[Image:phpmyadmin_top.jpg||640px|phpMyAdmin 起動画面]]
 +
 
 +
=== 簡易バックアップの手順<span id="Quick_backup_process"></span> ===
 +
 
 +
WordPress データベースに含まれるすべてのテーブルを圧縮せずにバックアップする場合は、簡単な手順で実行できます。この手順で実行されたバックアップを復元する場合、復元先のデータベースは空である必要があります。
  
===バックアップの取り方===
 
 
<ol>
 
<ol>
<li>あなたのサーバの phpMyAdmin にログインします。</li>
+
<li>サーバー上の phpMyAdmin にログインする。</li>
<li>ログイン後のメイン画面から 'データベース' (Image#1) を選びます。</li>
+
<li>左ウィンドウで、WordPress データベースを選択する。ここでは「wp」というデータベースを使っていることとします。</li>
[[Image:podz_backup_1.jpg|thumb|Image#1]]
+
<li>右ウィンドウに WordPress データベースに含まれるテーブルの一覧が表示されます。<br />
<li>あなたのデータベース名をクリックしてください。もし一人で複数のデータベースを持っているなら、WordPress の使っているデータベースを選びます。(Image#2)</li>
+
上のタブメニューで「エクスポート」を選択する。</li>
[[Image:podz_backup_2.jpg|thumb|Image#2]]
+
<li>データベース名をクリックすると、あなたの WordPress データベースに含まれるテーブルの一覧が表示されます。<br />
+
これは無視して、画面上部のタブの中から 'エクスポート' を選んでクリックしてください。(Image#3)</li>
+
[[Image:podz_backup_3.jpg|thumb|Image#3]]
+
<li>エクスポート画面の左上にあるリストボックスを見てください。さきほどあなたが選択したデータベース内のテーブルが全て表示されているはずです。(Image#4)</li>
+
[[Image:podz_backup_4.jpg|thumb|Image#4]]
+
<ul>
+
<li>もしこのデータベースを WordPress 以外のプログラムとも共用している場合には、あなたの WordPress が使っているテーブルだけを選択してください。あなたの wp-config.php 設定ファイル中で table_prefix として指定した文字で始まっているテーブルが、WordPress が使っているテーブルです。</li>
+
<li>WordPress 用のテーブルしかなければ、'全選択' をクリックしてください。</li>
+
</ul>
+
  
<li>'SQL'ラジオボタンをonにしてください。(Image#5)</li>
+
[[Image:phpmyadmin_dbtop.jpg||640px|WordPress のデータベース概観]]
[[Image:podz_backup_5.jpg|thumb|Image#5]]
+
 
 +
<li>「簡易」オプションが選択されていることを確認して、「実行」をクリックする。すべてのテーブルが SQL 形式でエクスポートされます。エクスポートされたファイルを保存してください。</li>
 +
[[Image:phpmyadmin_quick_export.jpg||640px|簡易エクスポート]]
 +
</ol>
 +
 
 +
=== 詳細バックアップの手順<span id="Custom_backup_process"></span> ===
 +
デフォルトの動作を変更するには、カスタムバックアップを選択します。
 +
 
 +
<ol>
 +
<li>上の手順4で、「詳細」オプションを選択する。詳細なオプションが表示されます。</li>
 +
[[Image:phpmyadmin_custom_export.jpg||640px|詳細エクスポート]]
 +
 
 +
<li>「テーブル」セクション</li>
 +
データベース内のすべてのテーブルが選択されています。
 
<ul>
 
<ul>
<li>次に画面右上のSQLオプションのセクションを見てください。</li>
+
<li>データベースを使用する他のプログラムがある場合は WordPress に関連するテーブルのみを選択します。「wp_」または 'wp-config.php' の 'table_prefix' で指定された接頭辞で始まるテーブルが対象です。</li>
<li>次のチェックボックスをチェックしてください: 構造、「DROP TABLE」を追加する、「AUTO_INCREMENT」値を追加する、逆クオートでテーブル名やフィールド名を囲む。</li>
+
<li>WordPress のみをインストールしている場合は、デフォルトのままで構いません。もしも変更した場合は、「全選択」をクリックします。</li>
 
</ul>
 
</ul>
<li>その下側の、データ:、の部分を見てください。</li>
+
 
<ul>
+
<li>「出力」セクション</li>
<li>データ:、のチェックボックスはチェックしますが、その内側のチェックボックスは全てチェックしないままにしておきます。<br />
+
データを圧縮するには、「圧縮」ボックスで「zip形式」または「gzip形式」を選択します。
(訳註:[[:en:WordPress Backups|英語版Codexの別のページ]]では、完全な INSERT 文を作成する、バイナリフィールドは 16 進数を使用する、の二つもチェックするよう指示されています)</li>
+
 
</ul>
+
[[Image:phpmyadmin_export_output.jpg||640px|エクスポート「出力」セクション]]
<li>ファイルで保存する、のチェックボックスをチェックします。ファイル名のテンプレートはそのままで構いません。<br />
+
 
ここでは圧縮について無しを選んでください。</li>
+
<li>「フォーマット」セクション</li>
<li>それでは、実行する、ボタンをクリックしてください。ダウンロードするファイル名の入力プロンプトが表示されるはずです。ファイルを保存してください。(Image#6)<br />
+
「SQL」が選択されていることを確認してください。このオプションでは CSV や他のデータ形式と異なり、一連の SQL コマンドがエクスポートされます。
[[Image:podz_backup_6.gif|thumb|Image#6]]
+
 
データベースのサイズによっては、しばらく時間がかかるかもしれません。</li>
+
<li>「フォーマット特有のオプション」セクション</li>
<li>ダウンロードが完了したら、今度は 'zip方式' のチェックボックスをチェックして、実行する、ボタンをクリックして、次のファイルをダウンロードしてみてください。<br />
+
デフォルトのままで構いません。
このように、お好みに応じて、圧縮フォーマットでバックアップをダウンロードすることもできます。</li>
+
 
注意 - サーバ上のファイルとフォルダ(例えば画像ファイルなど)はこの手順ではバックアップされません - しかしあなたのポストとコメントはこれでバックアップが取れました。</li>
+
[[Image:phpmyadmin_export_formatspecific.jpg||640px|エクスポート「フォーマット特有のオプション」セクション]]
 +
 
 +
<li>「生成オプション」セクション</li>
 +
「DROP TABLE / VIEW / PROCEDURE / FUNCTION / EVENT / TRIGGER コマンドを追加する」オプションを選択します。復元するデータベース上でテーブルを作成する前に、同名のテーブルが存在すれば DROP コマンドでこれを削除します。
 +
 
 +
[[Image:phpmyadmin_export_object.jpg||640px|エクスポート「生成オプション」セクション]]
 +
 
 +
<li>「データ生成オプション(Data creation options)」セクション</li>
 +
デフォルトのままで構いません。
 +
 
 +
[[Image:phpmyadmin_export_data.jpg||640px|エクスポート「データ生成オプション」セクション]]
 +
 
 +
<li>「エンコーディングへの変換」セクション</li>
 +
デフォルトのままで構いません。
 +
 
 +
[[Image:phpmyadmin_export_encoding.jpg||640px|エクスポート「エンコーディングへの変換」セクション]]
 +
 
 +
<li>「実行」をクリックするとダウンロードするファイル名が表示されます。コンピュータにファイルを保存します。<br />
 +
データベースのサイズによってはしばらく時間がかかる場合があります。</li>
 
</ol>
 
</ol>
  
==mysql をコマンドラインから使う場合==
+
'''注意''' - 上の手順では画像を含むファイルやフォルダーはバックアップされていません。WordPress サイトの投稿、固定ページ、コメント、設定などのバックアップは完了しています。
  
データベースのサイズが極端に大きい場合、PHPMyAdmin では扱うことができません。
+
== コマンドラインを使った MySQL/MariaDB の実行<span id="Using_Straight_MySQL/MariaDB_Commands"></span> ==
そのような場合には、直接 mysql を使うとうまくいきます。<br />
+
(訳註: この方法でバックアップを取るには、サーバの shell アカウントが必要です。)
+
  
私が linux (および unix) 上でやっているバックアップ方法:<br />
+
データベースのサイズが極端に大きい場合、PHPMyAdmin では扱うことができません。その場合には、コマンドラインから直接 MySQL/MariaDB を使うとよいでしょう。<br />この方法でバックアップを取るには、サーバーの [[用語集#シェル|shell アカウント]]が必要です。
  
1) データベースの中身をダンプしたいディレクトリに移動します <br />
+
=== データベースのバックアップ ===
<pre>user@linux:~> cd files/blog</pre>
+
<ol>
 +
<li>データベースのバックアップを出力するディレクトリに移動する。</li>
 +
<pre>
 +
user@linux:~> cd files/blog
 +
user@linux:~/files/blog>
 +
</pre>
  
2) mysqldump を動かします (詳しい使い方は man mysqldump するとわかります) <br />
+
<li><code>mysqldump</code> に MySQL サーバー名、ユーザー名、データベース名を指定して実行する。パスワードを入力するプロンプトが表示されます(詳細については <code>man mysqldump</code> を参照してください)。</li>
<pre>user@linux:~/files/blog> mysqldump --add-drop-table
+
-h mysqlのサーバ名 -u mysqlのユーザ名 -p mysqlのパスワード (テーブル名 テーブル名 テーブル名)
+
| bzip2 -c > blog.bak.sql.bz2
+
  
Enter password: (あなたの mysql パスワードを入れてください)
+
;データベース内のすべてのテーブルをバックアップするには:<code>mysqldump --add-drop-table -h MySQLサーバー名 -u MySQLユーザー名 -p MySQLデータベース名</code>
user@linux~/files/blog></pre>
+
  
パイプ記号 | の後の bzip2 -c は、その場で圧縮することを意味します。
+
;いくつかのテーブルを選択してバックアップするには:<code>mysqldump --add-drop-table -h MySQLサーバー名 -u MySQLユーザー名 -p MySQLデータベース名 MySQLテーブル名1 MySQLテーブル名2 MySQLテーブル名3</code>
  
バックアップしたファイルをリストアする方法:<br />
+
:
 +
<pre>
 +
user@linux:~/files/blog> mysqldump --add-drop-table -h db01.example.net -u dbocodex -p wp > blog.bak.sql
 +
Enter password: (パスワードを入力する)
 +
</pre>
  
1) バックアップの .bz2 ファイルを展開します:<br />
+
<li><code>bzip2</code> を使用してバックアップファイルを圧縮する。</li>
<pre>user@linux:~/files/blog> bzip2 -d blog.bak.sql.bz2</pre>
+
<pre>
 +
user@linux:~/files/blog> bzip2 blog.bak.sql
 +
</pre>
 +
</ol>
  
2) 展開したファイルのSQLをmysqlに戻します:<br />
+
上の2つのコマンドは1行で実行できます。
<pre>user@linux:~/files/blog> mysql -h mysqlhostserver -u mysqlusername -p databasename < blog.bak.sql
+
<pre>
Enter password: (あなたの mysql パスワードを入れてください)
+
user@linux:~/files/blog> mysqldump --add-drop-table -h db01.example.net -u dbocodex -p wp | bzip2 -c > blog.bak.sql.bz2
user@linux~/files/blog:> </pre>
+
Enter password: (パスワードを入力する)
 +
</pre>
  
簡単でしょう?
+
パイプ記号 | の後の <code>bzip2 -c</code> はその場で圧縮することを意味し、<code>&gt; blog.bak.sql.bz2</code> は <code>bzip</code> の出力をファイル <code>blog.bak.sql.bz2</code> に保存することを意味します。
  
== WordPress Database Backup Plugin を使う ==
+
bzip2 は .Z、.zip、.gz など他の古い圧縮アルゴリズムよりもほとんどのファイルを効率よく圧縮しますが、圧縮、解凍には[https://ja.wikipedia.org/wiki/Bzip2 比較的時間がかかります]。巨大なデータベースをバックアップする場合には、より高速な gzip を使用してください。
データベースをバックアップするための [[プラグイン|WordPress プラグイン]] を
+
[http://www.skippy.net Skippy] が作ってくれました。
+
[http://redalt.com/downloads/ ここ]からダウンロードできます。
+
  
=== プラグインのインストール ===
+
<pre>
 +
user@linux:~/files/blog> mysqldump --add-drop-table -h db01.example.net -u dbocodex -p wp | gzip > blog.bak.sql.gz
 +
</pre>
  
# [http://redalt.com/downloads/ プラグインをダウンロード] してください。
+
== MySQL Workbench の使用<span id="Using_MySQL_Workbench"></span> ==
# <tt>wp-db-backup.php</tt> をあなたのサーバの <tt>wp-content/plugins</tt> フォルダにアップロードしてください。
+
 
# サーバの <tt>wp-content</tt> フォルダの中に <tt>backup</tt> フォルダを作成してください。
+
[http://dev.mysql.com/downloads/workbench MySQL Workbench] (旧称 My SQL Administrator) は管理操作を実行するプログラムです。MySQL サーバーの構成、状態やパフォーマンスのモニタリング、開始と停止、ユーザーや接続の管理、バックアップの取得と復元、その他、多数の管理タスクを実行できます。
# <tt>backup</tt> フォルダに書き込み権限を与えてください。
+
 
# [[管理パネル]] からプラグインを有効化してください。
+
これらのタスクの大部分は [http://dev.mysql.com/doc/mysql/en/mysqladmin.html '''mysqladmin'''] や [http://dev.mysql.com/doc/mysql/en/mysql.html '''mysql'''] などのコマンドラインインターフェースを使用して実行できますが、MySQL Workbench には次のような利点があります。
 +
 
 +
*GUI (グラフィカルユーザーインターフェース)により、直感的に操作できます。
 +
*MySQLサーバーのパフォーマンス、信頼性、セキュリティに関する重要な設定を分かりやすく概観できます。
 +
*Linux、Windows、MacOS X で使用でき、リモートクライアントからプラットフォームの相違を超えてデータベースをバックアップできます。リモートサーバー上の MySQL データベースに対してアクセス権を持っていれば、書き込み可能などんな場所にでもデータをバックアップできます。
 +
*phpMyAdmin と異なり、バックアップ可能なデータベースの容量制限がありません。
 +
 
 +
以下の情報は linux 上の MySQL 5.6.28 に接続する MySQL Workbench 6.3.6 で取得、確認しています。
 +
 
 +
[[Image:mysql_workbench_top.jpg||640px|MySQL Workbench 起動画面]]
 +
 
 +
=== データベースのバックアップ<span id="Backing_Up_the_Database"></span> ===
 +
ここでは MySQL Workbench のインストール、構成は完了し、ローカルまたはリモートの MySQL データベースサーバーに接続できているものとします。プラットフォームごとのインストール手順については MySQL Workbench のインストールパッケージに付属するドキュメント、または[http://dev.mysql.com/doc/workbench/en/ オンラインドキュメント]を参照してください。
 +
 
 +
<ol>
 +
<li>MySQL Workbench を起動する。</li>
 +
<li>トップページに接続先のサーバーが表示されていればこれをクリックする。またはメニューの「Database」->「Connect Database」をクリックし、必要な情報を入力して「OK」をクリックする。</li>
 +
<li>左ウィンドウの「Data Export」をクリックする。</li>
 +
[[Image:mysql_workbench_export.jpg||640px|Data Export]]
 +
<li>バックアップする WordPress データベースを選択する。</li>
 +
<li>「Export Options」グループで保存先のディレクトリを指定する。ディレクトリには書き込み権限が必要です。</li>
 +
<li>画面右下の「Start Export」をクリックする。</li>
 +
 
 +
[[Image:mysql_workbench_export2.jpg||640px|Data Export データベースの選択]]
 +
 
 +
</ol>
 +
 
 +
=== バックアップの復元<span id="Restoring_From_a_Backup"></span> ===
 +
 
 +
<ol>
 +
<li>MySQL Workbench を起動する。</li>
 +
<li>トップページにインスタンスが接続先のデータベースが表示されていればこれをクリックする。またはメニューの「Database」->「Connect Database」をクリックし、必要な情報を入力して「OK」をクリックする。</li>
 +
<li>左ウィンドウの「Import/Restore」をクリックする。</li>
 +
<li>バックアップファイルを含むフォルダーを指定する。「Import from Dump Project Folder」右側の「...」をクリックし、バックアップを取得したフォルダーを選択して、「Open」をクリックする。</li>
 +
<li>画面右下の「Start Import」をクリックする。データベースの復元が始まります。</li>
 +
 
 +
[[Image:mysql_workbench_import.jpg||640px|Data Import]]
 +
 
 +
</ol>
 +
 
 +
== MySQL 用 GUI ツール<span id="MySQL_GUI_Tools"></span> ==
 +
デスクトップから MySQL データベースの操作ができるソフトウェアは、GUI ツール、GUI クライアントなどと呼ばれています。バックアップの取得以外にも、様々な用途に使えます。詳しくは各ツールのドキュメンテーションをご覧ください。
 +
 
 +
{| class="border"
 +
!名称
 +
!日本語版
 +
!有償版 OS
 +
!無償版 OS
 +
!備考
 +
|-
 +
|[http://www-jp.mysql.com/products/workbench/ MySQL Workbench]
 +
|[http://d.hatena.ne.jp/sakaik/20090504/mywb5112 日本語化用情報]
 +
| -
 +
|Windows/OS X/Linux([http://wb.mysql.com/?page_id=30 詳細])
 +
|MySQL AB 提供<br />[[#Using_MySQL_Workbench|「MySQL Workbench の使用」節]]参照
 +
|-
 +
|[http://sqlmanager.net/en/products/studio/mysql EMS SQL Management Studio for MySQL]
 +
| -
 +
|Windows
 +
| -
 +
|
 +
|-
 +
|[http://www.aquafold.com/ Aqua Data Studio]
 +
|日本語版
 +
|Windows/Mac/Linux
 +
|Windows/Mac/Linux (14日トライアル)
 +
|9言語サポート
 +
|-
 +
|[http://www.navicat.jp/mysql/index.html Navicat for MySQL]
 +
|日本語版
 +
|Windows/Mac/Linux
 +
|Windows/Mac/Linux (14日トライアル)
 +
|8言語サポート
 +
|-
 +
|[http://www.webyog.com/en/ SQLyog]
 +
| -
 +
|Windows
 +
| -
 +
|
 +
|-
 +
|[http://software.dell.com/products/toad-for-mysql/ Toad for MySQL]
 +
| -
 +
| -
 +
|Windows
 +
|
 +
|-
 +
|[http://www.heidisql.com/ HeidiSQL]
 +
| -
 +
| -
 +
|Windows
 +
|
 +
|-
 +
|[http://code.google.com/p/sequel-pro/ Sequel Pro]
 +
| -
 +
| -
 +
|Mac
 +
|CocoaMySQL の後継プロジェクト
 +
|-
 +
|[http://www.araelium.com/querious/ Querious]
 +
| -
 +
| -
 +
|Mac
 +
|
 +
|}
 +
 
 +
 
 +
== WordPress Database Backup プラグインの使用<span id="Using_WordPress_Database_Backup_Plugin"></span> ==
 +
 
 +
[http://www.ilfilosofo.com/blog/wp-db-backup WordPress Database Backup (WP-DB-Backup)] という WordPress データベースバックアップ用プラグインを [http://www.ilfilosofo.com/ Austin Matzko] がメンテナンスしています(原作者は [http://www.skippy.net/ Skippy])。このプラグインは WordPress 2.0 に同梱されていましたが、2.1 以降では取り除かれました。
 +
 
 +
=== プラグインのインストール ===
 +
# [[管理画面]] > [[管理画面#Plugins|プラグイン]] > [[管理画面/プラグイン/新規追加|新規追加]] をクリックし、「WP-DB-Backup」を検索する。
 +
# 「今すぐインストール」をクリックする。
 +
# プラグインを有効化する。
  
 
===バックアップ===
 
===バックアップ===
 +
# [[管理画面]] > [[管理画面#Tools|ツール]] > バックアップ をクリックする。
 +
# 主要な WordPress テーブルは常にバックアップされます。必要であれば「テーブル」セクションでオプションを選択する。<br />
 +
[[Image:wp-db-backup_table.jpg||640px|WordPress Database Backup プラグイン「テーブル」セクション]]
 +
# バックアップ設定を選択する。バックアップはダウンロードするか、メールで送信できる。
 +
# 最後に「バックアップ!」をクリックして、バックアップを実行する。定期バックアップを設定することもできます。<br />
 +
[[Image:wp-db-backup_settings.jpg||640px|WordPress Database Backup プラグイン「設定」セクション]]
 +
 +
=== データの復元<span id="Restoring_the_Data"></span>===
 +
バックアップファイルは標準的な SQL 形式のファイルとなります。 このファイルを使ったサイトの復元(アップロード)の方法については、[[データベースの復元]]を参照してください。
 +
 +
== 関連ページ ==
  
# '''Manage''' > '''Backup''' メニューを選んでください。
+
* [https://ja.wordpress.org/plugins/search.php?q=backup 公式 WordPress.org プラグインリポジトリー内のバックアッププラグイン]
# あなたの <tt>WP</tt> テーブルをバックアップしてください。
+
* [[WordPress のバックアップ]] -- データベースに格納されていない情報(画像、カスタマイズしたテーマなど)のバックアップ方法
バックアップしたファイルは、後からダウンロードするか、あるいはメールであなた宛に送信するか、どちらかを選べます。[http://www.skippy.net/download/plugins/wp-cron/wp-cron-1.2.zip WP-Cron plugin] プラグインを使うと、毎日自動でバックアップを取ることができます。
+
* [[データベースの復元]](リストア) -- 取得したバックアップファイルのデータから WordPress を復元する方法
 +
* [[データベース概要]] -- データベーステーブルと項目の一覧
  
===データのリストア===
+
== 外部資料 ==
  
ファイルはスタンダードな SQL ファイルとして生成されます。 このファイルをどうやってアップロードするかについては、[[Restoring Your Database From Backup]]/[[:en:Restoring Your Database From Backup|en]] を参照してください。
+
;[http://www.odysseygate.com/archives/755 Odysseygate.com &raquo; WordPressサーバー移転まとめ]
 +
:phpMyAdmin を用いたスクリーンショット付きのバックアップ手順(2007年1月)
 +
;[http://www.studio-fix.com/blog/kaoru/2010/02/01/post1027/ スタジオ FIX &raquo; AmazonEC2で、WordPressのMySQLをバックアップ]
 +
:mysql コマンドを使ったバックアップの方法(2010年2月)
 +
* [http://www.narga.net/schedule-backup-wordpress-database/ How to Schedule Daily Backup of WordPress Database]
  
{{原文|Backing Up Your Database|22078}}
+
{{原文|Backing Up Your Database|156782}}<!-- 14:58, 23 April 2016‎ Atachibana版 -->
  
 
[[Category:初心者向けトピック]]
 
[[Category:初心者向けトピック]]
111行目: 280行目:
  
 
[[en:Backing Up Your Database]]
 
[[en:Backing Up Your Database]]
 +
[[ja:データベースのバックアップ]]
 +
[[pt-br:Backups do Banco de Dados]]
 +
[[ru:Создание резервной копии базы данных]]
 +
[[th:แบคอัพเวิร์ดเพรส]]
 +
[[zh-hans:备份数据库]]

2016年4月23日 (土) 17:20時点における最新版

ブログで書きためた大事なデータを守るため、定期的にデータベースのバックアップを取りましょう。また、WordPress をアップグレードする 前にもバックアップを取っておくことをおすすめします。何か問題が生じた場合でもバックアップからデータベースを復元できます。

MySQL データベースのバックアップを取るには、phpMyAdmin やコマンドライン、各種 GUI ツールの利用など色々な方法があります。また、WordPress 用のプラグインを使えば、管理画面からのバックアップ作成や定期バックアップ取得が行えます。

注意: このページにある手順は投稿、固定ページ、コメントなどを含む WordPress のデータベースをバックアップしますが、サーバー上の画像やテーマファイルなどのファイルやフォルダはバックアップされません。WordPress サイト全体のバックアップについては、WordPress のバックアップを参照してください。

cPanel X を使用したバックアップ

cPanel は多くのホスティングサーバーで使用されている管理パネルです。バックアップ機能を使用して MySQL データベースをバックアップできます。ただしフルバックアップは純粋にアーカイブ目的であり、また cPanel を使用して復元できないため取得しないでください。「Download a MySQL Database Backup」にてデータベース名をクリックします。ローカルドライブに *.gz ファイルがダウンロードされます。

復元の際に、このファイルを解凍する必要はありません。同じ cPanel プログラムを使用して gz ファイルを指定してアップロードします。アップロードが完了するとブラウザのステータスバーに「dump complete」と表示されます。新しいホストにアップロードする場合は同じユーザー名、パスワードでユーザーを再作成する必要があります。パスワードを変更する場合は、wp-config.php ファイルの対応する箇所も変更してください。

phpMyAdmin の使用

phpMyAdmin は MySQL データベースを管理するプログラムです。

以下の情報は linux 上の MySQL 5.6.28 に接続する phpMyAdmin 4.4.13 で取得、確認しています。

phpMyAdmin 起動画面

簡易バックアップの手順

WordPress データベースに含まれるすべてのテーブルを圧縮せずにバックアップする場合は、簡単な手順で実行できます。この手順で実行されたバックアップを復元する場合、復元先のデータベースは空である必要があります。

  1. サーバー上の phpMyAdmin にログインする。
  2. 左ウィンドウで、WordPress データベースを選択する。ここでは「wp」というデータベースを使っていることとします。
  3. 右ウィンドウに WordPress データベースに含まれるテーブルの一覧が表示されます。
    上のタブメニューで「エクスポート」を選択する。
  4. WordPress のデータベース概観

  5. 「簡易」オプションが選択されていることを確認して、「実行」をクリックする。すべてのテーブルが SQL 形式でエクスポートされます。エクスポートされたファイルを保存してください。
  6. 簡易エクスポート

詳細バックアップの手順

デフォルトの動作を変更するには、カスタムバックアップを選択します。

  1. 上の手順4で、「詳細」オプションを選択する。詳細なオプションが表示されます。
  2. 詳細エクスポート

  3. 「テーブル」セクション
  4. データベース内のすべてのテーブルが選択されています。

    • データベースを使用する他のプログラムがある場合は WordPress に関連するテーブルのみを選択します。「wp_」または 'wp-config.php' の 'table_prefix' で指定された接頭辞で始まるテーブルが対象です。
    • WordPress のみをインストールしている場合は、デフォルトのままで構いません。もしも変更した場合は、「全選択」をクリックします。
  5. 「出力」セクション
  6. データを圧縮するには、「圧縮」ボックスで「zip形式」または「gzip形式」を選択します。

    エクスポート「出力」セクション

  7. 「フォーマット」セクション
  8. 「SQL」が選択されていることを確認してください。このオプションでは CSV や他のデータ形式と異なり、一連の SQL コマンドがエクスポートされます。

  9. 「フォーマット特有のオプション」セクション
  10. デフォルトのままで構いません。

    エクスポート「フォーマット特有のオプション」セクション

  11. 「生成オプション」セクション
  12. 「DROP TABLE / VIEW / PROCEDURE / FUNCTION / EVENT / TRIGGER コマンドを追加する」オプションを選択します。復元するデータベース上でテーブルを作成する前に、同名のテーブルが存在すれば DROP コマンドでこれを削除します。

    エクスポート「生成オプション」セクション

  13. 「データ生成オプション(Data creation options)」セクション
  14. デフォルトのままで構いません。

    エクスポート「データ生成オプション」セクション

  15. 「エンコーディングへの変換」セクション
  16. デフォルトのままで構いません。

    エクスポート「エンコーディングへの変換」セクション

  17. 「実行」をクリックするとダウンロードするファイル名が表示されます。コンピュータにファイルを保存します。
    データベースのサイズによってはしばらく時間がかかる場合があります。

注意 - 上の手順では画像を含むファイルやフォルダーはバックアップされていません。WordPress サイトの投稿、固定ページ、コメント、設定などのバックアップは完了しています。

コマンドラインを使った MySQL/MariaDB の実行

データベースのサイズが極端に大きい場合、PHPMyAdmin では扱うことができません。その場合には、コマンドラインから直接 MySQL/MariaDB を使うとよいでしょう。
この方法でバックアップを取るには、サーバーの shell アカウントが必要です。

データベースのバックアップ

  1. データベースのバックアップを出力するディレクトリに移動する。
  2. user@linux:~> cd files/blog
    user@linux:~/files/blog>
    
  3. mysqldump に MySQL サーバー名、ユーザー名、データベース名を指定して実行する。パスワードを入力するプロンプトが表示されます(詳細については man mysqldump を参照してください)。
  4. データベース内のすべてのテーブルをバックアップするには
    mysqldump --add-drop-table -h MySQLサーバー名 -u MySQLユーザー名 -p MySQLデータベース名
    いくつかのテーブルを選択してバックアップするには
    mysqldump --add-drop-table -h MySQLサーバー名 -u MySQLユーザー名 -p MySQLデータベース名 MySQLテーブル名1 MySQLテーブル名2 MySQLテーブル名3

    例:

    user@linux:~/files/blog> mysqldump --add-drop-table -h db01.example.net -u dbocodex -p wp > blog.bak.sql
    Enter password: (パスワードを入力する)
    
  5. bzip2 を使用してバックアップファイルを圧縮する。
  6. user@linux:~/files/blog> bzip2 blog.bak.sql
    

上の2つのコマンドは1行で実行できます。

user@linux:~/files/blog> mysqldump --add-drop-table -h db01.example.net -u dbocodex -p wp | bzip2 -c > blog.bak.sql.bz2
Enter password: (パスワードを入力する)

パイプ記号 | の後の bzip2 -c はその場で圧縮することを意味し、> blog.bak.sql.bz2bzip の出力をファイル blog.bak.sql.bz2 に保存することを意味します。

bzip2 は .Z、.zip、.gz など他の古い圧縮アルゴリズムよりもほとんどのファイルを効率よく圧縮しますが、圧縮、解凍には比較的時間がかかります。巨大なデータベースをバックアップする場合には、より高速な gzip を使用してください。

user@linux:~/files/blog> mysqldump --add-drop-table -h db01.example.net -u dbocodex -p wp | gzip > blog.bak.sql.gz

MySQL Workbench の使用

MySQL Workbench (旧称 My SQL Administrator) は管理操作を実行するプログラムです。MySQL サーバーの構成、状態やパフォーマンスのモニタリング、開始と停止、ユーザーや接続の管理、バックアップの取得と復元、その他、多数の管理タスクを実行できます。

これらのタスクの大部分は mysqladminmysql などのコマンドラインインターフェースを使用して実行できますが、MySQL Workbench には次のような利点があります。

  • GUI (グラフィカルユーザーインターフェース)により、直感的に操作できます。
  • MySQLサーバーのパフォーマンス、信頼性、セキュリティに関する重要な設定を分かりやすく概観できます。
  • Linux、Windows、MacOS X で使用でき、リモートクライアントからプラットフォームの相違を超えてデータベースをバックアップできます。リモートサーバー上の MySQL データベースに対してアクセス権を持っていれば、書き込み可能などんな場所にでもデータをバックアップできます。
  • phpMyAdmin と異なり、バックアップ可能なデータベースの容量制限がありません。

以下の情報は linux 上の MySQL 5.6.28 に接続する MySQL Workbench 6.3.6 で取得、確認しています。

MySQL Workbench 起動画面

データベースのバックアップ

ここでは MySQL Workbench のインストール、構成は完了し、ローカルまたはリモートの MySQL データベースサーバーに接続できているものとします。プラットフォームごとのインストール手順については MySQL Workbench のインストールパッケージに付属するドキュメント、またはオンラインドキュメントを参照してください。

  1. MySQL Workbench を起動する。
  2. トップページに接続先のサーバーが表示されていればこれをクリックする。またはメニューの「Database」->「Connect Database」をクリックし、必要な情報を入力して「OK」をクリックする。
  3. 左ウィンドウの「Data Export」をクリックする。
  4. Data Export

  5. バックアップする WordPress データベースを選択する。
  6. 「Export Options」グループで保存先のディレクトリを指定する。ディレクトリには書き込み権限が必要です。
  7. 画面右下の「Start Export」をクリックする。
  8. Data Export データベースの選択

バックアップの復元

  1. MySQL Workbench を起動する。
  2. トップページにインスタンスが接続先のデータベースが表示されていればこれをクリックする。またはメニューの「Database」->「Connect Database」をクリックし、必要な情報を入力して「OK」をクリックする。
  3. 左ウィンドウの「Import/Restore」をクリックする。
  4. バックアップファイルを含むフォルダーを指定する。「Import from Dump Project Folder」右側の「...」をクリックし、バックアップを取得したフォルダーを選択して、「Open」をクリックする。
  5. 画面右下の「Start Import」をクリックする。データベースの復元が始まります。
  6. Data Import

MySQL 用 GUI ツール

デスクトップから MySQL データベースの操作ができるソフトウェアは、GUI ツール、GUI クライアントなどと呼ばれています。バックアップの取得以外にも、様々な用途に使えます。詳しくは各ツールのドキュメンテーションをご覧ください。

名称 日本語版 有償版 OS 無償版 OS 備考
MySQL Workbench 日本語化用情報 - Windows/OS X/Linux(詳細 MySQL AB 提供
「MySQL Workbench の使用」節参照
EMS SQL Management Studio for MySQL - Windows -
Aqua Data Studio 日本語版 Windows/Mac/Linux Windows/Mac/Linux (14日トライアル) 9言語サポート
Navicat for MySQL 日本語版 Windows/Mac/Linux Windows/Mac/Linux (14日トライアル) 8言語サポート
SQLyog - Windows -
Toad for MySQL - - Windows
HeidiSQL - - Windows
Sequel Pro - - Mac CocoaMySQL の後継プロジェクト
Querious - - Mac


WordPress Database Backup プラグインの使用

WordPress Database Backup (WP-DB-Backup) という WordPress データベースバックアップ用プラグインを Austin Matzko がメンテナンスしています(原作者は Skippy)。このプラグインは WordPress 2.0 に同梱されていましたが、2.1 以降では取り除かれました。

プラグインのインストール

  1. 管理画面 > プラグイン > 新規追加 をクリックし、「WP-DB-Backup」を検索する。
  2. 「今すぐインストール」をクリックする。
  3. プラグインを有効化する。

バックアップ

  1. 管理画面 > ツール > バックアップ をクリックする。
  2. 主要な WordPress テーブルは常にバックアップされます。必要であれば「テーブル」セクションでオプションを選択する。

WordPress Database Backup プラグイン「テーブル」セクション

  1. バックアップ設定を選択する。バックアップはダウンロードするか、メールで送信できる。
  2. 最後に「バックアップ!」をクリックして、バックアップを実行する。定期バックアップを設定することもできます。

WordPress Database Backup プラグイン「設定」セクション

データの復元

バックアップファイルは標準的な SQL 形式のファイルとなります。 このファイルを使ったサイトの復元(アップロード)の方法については、データベースの復元を参照してください。

関連ページ

外部資料

Odysseygate.com » WordPressサーバー移転まとめ
phpMyAdmin を用いたスクリーンショット付きのバックアップ手順(2007年1月)
スタジオ FIX » AmazonEC2で、WordPressのMySQLをバックアップ
mysql コマンドを使ったバックアップの方法(2010年2月)

最新英語版: WordPress Codex » Backing Up Your Database最新版との差分