phpMyAdminを使う~DiskStation DS218j

WordPressでホームページを運用するとき、怖いのはサイト構築中のエラーです。

例えば[保存]とか[OK]とかのボタンを押して設定を反映するような場合は、「処理が終了しましたぁ」みたいなメッセージが出るまでページを遷移しないのが原則ですが、勢いでうっかり処理中のウインドウを閉じたりしてしまうとサイトが壊れてしまうことがままあります。最悪の場合、管理画面が真っ白になって頭の中も真っ白、になりかねません。

そこで、プラグインを入れるときとか、大幅にカスタマイズをかけるときなどはバックアップをとってから行うのが定石です。

WordPressはドキュメントルートに配置したデータ類とデータベースから構成されています。データ類はそのままコピーをとるだけでバックアップできますが、データベースはツールかコマンドでダンプしてバックアップをとる必要があります。

Synology DiskStation DS218jでWordPressを構築すると、データベースとしてMySQL互換のMariaDBが使用されます。

WordPressのインストール1~~DiskStation DS218j

WordPressのインストール2~~DiskStation DS218j

MariaDBのデータベースをバックアップするにはWordPressのプラグインを使う方法もありますが、非力なDS218j上で動いているWordPressにあまりたくさんのプラグインを入れたくないので、DSMであらかじめパッケージとして準備されているMySQLデータベース操作ツールの定番”phpMyAdmin”を利用したいと思います。

DSMにログインして[パッケージセンター]を開きます。

phpMyAdminのインストール|DiskStation DS218j

「phpMyAdmin」の[インストール]をクリックします。

phpMyAdminを停止へ|DiskStation DS218j

インストールが終わったら[開く]を押さずに[開く]ボタンの外をクリックします。

ここからちょっとイレギュラーな使い方になります。理由は後程説明します。

phpMyAdminを停止する|DiskStation DS218j

プルダウンメニューを開いて[停止]をクリックします。確認のダイアログが出ますので[はい]をクリックします。

phpMyAdmin停止の確認|DiskStation DS218j

停止完了です。

「何で停止するの?」と思われるかもしれませんが、ちゃんと理由があります。

phpMyAdminはMySQL(MariaDB)のデータベースをGUIで操作するCMSですから、ログインにはユーザー名とパスワードが必要とはいえ、ログイン画面を外部インターネット空間にさらしたくはありません。バックアップを行うのはNOMI自身しかいませんので、自宅内か、自宅にVPN接続をした場合にのみログイン画面が表示されれば十分です。

しかし「phpMyAdminを実行」してしまうと、”http(s)://[ホスト名またはIPアドレス]/phpMyAdmin/”でどこからでもアクセスできてしまうのでちょっと困りものではあります。

もちろん、phpMyAdminそのものの設定を変更して「ローカルIPアドレスからのみアクセスを受け付ける」という制限をかける方法もありますが、それではDSMがphpMyAdminのアップデートを行ってしまうと、せっかく変更した設定が初期化されてしまう恐れがあります。これもうざったいです。

一方phpMyAdminは、常に何かの常駐プログラムを動かしているのではなく、ブラウザからの操作で受動的に動くスクリプトの集まりに過ぎません。

実はDSMで「phpMyAdminを実行する」という設定は、

  • ディレクトリ”/web/phpMyAdmin/”に対して”http(s)://[ホスト名またはIPアドレス]/phpMyAdmin/”でアクセスできるように仮想ホスト機能を有効にしている。

だけですので、phpMyAdminを「停止」してもブラウザから”/web/phpMyAdmin/”にアクセスできればちゃんと使えます。

ということは、ローカル環境からのみアクセス可能なように自分で仮想ホスト機能を作ってあげれば問題は解決という訳です。

Synology DiskStation DS218j, WordPress

Posted by NOMI