WordPressサイトのバックアップとコピー
WordPressのバックアップ
本サイトでは、WordPressサイトのバックアップと復元は、ターミナルでサーバーに接続し、コマンドでSQLファイルと、WordPressの全ファイルの圧縮ファイルを取り出し、WinSCRというWindows用のフリーソフトを使い、サーバーからファイルをDownLoad、Uploadで行っています。サーバーへの接続はSSH鍵認証を使います。
以下に簡単に概要を記載しました。
バックアップ
1)MySQLのデーターベースのバックアップ
は、まずターミナルでデーターベースにSQL文を発行し、SQLファイルを、/home/user_name/ フォルダに取り出します
# cd /home/user_name/ # mysqldump -h localhost -u root -p --add-drop-table db_name > db_name.sql Enter password: <------DBのrootのpwを入力する # 19MB程度のSQLファイルが直ぐに出力(1〜2秒で)されます ・・・・・phpMyAdminでSQL出力すると結構時間がかかります・・・
2)WordPressインストールフォルダ
をまるごとZipファイルに取り出します(当サイトではサブフォルダにWordPressをインストールしています)
# cd /usr/local/apache2/htdocs/ # zip -r folder_name.zip folder_name # mv folder_name.zip /home/user_name/
3)WicSCRソフトでサーバーのuser_nameフォルダにアクセスし
上記の2つのファイルをバックアップします。
バックアップ先に、db_name.sqlファイルと、WordPressインストールフォルダをまるごとZip圧縮したファイル、folder_name.zipファイルをローカルのバックアップ先にコピーします
この2つのファイルがあると、サーバーが壊れても、新しくOS+LAMP環境に復元できます
WordPressサイトの復元とコピー
サイトの復元
データーベースのインポートと
WordPressのファイルを戻します。
まず、WinSCRでバックアップ先から,SQLファイルと、圧縮したWordPressファイルを、まるごとサーバーの、/home/user_name/ フォルダに転送します。
次の操作をする前提として、空のデーターベースが有る前提です。MySQLにログインして確認が終えているとして記述しています。(同名のデーターベースが有る場合は、既に有るデーターベースをバックアップしておく必要があります。データーが入っている場合は一度DBを削除し、再作成するのが簡単です)
# cd /home/user_name/ # mysql -u root -p db_name < db_name.sql Enter password: <=== パスワードを入力しEnterを押します # WordPressの圧縮ファイルはドキュメントルートに移動します。 # mv folder_name.zip /usr/local/apache2/htdocs/ # cd /usr/local/apache2/htdocs/ # unzip folder_name.zip 念の為、SELINUXのコンテキストを確認します # ls -Z drwxr-xr-x. daemon daemon unconfined_u:object_r:httpd_sys_rw_content_t:s0 folder_name
コンテキストと、ユーザーが上記の通りになっていない場合は、オーナー・グループ、SELINUXのコンテキストを設定します。
WordPressにログインして
続きの作業が必要です
上記の方法では、当サイトのテーマであるCocoon Masterに一度ログインして、Cocoonの設定をし直さないと駄目でした。
元のサイトと異なっているのは、Cocoon設定で行っている、ヘッダー画像、メニューの表示色、カスタマイズで設定する背景画等の設定し直しが必要でした。
もともと、Cocoonのバックアップ機能を使えば、このような事は、必要が無いかも知れませんが、当サイトでのバックアップと復元の方法を紹介しました。
サイトのコピー
サイトを別のFQDNサーバー名にコピーする時は、一度、SQLファイルの内部にある、URL文字(”https://www.exampl.com/”で置換するのがミスが出ないです・・・)を、新しいURLに全置換します。但し、Mourpadを使っている当環境では、全置換した後、置換漏れが、1箇所出るので、再度検索して、当初のURLを検索して、コピー先のURLに変更します。
更に、コピーの場合、WordPressのConfigファイルで設定する、DBの接続ユーザー名、パスワード等の値を、そのサーバーの値に変更する必要が有ります。WordPressのログインID/PWは元のサイトと同じです。
変更後の作業は前述の内容と同様作業で、WordPressのサイトを別のURLのサイトにコピーが出来ます。但し著作権問題は無いことが前提です。