PostgreSQLスキルアップノート(自己啓発のための個人サイト)

データベースクラスタの作成


【一覧に戻る】



━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■■■■ PostgreSQL スキルアップノート
■■■■
■◆■■ データベースクラスタの作成
■■■■
■■■■
■■■■ 2012/11/27
■■■■ 使用環境:PostgreSQL9.1.4 (CentOS6.2)
                                                                   (C) 2012 ohdb
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
★自己都合により実機確認は9.1、マニュアルへのリンクは9.2としています。ご了承下さい。

【マニュアル】

initdbコマンド→●[マニュアル]



■1■ 概要
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

・データベースクラスタとは、
 「1つのサーバインスタンスで管理されるデータベースの集合」
  ・・・複数のDBの集合体。(それを扱うインスタンスはひとつ)

・initdbによって最初に作成されるDBは3個
  詳細は別資料「データベースクラスタ関連の補足」 を参照。


■2■ PGDATAディレクトリの作成
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

データベースクラスタを収容するディレクトリを作成する。
マニュアルではよく使われる場所「PGDATAの通常の位置」として
/var/lib/pgsql/data が例として記載されている。
→●[マニュアル]

ディレクトリは自由であるが、慣例的なpgsql/dataはそのまま用いて
PGDATA=/db1/pgsql/data 
としてディレクトリを作成する。


【□】 rootユーザにて

【□】 mkdir -p /db1/pgsql/data

【□】 chown -R postgres:postgres /db1

【□】 ls -lR  /db1 


■3■ PGDATA環境変数の設定
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

【□】 postgresユーザにて

【□】 cd;pwd

【□】 vi .bash_profile

    以下を行追加して保存
【□】 export PGDATA=/db1/pgsql/data

【□】 一旦postgresをログアウト


■4■ データベースクラスタの作成(initdb)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

以下によりデータベースクラスタの作成を行う。


【□】 postgresユーザにて

【□】 ls -l /db1/pgsql/data

【□】 initdb --encoding=UTF8 --no-locale /db1/pgsql/data

   最後のディレクトリ指定(-D /directoryでも同義)部分は
   PGDATA環境変数が設定されている場合、本来なくてもよい。


【注意1】指定するエンコーディングはUTF8

データベースのエンコーディングにSJISはない。
PostgreSQLで指定できるデータベースエンコーディングは後述


【注意2】指定するロケールは--no-locale

日本の場合、ロケールの指定は必要がない。
むしろ性能等で問題が発生する可能性があり、
ロケールなしの指定が望ましい。




以上






inserted by FC2 system