エス技研

WordPress、CakePHP、PHP、baserCMSなどの Web系システムを中心に情報を提供します!


AdminerはphpMyAdmin代替のデータベース管理ツール

      2017/03/09

Adminerとは?

 
PHPで書かれているデータベース管理ツールです。
 http://www.adminer.org/
 
この「Adminer」は、PHP 1ファイルでできていて、インストールもファイルを置くだけで動作するという超便利なデータベース管理ツールです。
 
それでいて、MySQLだけでなく、Oracle、PostgreSQL、SQLiteなど多彩なデータベースを管理することができる点がすご過ぎます。
 
画面はシンプルながら、phpMyAdminと比べ軽快に動作しますので、システムの開発、メンテナンス時に一時的に使うツールとしては非常に役に立つのではないでしょうか。
 
というか、機能面でも phpMyAdminとほぼ変わらない機能を実装していますので、一時的な管理ツールとして以外にも普通にシステムの開発を行うにも問題ないでしょう。
対応の言語やエクスポートするフォーマットが少ないと言われていますが、日本語に対応していますし、SQL出力、CSV出力を備えていますので、実務的には困る場面はないのではないのでしょうか。
 
 

WordPressのプラグイン Adminer

 
Adminerは、WordPressのプラグインとして同名のものが用意されています。
WordPressのプラグインとしての「Adminer」については「WordPressのデータベース管理プラグインの決定版!Adminer」に記事を書きましたので、こちらを参照してください。
 
 

Adminerの使い方

 

Adminerの設置の仕方

 
Adminerは、下記の公式サイトからダウンロードできます。
 http://www.adminer.org/
 
PHP 1ファイルがダウンロードされますので、それをサーバにアップするだけで利用できます。
 
アップして、そのファイルの URLを入力するだけで利用できます。
すごく簡単で、感動すら覚えます。
 
 

Adminerのログイン画面

 
20150305_web_01
 
画面を見てもらえば分かりますが、何の問題なく日本語で表示されます。
 
サーバ情報をそれぞれ入力し、「ログイン」をクリックすることでログインできます。
 
 

「セッションの期限切れ。ログインし直してください」のエラー

 
ログインするとき、「セッションの期限切れ。ログインし直してください」のエラーが出てログインできない場合もあります。
そんな場合は、「永続的にログイン」にチェックを入れることでログインできる場合もありますので試してみましょう。
 
 

Adminerの一覧画面

 
20150305_web_02
 
ログインすると上記の通り、テーブルの一覧が表示されます。
 
各メニューも日本語で表示されていますので、メニューや一覧のリンクをクリックして、遷移先の画面見ればだいたいだいたいの使い方は理解できるのではないでしょうか。
 
 


 

Adminerと phpMyAdminの使い方の違ったところ

 
Adminerと phpMyAdminは違うツールですので、使い方は違って当たり前なのですが、個人的にちょっと迷ったところをご紹介しておきます。
 
 

AUTO_INCREMENTの変更

 
「AUTO_INCREMENT」の変更する場所は、phpMyAdminの場合は「テーブルオプション」にあります。
20150305_web_03
 
ですが、Adminerは、ログイン後のテーブル一覧の「連番」の数値をクリックすると、各項目の設定の一覧の下に「連番」という項目で設定が可能です。
 
20150305_web_04
 
20150305_web_05
 
 
また、下記の各テーブルごとの「テーブルの変更」「項目の作成」のリンクから遷移することでも「連番」は設定が可能です。
 
20150305_web_06
 
20150305_web_07
 
ただし、各テーブルごとのページから遷移した場合は、「連番」に現在の値が編集されていないため、初めて使う場合は戸惑う原因になるでしょう。
 
 

データのエクスポート・インポート

 
phpMyAdminの場合は、上部のメニューに「エクスポート」「インポート」のリンクがあり、そこから遷移した画面で処理を行います。
 
Adminerも左上にある「インポート」「エクスポート」のリンクから遷移する画面でそれぞれ処理を行えます。
 
ですが、各テーブルの「データ」の一番下にも「エクスポート」「インポート」のリンクがあり、ここから各テーブル単位の SQL、CSV、TSVのエクスポートが行えます。
ですが、インポートは CSV、TSVしかなく、これまた初めて使う場合は戸惑う原因となるでしょう。
 
20150305_web_08
 
 
あれこれ触ってみれば、そんなところで戸惑ったりしないよ、という声が聞こえてきそうですが...
 
 

