PostgreSQLデータベース作成入門
DBの作成と接続方法
PostgreSQLでのデータベースの作成、接続、削除、基本的な管理操作を解説します。
こんな人向けの記事です
- PostgreSQLでデータベースを作成したい人
- データベースの管理操作を学びたい人
- ユーザーの作成方法を知りたい人
Step 1データベースの階層構造
PostgreSQLのオブジェクト階層は「サーバー」→「データベース」→「スキーマ」→「テーブル」です。通常はプロジェクトごとに別々のデータベースを作成します。
ポイント: 各データベースは物理的に分離されており、異なるデータベース間のテーブルを直接JOINすることはできません。
Step 2データベースの作成
SQL
-- 基本的な作成
CREATE DATABASE mydatabase;
-- オプション付き(日本語対応)
CREATE DATABASE mydatabase
WITH
OWNER = myuser
ENCODING = 'UTF8'
LC_COLLATE = 'ja_JP.UTF-8'
LC_CTYPE = 'ja_JP.UTF-8'
TEMPLATE = template0;
注意: データベース名は小文字、数字、アンダースコアを使用することをお勧めします。
Step 3データベースの管理
SQL
-- データベース一覧の表示
\l
-- 特定のデータベースに接続
\c mydatabase
-- データベースのリネーム
ALTER DATABASE mydatabase RENAME TO newdbname;
-- データベースの削除(元に戻せないので注意)
DROP DATABASE mydatabase;
注意: DROP DATABASEは即座に削除されます。接続中のデータベースは削除できません。
Step 4ユーザー(ロール)の作成
SQL
-- スーパーユーザーの作成
CREATE ROLE myuser WITH LOGIN PASSWORD 'mypassword' SUPERUSER;
-- 一般ユーザーの作成
CREATE ROLE normaluser WITH LOGIN PASSWORD 'userpass' NOSUPERUSER;
-- ユーザー一覧の確認
\du
セキュリティ: 本番環境では最小権限の原則に従い、必要最小限の権限を持つユーザーを作成してください。