ServBay ドキュメント:Adminerでデータベースを管理する
概要
ServBayは、macOS向けに設計された強力なローカルWeb開発環境であり、多種のWebサーバーやプログラミング言語ランタイム、データベースシステムを統合しています。これら内蔵データベースの管理を手軽に行うため、ServBayにはAdminer(強力で軽量なデータベース管理ツール)が標準搭載されています。本ドキュメントでは、ServBayに含まれるデータベースへAdminerを使用して接続・管理する方法を解説します。
Adminerとは
Adminerは、PHPで開発されたシングルファイルのデータベース管理ツールで、MySQL、MariaDB、PostgreSQL、SQLite、MongoDBなど多数のデータベースに対応しています。一般的な大規模データベース管理クライアントと比べて、Adminerには次のような特長があります。
- 軽量&シングルファイル: Adminerは1つのPHPファイルのみで成り立ち、面倒なインストール作業なく手軽に利用・展開できます。ServBayにはセットアップ済みで、すぐに使えます。
- マルチデータベース対応: 管理画面から複数種類のデータベースに接続でき、各種のツールを個別に導入・学習する手間を減らせます。
- 直感的なUI: 分かりやすくすっきりした画面設計で、初めて使う方でも迷わず利用を始められます。
- 充実した機能: データベース・テーブル・インデックス・ユーザーの作成/編集/削除、SQLクエリの実行、データのインポート・エクスポートなど、実務に必要な操作はほぼ網羅されています。
ServBayでローカル開発を行う開発者にとって、Adminerは利便性と効率の高いデータベース管理ソリューションとなります。
Adminerへのアクセス
ServBayを起動すると、Adminerも自動起動し、内蔵Webサーバー経由でアクセスできます。下記のURLでアクセスしてください(Adminerファイル名付きのServBay標準ローカルドメインです):
https://servbay.host/adminer.php
ServBayアプリが起動しており、CaddyやNginxなどのWebサーバー、および接続したいデータベースサービスが実行中であることをご確認ください。
ServBayのデータベースに接続する
Adminerのログイン画面は非常にシンプルです。データベースの種類を選択し、サーバーアドレス・ユーザー名・パスワード・(一部データベースでは)データベース名を入力します。ServBay標準で割り当てられたデータベース用ユーザー名とパスワードは、ServBayアプリの「データベース」タブで確認できます。
MariaDB / MySQLに接続する
ServBayには標準でMariaDBまたはMySQLが組み込まれています。Adminerでは通常、「MySQL」タイプを選んで接続します。
- ブラウザでAdminerのURL(
https://servbay.host/adminer.php
)にアクセスします。 - ログイン画面のシステムドロップダウンから「MySQL」を選択。
- サーバー接続情報を入力:
- サーバー:
localhost
、またはServBayが提供するUnixソケットパス/Applications/ServBay/tmp/mysql.sock
を入力。ソケット接続の方が一般的に高速です。 - ユーザー名: ServBayアプリの「データベース」でMariaDB/MySQL用のユーザー名を確認。
- パスワード: 同上、「データベース」の欄で確認。
- データベース: (任意)特定のデータベースを直接指定する場合に入力。空欄のままならサーバーレベルで接続でき、ログイン後にすべてのデータベースを管理できます。
- サーバー:
- 「ログイン」ボタンをクリック。
PostgreSQLに接続する
ServBayはPostgreSQLにも対応しています。Adminerでは「PostgreSQL」タイプを選択します。
- ブラウザでAdminerのURL(
https://servbay.host/adminer.php
)にアクセスします。 - ログイン画面のシステムドロップダウンから「PostgreSQL」を選択。
- サーバー接続情報を入力:
- サーバー:
/Applications/ServBay/tmp
を入力。 - ユーザー名: ServBayアプリの「データベース」でPostgreSQL用のユーザー名を確認。
- パスワード: 同上、「データベース」で確認。
- データベース: 接続したいデータベース名(例:標準の
postgres
や任意の作成済みデータベース)を入力。
- サーバー:
- 「ログイン」ボタンをクリック。
SQLite 3に接続する
ServBayはSQLite 3にも対応しています。SQLiteはデータベースファイルを直接扱うため、ファイルパスを指定します。
- ブラウザでAdminerのURL(
https://servbay.host/adminer.php
)にアクセスします。 - ログイン画面のシステムドロップダウンから「SQLite 3」を選択。
- データベースファイルのパスを指定:
- データベースファイル: SQLiteデータベースファイルのフルパスを入力します。推奨ディレクトリは
/Applications/ServBay/db/sqlite/your_database_name.sqlite
などServBayのデータディレクトリ内です。 - 入力ファイルパスが未作成の場合、Adminerから新規データベース作成が可能です。
- データベースファイル: SQLiteデータベースファイルのフルパスを入力します。推奨ディレクトリは
- 「ログイン」ボタンをクリック。
よく使うデータベース操作
データベースサーバーまたは特定データベースへのログイン後は、Adminerの画面から様々な管理作業が行えます。データベース種類によって画面や機能差分がありますが、基本操作は共通です。
データベースの作成
(MariaDB/MySQL・PostgreSQL向け)
- サーバー(特定データベース選択前)にログイン。
- 左サイドバーもしくは主要画面から「データベースを作成」など類似メニューを選択。
- 新しいデータベース名を入力。
- (必要に応じて)文字セットや照合順序を選択。
- 「保存」または「作成」ボタンをクリック。
(SQLite 3はログイン時、存在しないファイルパス指定=新規データベース作成となります)
テーブルとデータの管理
- ログイン時にデータベースを指定していない場合、管理したいデータベースを選択。
- データベース概要画面で「テーブル作成」ボタンを探す。
- テーブル名と、各カラム(列)の定義:カラム名・データ型・長さ・NULL許可・デフォルト値・インデックス設定(主キー/ユニーク/一般インデックス)等を入力。
- 「保存」で作成。
- テーブル作成後、ナビゲーションや概要画面からそのテーブルを選択。
- 以下の基本操作が可能: *
挿入
: データ行の新規追加。 *選択
: データの閲覧・検索・並べ替え・フィルタリング。 *更新
: 既存データ行の編集。 *削除
: データ行の削除。 *SQLコマンド
: 複雑なクエリや管理操作を直接実行。
SQLコマンドの実行
AdminerのSQLコマンド入力欄では、自由にSQL文を入力し実行できます。高度な操作やデータ取得も柔軟に行えます。
- 操作したいデータベースを選択。
- 「SQLコマンド」または同等の項目をクリック。
- テキストエリアにSQL文を入力。
- 「実行」ボタンを押す。
データのインポート・エクスポート
Adminerはデータベース構造やデータのSQL形式・CSV形式エクスポートのほか、各種形式のインポートにも対応。データ移行やバックアップ、他者とのデータ共有の際に便利です。
- インポート/エクスポートするデータベースやテーブルを選択。
- 「エクスポート」や「インポート」を探してください。
- 画面指示通り、形式やオプションを設定して操作を完了。
データベースの削除
(MariaDB/MySQL・PostgreSQL向け)
- サーバー(特定データベース未指定状態)にログイン。
- データベース一覧から対象のデータベースを選択。
- 「削除」メニューをクリックして確認。この操作は元に戻せず、全データが完全に削除されるのでご注意ください。
(SQLite 3の場合は該当.sqlite
ファイルを直接ファイルシステム上で削除してください)
注意事項
- 認証情報の管理: ServBayから取得した各データベースのユーザー名、およびパスワードは厳重に管理し、他者と共有しないでください。
- ServBayの稼働状況: AdminerはServBayの内蔵Webサーバー経由で動作するため、該当データベースサービスが起動状態である必要があります。AdminerやDBに接続できない場合は、ServBayアプリやCaddy/Nginx、MariaDB/MySQL、PostgreSQL等のソフトが起動しているかご確認を。
- SQLiteファイル置き場: SQLiteデータベースファイルのパスは、ServBayユーザーの読み書き権があるディレクトリ(推奨:
/Applications/ServBay/db/sqlite/
)にしてください。 - パフォーマンス: Adminerは軽量なツールであるため、非常に大きなDBや複雑管理操作には、TablePlus、DBeaver、pgAdminなどフル機能のデスクトップクライアントのほうが高機能・高パフォーマンスの場合があります。
よくある質問 (FAQ)
Q: https://servbay.host/adminer.php
にアクセスできません。どうしたらよいですか?
A: ServBayアプリが実行中であること、CaddyまたはNginxのWebサーバーも起動していることを確認してください。ブラウザ設定によって https://servbay.host
へのアクセスが拒否されていないかもご確認ください。
Q: データベースのユーザー名やパスワードを忘れてしまいました。どこで確認できますか?
A: ServBayアプリの「データベース」タブで、各データベースごとの標準ユーザー名・パスワードをチェックできます。
Q: PostgreSQLに接続する際、サーバーアドレスとポートは何ですか?
A: 通常、サーバーアドレスはlocalhost
、標準ポートは5432
です。ServBay設定でPostgreSQLのリスンアドレス・ポートを確認してください。Unixドメインソケットの場合は/Applications/ServBay/tmp
を入力(注:PostgreSQLでは .sock
拡張子の指定は不要です)。
Q: MariaDB/MySQL接続時、サーバーアドレスとソケットパスの違いは?
A: localhost
は一般的にTCP/IP(標準ポート3306)経由、/Applications/ServBay/tmp/mysql.sock
はUnixドメインソケット接続です。ローカル開発ではソケットのほうが高速・安全なことも多いため、用途に応じて選択してください。
Q: ServBayに標準搭載されていない他のデータベースもAdminerで管理できますか?
A: Adminer自体は多様なDBタイプに対応しています。ServBay外部でMongoDB等をインストール・稼働させている場合でも、ネットワークが接続可能&適切な接続情報があるならAdminer経由でアクセスすることは理論上可能です。ただし、Adminerの主な統合メリットはServBay内蔵DBの簡単管理にあります。
まとめ
Adminerは、ServBayが提供する非常に便利なデータベース管理ツールです。シングルファイルかつ軽量設計、そして複数データベース対応という特徴があり、ローカル開発環境でMariaDB/MySQL、PostgreSQL、SQLiteの管理を大幅に簡単&効率化します。本ドキュメントを参考に、ServBayでのデータベース接続や日常的な操作も、Adminerを使ってスムーズに行えるはずです。