Ubuntu 20.04 に PostgreSQL と pgAdmin4 をインストールする

 
よく使うのでメモ
 

PostgreSQL のインストール

 
まずは apt を更新しておいて、それから postgreSQL をインストール。

sudo apt update -y
sudo apt install -y postgresql postgresql-contrib

これでデフォルトのユーザーとデータベースが出来上がってるのでそれを使う。

sudo su - postgres

postgres ユーザーに su したら psqlコマンドを実行してパスワードを変更する。
変更後は quit で終了。

-- psql
ALTER USER postgres WITH PASSWORD 'NEW_PASSWORD';
-- quit

そして peer 認証じゃなくてパスワード認証にするために pg_hba.conf を修正
リモートアクセスも許可したいのでホストを追加

# vim /etc/postgresql/12/main/pg_hba.conf
#local   all             postgres                               peer #これをmd5に変更
local   all             postgres                               md5
host    all             postgres          10.0.0.0/24          md5 #LAN のIPアドレスレンジに合わせて変更

あとは postgresql.conf も修正

# vim /etc/postgresql/12/main/postgresql.conf
listen_addresses = '*' #追加

反映させるために systemctl で postgresql サービスを restart する。

あとは管理ツールのパスを通しておく。
.profile変更後は source コマンドで反映。

# vim ~/.profile
export PATH=$PATH:/usr/lib/postgresql/12/bin
# source ~/.profile

 

pgAdmin4 のインストール

 
apt のリポジトリを追加してからインストール

curl https://www.pgadmin.org/static/packages_pgadmin_org.pub | sudo apt-key add
sudo sh -c 'echo "deb https://ftp.postgresql.org/pub/pgadmin/pgadmin4/apt/$(lsb_release -cs) pgadmin4 main" > /etc/apt/sources.list.d/pgadmin4.list && apt update'
sudo apt install -y pgadmin4

インストールが終わったらセットアップスクリプトを実行

sudo /usr/pgadmin4/bin/setup-web.sh

ログイン用のメアドを入力してパスワードを作成したらセットアップ完了。
これで http://localhost/pgadmin4 にアクセス出来る。

 
おまけ)

WSL2 だと setup-web.sh の最後でエラーが出るが、これは systemctl で apache2 の再起動が出来ないため。
代わりに service で再起動してあげれば良い。

sudo service apache2 restart