Adminerのワンポイントカスタマイズ

 

Adminerのセキュリティ向上

 
Adminerは 1ファイルですので、使用するときにサーバにアップして、使い終わったら削除すると言う運用をする方がセキュリティ的にはベストの方法です。
ですが、その都度サーバにアップするのは面倒ですので、せめて Basic認証を設定しておき、アクセスを制限しておく方がいいでしょう。
 
ファイル単位で Basic認証を設定する場合については「Basic認証をファイル単位・URL単位で設定する方法の解説」に記事を書いていますので参考にしてみて下さい。
 
ファイル単位の方法でない場合は、Adminerを入れるフォルダを作ってそのフォルダに Basic認証を設定しておきましょう。
 
 

Adminerのデザイン変更

 
Adminerのデザインは非常にシンプルですが、これは 1ファイルで動くように設計されているからです。
 
ですが、簡単にデザインを変更することができます。
 
 Adminer公式サイト
 http://www.adminer.org/en/#extras
 
上記の Adminerの公式サイトにデザインを変更するための CSSが用意されていますので、それをダウンロードしてきて Adminerのプログラムがある同じフォルダの中に入れるだけです。
 
それによって多彩なデザインに変更することができます。
 
一時的に使うならデフォルトのデザインのままでもいいでしょうけども、中長期的に使う予定なら、デザインも好みのものに変えて使う方がいいでしょうね。

 - PHP・Smarty・ECCUBE

GoogleAdwords

GoogleAdwords

最後までお読みいただきましてありがとうございます。
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

下記の空欄を埋めてください。 * Time limit is exhausted. Please reload CAPTCHA.

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

※入力いただいたコメントは管理者の承認後に掲載されます。

  関連記事

連想配列のキーも値もまとめてhtmlspecialchars()でサニタイズする関数の作成解説
連想配列のキーも値もまとめてhtmlspecialchars()でサニタイズする関数の作成解説

PHPの配列・連想配列のキーと値をまとめてhtmlspecialchars()関数でサニタイズ(無害化、無毒化)を行う関数を作成。連想配列のキーはarray_map()関数でのサニタイズは無理。

ECCUBE2.13.3で商品規格の在庫数が無制限から変更できないバグがある

2.13.3固有のバグである商品規格の在庫数の入力エリアがアクティブにならない不具合を解消する解説です。product_class.tplの2行を修正するだけの簡単対応です。

PHP range関数を使って階乗と重複組み合わせを計算

PHPの range関数を使って階乗と重複組み合わせを計算し、それを元に乱数発生器を作成しました。

ECCUBEのポイント設定、ポイント付与率を一括で変更する方法解説

ECCUBEの商品個別に設定してあるポイントを一括で変更する方法を解説。ECCUBEには商品個別のポイントを一括して変更する機能がありません。SQLを作成して一括置換!

ECCUBEでアップロードできない。upload_max_filesizeを設定する場所

テンプレートをアップロードする際に発生するエラー「テンプレートファイルがアップロードされていません」の対処方法。これはファイル容量の制限に引っかかっています。

ob_start、ob_get_contents関数でPHPの標準出力をバッファリング・変数に代入

標準出力をバッファリングし変数に代入することができるob_start()関数の解説。include()の処理をバッファリングすることで自由な場所に処理を記述することが可能。

ECCUBEを開発環境から本番ドメインに変更でエラーが・パス変更について

レンタルサーバでサーバ会社から割り当てられたURLで開発し、本番公開時にドメインを当てたらエラーが!そんな場合の対処方法の解説。対処方法は簡単ですが管理画面からは対応不可。

include、requireのパス指定をdirname(__FILE__)、__DIR__と書く理由

include、requireのパスの指定を dirname(__FILE__)、__DIR__で記述する理由に付いて解説。相対パス、絶対パスを直書き、パスを書かない場合は何が問題かを説明。

ファイル変更だけ!ECCUBEの本番から開発環境をコピーする手順を解説

ECCUBEを本番から開発環境をコピーする際の手順を解説。PGMメンテに必要な開発環境を構築する手順を解説。ECCUBEの仕組みは簡単なので作業は5分ほど。

ECCUBEでテンプレートファイルのファイルサイズは10MB以下のものを使用してくださいのエラーが出た場合

テンプレートをアップロードする際にファイルサイズが大きすぎてエラーが表示される際の対処方法解説。パラメータ設定で設定する制限について解説を行っています。