Fedora39 PostgreSQL15 ユーザーを追加して利用する方法


# cat/etc/redhat-release
Fedora release 39 (Thirty Nine)

操作方法
1.任意の PostgreSQL ユーザーを追加して利用するには、同名の OS ユーザーも必要になります。
OS ユーザーを追加する
# useradd fedora

2.PostgreSQL 管理ユーザーで PostgreSQL ユーザーとデータベース追加する

# su - postgres
$ createuser fedora
$ createdb testdb -O fedora

3.データベースのユーザーを確認する

[postgres@localhost ~]$ psql -c "select usename from pg_user;"
 usename
----------
 postgres
 fedora
(2 行)
$ psql -l
                                                            データベース一覧
   名前    |  所有者  | エンコーディング |  照合順序   | Ctype(変換演算子) | ICUロケール | ロケールプロバイダー |     アクセス権限
-----------+----------+------------------+-------------+-------------------+-------------+----------------------+-----------------------
 postgres  | postgres | UTF8             | ja_JP.UTF-8 | ja_JP.UTF-8       |             | libc                 |
 template0 | postgres | UTF8             | ja_JP.UTF-8 | ja_JP.UTF-8       |             | libc                 | =c/postgres          +
           |          |                  |             |                   |             |                      | postgres=CTc/postgres
 template1 | postgres | UTF8             | ja_JP.UTF-8 | ja_JP.UTF-8       |             | libc                 | =c/postgres          +
           |          |                  |             |                   |             |                      | postgres=CTc/postgres
 testdb    | fedora   | UTF8             | ja_JP.UTF-8 | ja_JP.UTF-8       |             | libc                 |
(4 行)

4.テスト DB に接続する

$ psql testdb
psql (15.4)
"help"でヘルプを表示します。

testdb=#

5. ユーザーロール一覧を表示する

\du
                                               ロール一覧
 ロール名 |                                     属性                                     | 所属グループ
----------+------------------------------------------------------------------------------+--------------
 fedora   |                                                                              | {}
 postgres | スーパーユーザー, ロール作成可, DB作成可, レプリケーション可, RLS のバイパス | {}

6.データベース一覧を表示する

# \l
                                                            データベース一覧
   名前    |  所有者  | エンコーディング |  照合順序   | Ctype(変換演算子) | ICUロケール | ロケールプロバイダー |     アクセス権限
-----------+----------+------------------+-------------+-------------------+-------------+----------------------+-----------------------
 postgres  | postgres | UTF8             | ja_JP.UTF-8 | ja_JP.UTF-8       |             | libc                 |
 template0 | postgres | UTF8             | ja_JP.UTF-8 | ja_JP.UTF-8       |             | libc                 | =c/postgres          +
           |          |                  |             |                   |             |                      | postgres=CTc/postgres
 template1 | postgres | UTF8             | ja_JP.UTF-8 | ja_JP.UTF-8       |             | libc                 | =c/postgres          +
           |          |                  |             |                   |             |                      | postgres=CTc/postgres
 testdb    | fedora   | UTF8             | ja_JP.UTF-8 | ja_JP.UTF-8       |             | libc                 |
(4 行)

7.テストテーブルを作成

testdb=# create table test_table (num int, uname text);
CREATE TABLE

8.テーブル一覧を表示する

# \dt
              リレーション一覧
 スキーマ |    名前    |  タイプ  |  所有者
----------+------------+----------+----------
 public   | test_table | テーブル | postgres
(1 行)

9.テストテーブルにテストデータを挿入する

testdb=# insert into test_table (num,uname) values (01,'Fedorass');
INSERT 0 1

10.テーブルのデータを確認する

testdb=# select * from test_table;
num | uname
-----+----------
1 | Fedorass
(1 行)

# テストテーブルを削除

testdb=> drop table test_table;
DROP TABLE

testdb=> \dt
Did not find any relations.

# exit する

testdb=> \q

# テストデータベースを削除

$ dropdb testdb
$ psql -l

 

Fedora 39

Posted by arkgame