2015年5月28日木曜日

PostgreSQL 9.4 デフォルトデータディレクトリの変更 (Debian Jessie)

既存クラスタ(インストール時に作成されたクラスタ)を削除後、デフォルトデータディレクトリのパスを変更して、新規にクラスタを作成し直します。

例として、データディレクトリパスを /home/postgres に変更する場合を取り上げます。

(以下、root 権限での作業です。root になるなり、sudo 使うなりしてください。)





1. PostgreSQL クラスタ完全削除


$ pg_dropcluster --stop 9.4 main


2. データディレクトリ削除


$ rm -rf /var/lib/postgresql


3. データディレクトリのパスを変更


/etc/postgresql-common/createcluster.conf を開いて、data_directory を変更します。


修正箇所:
# Default data directory.
#data_directory = '/var/lib/postgresql/%v/%c'

変更後:
# Default data directory.
data_directory = '/home/postgres/%v/%c'


4. PostgreSQL 新規クラスタ作成


$ cd /home
$ pg_createcluster 9.4 main


5. データディレクトリの所有者とアクセス権の変更


$ # PostgreSQL インスタンス停止
$ /etc/init.d/postgresql stop
[ ok ] Stopping postgresql (via systemctl): postgresql.service.

$ # ディレクトリ移動
$ cd /home

$ # ディレクトリ所有者変更
$ chown -R postgres.postgres postgres/

$ # アクセス権変更
$ chmod 700 postgres/
$ cd postgres/
$ chmod 700 9.4/

$ # PostgreSQL インスタンス起動
$ /etc/init.d/postgresql start
[ ok ] Starting postgresql (via systemctl): postgresql.service.

以上です。


Debian
https://www.debian.org/

PostgreSQL
http://www.postgresql.org/


0 件のコメント:

コメントを投稿

注: コメントを投稿できるのは、このブログのメンバーだけです。