OSS-DB PostgreSQL の公式フロントエンドツールには、pgAdmin 3(pgAdmin III)・pgAdmin 4 があります。
数年前から新たに pgAdmin 4 が公式ツールに加わり、代わりに pgAdmin 3 は(近い将来)サポート終了がアナウンスされています。
分かってはいたものの、以前から使っている pgAdmin3 の操作性に慣れてしまっていたため、なかなか切り替えが出来ませんでした。
ただ、今回 PostgreSQL 11 を触る機会があったので一念発起で pgAdmin 4 を導入して使うことにしました。
※何と言っても pgAdmin 3 と平行運用できるうちに慣れないといけませんし。。。
例のごとく、自宅のメイン PC に導入します。
目次
導入環境
- Lubuntu 18.04.3 LTS
- x64
- AMD Athlon 5370 APU - Price performance comparison
導入手順
公式サイト
公式サイトには導入方法が分かりやすく記載されています。
導入の流れ
以下の要領になります。
- curl でレポジトリのキーを登録
- レポジトリを登録
- パッケージリスト更新後、インストール
導入のパターン
公式サイトには、レポジトリ登録方法について複数パターンの導入方法が記載されています。
(/etc/apt/sources.list.d/ 以下にリポジトリ(ソース)を記載する方法)。
- エディタで直接ファイルを作成する
- lsb_release で出力する
- postgresql-common パッケージ導入後、シェルスクリプトで設定する
base on Apt - PostgreSQL wiki
This page was last modified on 5 August 2019, at 17:40.
PostgreSQL packages for Debian and Ubuntu
Currently, we support
- Debian 8 (jessie), 9 (stretch), 10 (buster), 11 (bullseye, amd64/ppc64 only), and unstable (sid)
- Ubuntu 16.04 (xenial), 18.04 (bionic), 19.04 (disco; amd64 only), 19.10 (eoan, amd64 only)
- Architectures: amd64 (64-bit x86), i386 (32-bit x86), ppc64el (little-endian 64-bit POWER)
- PostgreSQL 9.4, 9.5, 9.6, 10, 11, 12 beta, 13 devel
- Server extensions such as Slony-I, various PL languages, and datatypes
- Applications like pgadmin3, pgadmin4, omnidb, pgbouncer, and pgpool-II
Quickstart
Import the repository key from https://www.postgresql.org/media/keys/ACCC4CF8.asc:sudo apt-get install curl ca-certificates gnupg curl https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
Create /etc/apt/sources.list.d/pgdg.list. The distributions are called codename-pgdg. In the example, replace buster with the actual distribution you are using:
/etc/apt/sources.list.d/pgdg.listを作成します。配布はcodename-pgdgと呼ばれます。この例では、busterを実際に使用しているディストリビューションに置き換えます。deb http://apt.postgresql.org/pub/repos/apt/ buster-pgdg main
(You may determine the codename of your distribution by running lsb_release -c). For a shorthand version of the above, presuming you are using a supported release:
(lsb_release -cを実行することにより、ディストリビューションのコードネームを決定できます)。上記のショートハンド(略記)では、サポートされているリリースを指定しなければなりません。sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt/ $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'
Finally, update the package lists, and start installing packages:
最後に、パッケージリストを更新し、パッケージのインストールを開始します。sudo apt-get update sudo apt-get install postgresql-11 pgadmin4
Alternately, this shell script will automate the repository setup. The script is included in the postgresql-common package in Debian and Ubuntu, so you can also run it straight from there:
あるいは、このシェルスクリプトはリポジトリのセットアップを自動化します。このスクリプトはDebianおよびUbuntuのpostgresql-commonパッケージに含まれているため、そこから直接実行することもできます。sudo apt install postgresql-common sudo sh /usr/share/postgresql-common/pgdg/apt.postgresql.org.sh
Note that the shell script leaves the source package repo (deb-src) commented out; if you need source packages, you will need to modify /etc/apt/sources.list.d/pgdg.list to enable it.
シェルスクリプトでは、ソースパッケージリポジトリ(deb-src)はコメント化されたままになっています。ソースパッケージが必要な場合は、/ etc / apt / sources.list.d / pgdg.listを変更して有効にする必要があります。
postgresql-common パッケージのシェルスクリプトを使うパターンですが、なるほど記載がありました。
# cat /usr/share/postgresql-common/pgdg/apt.postgresql.org.sh | grep pgdg.list
SOURCESLIST="/etc/apt/sources.list.d/pgdg.list"
今回は、lsb_release を使って導入します。
なお、lsb とは "Linux Standard Base" の略で、lsb_release コマンドでは当該ディストリビューションの情報を確認することが出来ます。
$ lsb_release --all
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 18.04.3 LTS
Release: 18.04
Codename: bionic
導入
上記を踏まえて、実際に導入していきます。
レポジトリキー
curl はたまにしか使わないので(公式サイトの記述を参考に)wget で取得しました。
$ wget -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
--2019-12-07 15:11:03-- https://www.postgresql.org/media/keys/ACCC4CF8.asc
www.postgresql.org (www.postgresql.org) をDNSに問いあわせています... 2001:4800:3e1:1::230, 2a02:c0:301:0:ffff::32, 2a02:16a8:dc51::50, ...
www.postgresql.org (www.postgresql.org)|2001:4800:3e1:1::230|:443 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 200 OK
長さ: 4812 (4.7K) [text/plain]
`STDOUT' に保存中
- 100%[===================>] 4.70K --.-KB/s 時間 0s
2019-12-07 15:11:04 (277 MB/s) - stdout へ出力完了 [4812/4812]
OK
※wget オプション "-O -"は結果を標準出力に出す引数です。
ソース登録
レポジトリの登録には、前述のとおり lsb_release を使って導入します。
$ sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt/ $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'
※実行環境のディストリビューションを調べて、"/etc/apt/sources.list.d/pgdg.list" を作成しています。
(エディタで追記するよりも、こちらのほうがお手軽です)。
パッケージリスト更新
レポジトリを追加登録したので、パッケージリストを更新しておきます。
$ sudo apt update
pgAdmin 4 インストール
$ sudo apt install pgadmin4
以下のパッケージが新たにインストールされます:
alembic fonts-font-awesome fonts-open-sans fonts-roboto-unhinted
libjs-sphinxdoc libjs-underscore pgadmin4 pgadmin4-common pgadmin4-doc
python-babel-localedata python3-alembic python3-babel python3-blinker
python3-click python3-colorama python3-crypto python3-flask
python3-flask-babelex python3-flask-compress python3-flask-gravatar
python3-flask-htmlmin python3-flask-login python3-flask-mail
python3-flask-migrate python3-flask-paranoid python3-flask-principal
python3-flask-security python3-flask-sqlalchemy python3-flaskext.wtf
python3-htmlmin python3-itsdangerous python3-jinja2 python3-mako
python3-markupsafe python3-openssl python3-paramiko python3-passlib
python3-psutil python3-psycopg2 python3-pyasn1 python3-pyinotify
python3-sqlalchemy python3-sqlparse python3-sshtunnel python3-werkzeug
python3-wtforms
アップグレード: 0 個、新規インストール: 46 個、削除: 0 個、保留: 0 個。
起動方法
デスクトップにアイコン「pgAdmin4」が作成されます。
pgAdmin 4 はブラウザベースとなっており、ダブルクリックで実行するとデフォルトブラウザで起動します。
※もちろん、他のブラウザからも使用できます。
注意点
上記、公式サイトの記載ではリポジトリ(pgdg.list)の記載が "buster" となっています。
(今回は lsb_release コマンドを使ったので、この記載は直接関係ありませんが・・・)。
deb http://apt.postgresql.org/pub/repos/apt/ buster-pgdg main
※buster は Debian 10 のコードネームです。
Ubuntu で使う場合は(例えば 最新 LTS なら)以下のようになります。
deb http://apt.postgresql.org/pub/repos/apt/ bionic-pgdg main
※bionic は Ubuntu 18.04 LTS のコードネームです。