Fedora 35にPostgreSQL 14のデータベースを作成する

環境情報
# cat /etc/redhat-release
Fedora release 35 (Thirty Five)

1.PostgreSQLバージョンを確認します
# psql -V
psql (PostgreSQL) 14.0

2.認証方式を確認します

# grep -v -E "^#|^$" /var/lib/pgsql/data/pg_hba.conf
local   all             all                                     peer
host    all             all             127.0.0.1/32            ident
host    all             all             ::1/128                 ident
local   replication     all                                     peer
host    replication     all             127.0.0.1/32            ident
host    replication     all             ::1/128                 ident

接続ホストを確認します

# grep listen_addresses /var/lib/pgsql/data/postgresql.conf
#listen_addresses = 'localhost'         # what IP address(es) to listen on;

3.OSユーザーを追加します

# useradd arkgame
# passwd arkgame
ユーザー arkgame のパスワードを変更。
新しい パスワード:                   #パスワード入力
新しい パスワードを再入力してください:     #確認パスワード入力
passwd: すべての認証トークンが正しく更新できました。

4.PostgreSQLユーザーとデータベースを追加します

# su - postgres
[postgres@fedora ~]$ createuser arkgame

データベース「sampledb」を作成します
$ createdb sampledb -O arkgame

PostgreSQLユーザーを確認します

$ psql -c "select usename from pg_user;"
 usename
----------
 postgres
 arkgame
(2 行)

データベース一覧を表示します

$ psql -l
                                         データベース一覧
   名前    |  所有者  | エンコーディング |  照合順序   | Ctype(変換演算子) |     アクセス権限
-----------+----------+------------------+-------------+-------------------+-----------------------
 postgres  | postgres | UTF8             | ja_JP.UTF-8 | ja_JP.UTF-8       |
 sampledb  | arkgame  | UTF8             | ja_JP.UTF-8 | ja_JP.UTF-8       |
 template0 | postgres | UTF8             | ja_JP.UTF-8 | ja_JP.UTF-8       | =c/postgres          +
           |          |                  |             |                   | postgres=CTc/postgres
 template1 | postgres | UTF8             | ja_JP.UTF-8 | ja_JP.UTF-8       | =c/postgres          +
           |          |                  |             |                   | postgres=CTc/postgres
(4 行)

5.データベースに接続します

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

ユーザーロール一覧を表示します

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

6.テーブルを作成します

 # create table user_tbl(uid int,username text);
CREATE TABLE

データを挿入します
sampledb=# insert into user_tbl(uid,username) values(11,’yamada’);
INSERT 0 1

データを検索します

sampledb=# select * from user_tbl;
 uid | username
-----+----------
  11 | yamada
(1 行)

テーブルを削除します
# drop table user_tbl;
DROP TABLE
sampledb=# \dt
リレーションが見つかりませんでした。

Fedora 35

Posted by arkgame