🐘

ubuntu で postgresql/createuser の存在が・・・

2025/03/03に公開

ubuntu では・・・

FreeBSD であるとか、 ソースコードからコンパイル(縄文時代slackwareが全盛の頃ではソレが普通)すると pg_wrapper などはありませんでした・・・

https://lets.postgresql.jp/documents/tutorial/ubuntu/4

バージョン対応が幅広いのという利点もありながら、ちょっと面倒です。今時は コンテナでやればいいと思うところですが、工夫の一つですね。

何故か createuser が見つからない。

strnh@ubuntu-pc:~/workdir/sample$ createuser
Error: PostgreSQL version 15 is not installed
strnh@ubuntu-pc:~/workdir/sample$ 
  • pg_wrapper (これは perlのスクリプトです)をみても、良く分かりません。

apt にお伺いを立てる。

# >>> apt list | grep postgresql-15                                          
WARNING: apt does not have a stable CLI interface. Use with caution in scripts.
postgresql-15/now 15.7-1.pgdg23.10+1 amd64 [設定が残存]
  • [設定が残存] とは一体何なのでしょうか?

https://yuzutan-hnk.hatenablog.com/entry/2017/03/09/014145

この「設定が残存」があると、再インストール時に --update フラグとかが自動でつけられたりし> て、クリーンインストールはしないようです。

了解。消しましょう。

パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています... 完了        
状態情報を読み取っています... 完了        
'postgresql-15' のバージョン '15.7-1.pgdg23.10+1' ( [amd64]) を選択しました
以下のパッケージは「削除」されます:
  postgresql-15*
アップグレード: 0 個、新規インストール: 0 個、削除: 1 個、保留: 12 個。
この操作後に追加で 0 B のディスク容量が消費されます。
続行しますか? [Y/n] Y
(データベースを読み込んでいます ... 現在 650476 個のファイルとディレクトリがインストールされています。)
postgresql-15 (15.7-1.pgdg23.10+1) の設定ファイルを削除しています ...
Dropping cluster main...
  • このダイアログは「青い画面に赤字」のモーダルなスクリーンが出ます・・・なるほどオプションつけたとしても自動化はしないものかもしれません。

15を消しても !?

strnh@ubuntu-pc:~/workdir/sample$ createuser
Error: PostgreSQL version 14 is not installed

ふぇえ、postgresq14 も残ってましたか。すいません。

$ sudo apt purge postgresql-14/now 
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています... 完了        
状態情報を読み取っています... 完了        
'postgresql-14' のバージョン '14.7-0ubuntu0.22.10.1' ( [amd64]) を選択しました
以下のパッケージは「削除」されます:
  postgresql-14*
アップグレード: 0 個、新規インストール: 0 個、削除: 1 個、保留: 12 個。
この操作後に追加で 0 B のディスク容量が消費されます。
続行しますか? [Y/n] 
  • さっき出た青画面はこんな感じで、また出ますね。
strnh@ubuntu-pc:~/workdir/sample$ createuser
createuser: error: ソケット"/var/run/postgresql/.s.PGSQL.5433"のサーバーへの接続に失敗しました: FATAL:  role "strnh" does not exist
strnh@ubuntu-pc:~/workdir/sample$ 

  • 失敗していますが、デスクトップマシンで 動かしてない+そもそも5433で待ち受けることはしてないので、正しいのでしょう・・・。 デフォルトの設定が 5433になってしまったのは postgresql version 15と 16 でサーバを同時に設定した記憶があり、そのためだと思われます・・・

面倒でも ubuntu/debian に慣れろ

そうですね。詳しくなっておきます。

Discussion