おつかれさまです。Dです。
データベースを操作する際にPHPMyAdminやPHPpgadminなどクライアントソフトがあるかと思います。今回たまたまPgadmin4のインストールを実施するタイミングがあったので、備忘録も含め書いていきます。
まずはサーバー環境
サーバー環境はおなじみのAlmaLinux9です。Pgadmin4はブラウザで操作するソフトになるので、Webサーバー機能は必要になります。今回は既にApacheインストール済みのサーバーで実施していきます。また、PostgreSQLのインストール済みです。
pgadmin4 のインストール
まずはpgadmin4のリポジトリをインストールします。
# dnf install https://ftp.postgresql.org/pub/pgadmin/pgadmin4/yum/pgadmin4-redhat-repo-2-1.noarch.rpm
Last metadata expiration check: 0:49:52 ago on Thu 01 Aug 2024 06:36:14 PM JST.
pgadmin4-redhat-repo-2-1.noarch.rpm 6.0 kB/s | 9.9 kB 00:01
Dependencies resolved.
======================================================================================================================================
Package Architecture Version Repository Size
======================================================================================================================================
Installing:
pgadmin4-redhat-repo noarch 2-1 @commandline 9.9 k
Transaction Summary
======================================================================================================================================
Install 1 Package
Total size: 9.9 k
Installed size: 4.0 k
Is this ok [y/N]: y
Downloading Packages:
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
Preparing : 1/1
Installing : pgadmin4-redhat-repo-2-1.noarch 1/1
Verifying : pgadmin4-redhat-repo-2-1.noarch 1/1
Installed:
pgadmin4-redhat-repo-2-1.noarch
Complete!
次にPgadmin4をインストールします。
# dnf install pgadmin4
Last metadata expiration check: 0:52:28 ago on Thu 01 Aug 2024 06:36:17 PM JST.
Dependencies resolved.
======================================================================================================================================
Package Architecture Version Repository Size
======================================================================================================================================
Installing:
pgadmin4 noarch 8.10-1.el9 pgAdmin4 6.3 k
Installing dependencies:
pgadmin4-desktop x86_64 8.10-1.el9 pgAdmin4 77 M
pgadmin4-server x86_64 8.10-1.el9 pgAdmin4 107 M
pgadmin4-web noarch 8.10-1.el9 pgAdmin4 9.2 k
python3-mod_wsgi x86_64 4.7.1-11.el9 appstream 931 k
Transaction Summary
======================================================================================================================================
Install 5 Packages
Total download size: 185 M
Installed size: 632 M
Is this ok [y/N]: y
Downloading Packages:
(1/5): python3-mod_wsgi-4.7.1-11.el9.x86_64.rpm 6.2 MB/s | 931 kB 00:00
(2/5): pgadmin4-8.10-1.el9.noarch.rpm 5.4 kB/s | 6.3 kB 00:01
(3/5): pgadmin4-web-8.10-1.el9.noarch.rpm 34 kB/s | 9.2 kB 00:00
(4/5): pgadmin4-desktop-8.10-1.el9.x86_64.rpm 6.2 MB/s | 77 MB 00:12
(5/5): pgadmin4-server-8.10-1.el9.x86_64.rpm 5.8 MB/s | 107 MB 00:18
--------------------------------------------------------------------------------------------------------------------------------------
Total 9.9 MB/s | 185 MB 00:18
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
Preparing : 1/1
Running scriptlet: pgadmin4-server-8.10-1.el9.x86_64 1/5
Installing : pgadmin4-server-8.10-1.el9.x86_64 1/5
Installing : pgadmin4-desktop-8.10-1.el9.x86_64 2/5
Running scriptlet: pgadmin4-desktop-8.10-1.el9.x86_64 2/5
Installing : python3-mod_wsgi-4.7.1-11.el9.x86_64 3/5
Installing : pgadmin4-web-8.10-1.el9.noarch 4/5
Installing : pgadmin4-8.10-1.el9.noarch 5/5
Running scriptlet: pgadmin4-8.10-1.el9.noarch 5/5
Verifying : python3-mod_wsgi-4.7.1-11.el9.x86_64 1/5
Verifying : pgadmin4-8.10-1.el9.noarch 2/5
Verifying : pgadmin4-desktop-8.10-1.el9.x86_64 3/5
Verifying : pgadmin4-server-8.10-1.el9.x86_64 4/5
Verifying : pgadmin4-web-8.10-1.el9.noarch 5/5
Installed:
pgadmin4-8.10-1.el9.noarch pgadmin4-desktop-8.10-1.el9.x86_64 pgadmin4-server-8.10-1.el9.x86_64
pgadmin4-web-8.10-1.el9.noarch python3-mod_wsgi-4.7.1-11.el9.x86_64
Complete!
無事にインストール出来てそうですね。
# dnf list --installed | grep pgadmin4
pgadmin4.noarch 8.10-1.el9 @pgAdmin4
pgadmin4-desktop.x86_64 8.10-1.el9 @pgAdmin4
pgadmin4-redhat-repo.noarch 2-1 @@commandline
pgadmin4-server.x86_64 8.10-1.el9 @pgAdmin4
pgadmin4-web.noarch 8.10-1.el9 @pgAdmin4
/usr/pgadmin4/bin/setup-web.shコマンドにて初期セットアップ
「/usr/pgadmin4/bin/setup-web.sh」コマンドで初期セットアップを実施してくれます。1コマンドで済むので結構便利ですね。
# /usr/pgadmin4/bin/setup-web.sh
Setting up pgAdmin 4 in web mode on a Redhat based platform...
Creating configuration database...
pgAdmin 4 - Application Initialisation
======================================
Creating storage and log directories...
Configuring SELinux...
The Apache web server is running and must be restarted for the pgAdmin 4 installation to complete. Continue (y/n)? y
Apache successfully restarted. You can now start using pgAdmin 4 in web mode at http://127.0.0.1/pgadmin4
ここで大きな失態なのですが、一度インストールした際に画面表示を控えておくのを失念していて通常より表示が少ないです。というのもログインするためのメールアドレスとパスワードをここで指定しないといけないのですが、既に指定しているのでapacheの再起動しか走らない状態でした。。
なので誤ったメールアドレスを指定すると、後で管理画面にログインしてユーザーを追加する必要があるのでご注意ください。。
セットアップはここまでで完了です。あとは末尾にしれっとでている「http://127.0.0.1/pgadmin4」がログインのURLなので、「127.0.0.1」のIPアドレスだけインストールしたサーバーのIPアドレスに変更してアクセスしてみましょう。
アクセスすると以下のようなログイン画面になると思います。セットアップシェル時に指定したメールアドレスとパスワードでログインしましょう。
ログインするとこんな感じです。
新しいサーバーを追加ってところからデータベースへの接続情報を設定していきます。
設定する名前はハイパー適当です。「General」の隣の「接続」のところをクリックすると。。
データベースの接続項目ですね。これが大事。データベースが動いているサーバーがPgadmin4を動かすサーバーと同じであれば、localhostでいけるはずです。ただpostgresqlの接続設定は事前にしておかないといけないパターンもあるので、そこはエラーメッセージから調査必要です。。
保存をクリックして問題なければ以下のような表示になります。
せっかくなのでデータベースを作ってみましょう。データベースを右クリックすると以下の感じでいけます。
testで作成します。
正常に作成出来ましたね。
まとめ
SSHしてSQLコマンドでゴリゴリ操作するって人もいると思いますが、こういったGUIで直感的に操作できるソフトも良いですね。興味のある方はインストールして触ってみていただけると嬉しいです。