エス技研

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.

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

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

  関連記事

Basic認証の.htaccess、.htpasswd生成ツールと解説

Basic認証を設定する際に必要となる.htaccess、.htpasswdファイルを生成するツール。ID、PASS、.htpasswdへのパスを入力することで編集する情報を生成します。

PHPで特定の日間の日付を for、strtotimeで表示する

ある特定の間の日付の情報を for文、strtotimeを使って作成し、その解説をしています。

路線・駅検索をPHPで実装する方法解説。GoogleMapsの緯度経度から計算し検索
路線・駅検索をPHPで実装する方法解説。GoogleMapsの緯度経度から計算し検索

路線・駅検索の仕組みの構築は大変。登録する側も最寄り駅が多い場合は大変。なので簡易に実装するため緯度経度に基づき直線距離を計算する処理を考案して実装して、その処理を解説。

QRコード作成ライブラリ「cakePHP-QR-Code-Helper」をPHPで使うカスタマイズ
QRコード作成ライブラリ「cakePHP-QR-Code-Helper」をPHPで使うカスタマイズ

CakePHP2用のQRコード作成ライブラリ「cakePHP-QR-Code-Helper」をプレーンのPHPでも使うためのカスタマイズ方法を解説。1ファイルを設置するだけでQRコードが作れるため使い勝手がいい。

複数銘柄を指定して株価チャートを一覧するツール公開

入力銘柄の5日間、3か月間、6か月間、1年間、2年間の株価チャートを一覧表示しますのでチャートで売買判断をするのに最適です。

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

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

ECCUBEでカード決済NGの受注情報をマイページ購入履歴に表示しない方法解説

ECCUBEでカード決済に失敗しても購入履歴一覧に注文情報(受注情報)が表示される問題への対処方法を解説。受注情報レコードの作成の流れとステイタスについても解説。

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

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

SEO対策用タイトル、ディスクリプションの文字数カウントツール

SEO対策に使える文字数カウントツールで文字数の条件の説明も行っています。

JSON形式の値を配列形式に変換・PHPでは json_decode()、json_encode()
JSON形式の値を配列形式に変換・PHPでは json_decode()、json_encode()

JSONとは「JavaScript Object Notation」の略でテキストベースのデータフォーマット。JSONの値をPHPで配列に変換するWebツールの紹介とその処理「json_encode()」「json_decode()」関数の解説。