PostgreSQLのインストール
概要:PostgreSQL(ポストグレス、ポスグレ)は、フリー(料金、ライセンス、2次配布)で利用できるオープンソースのオブジェクトリレーショナルデータベース管理システム (ORDBMS)である。 1. PostgreSQLインストール # rpm -qa postgresql* ← postgresqlパッケージの確認。 postgresql-libs-8.1.18-2.el5_4.1 # yum -y install postgresql postgresql-server ← postgresqlのインストール : : ========================================================================================== Package Arch Version Repository Size ========================================================================================== Installing: postgresql i386 8.1.18-2.el5_4.1 updates 2.8 M postgresql-server i386 8.1.18-2.el5_4.1 updates 3.8 M jpackage-utils noarch 1.7.3-1jpp.2.el5 base 61 k libgcj i386 4.1.2-46.el5_4.2 updates 16 M Transaction Summary ========================================================================================== Install 4 Package(s) Update 0 Package(s) Remove 0 Package(s) PostgreSQLをyumでインストールするとPostgreSQL用のスーパーユーザーpostgresが自動的に作成される。このユーザーにはパスワードが設定されてないので、rootからsuしてから使用する。 # id postgres uid=26(postgres) gid=26(postgres) 所属グループ=26(postgres) context=user_u:system_r:unconfined_t # su - postgres -bash-3.2$ 2. PostgreSQLの設定 # ls /etc/init.d/ pand pcscd portmap postgresql psacct マシンを起動したときにPostgreSQLも起動するように設定する。設定は「chkconfig」コマンドで行なう。「on」でマシン起動時に起動するようにし、「--list」で状態を確認する。 # chkconfig postgresql on # chkconfig --list postgresql postgresql 0:off 1:off 2:on 3:on 4:on 5:on 6:off 3. PostgreSQLの起動 # /etc/init.d/postgresql start データベースを初期化中: [ OK ] postgresql サービスを開始中: [ OK ] PostgreSQLに接続する「psql」コマンド を使って、データベースの一覧を表示する。 # su - postgres -bash-3.2$ psql -l List of databases Name | Owner | Encoding -----------+----------+---------- postgres | postgres | UTF8 template0 | postgres | UTF8 template1 | postgres | UTF8 (3 rows) 4. DBオーナーユーザーの作成
5. ログ出力の変更 # ls /var/lib/pgsql/data/pg_log postgresql-Fri.log postgresql-Thu.log しかし、デフォルトの設定では # su - dbowner $ psql postgres postgres=> select * from abc; ERROR: relation "abc" does not exist postgres=> \q の結果 ERROR: relation "abc" does not exist のように記録日時が記述されないので、記録日時が確認できるように設定する。 # vi /var/lib/pgsql/data/postgresql.conf #log_line_prefix = ''
↓
log_line_prefix = '%m %d [%p-%l] '
# /etc/init.d/postgresql reload ← 設定を再読み込みする。
# su - dbowner
$ psql postgres
postgres=> select * from abc;
ERROR: relation "abc" does not exist
postgres=> \q
$ exit
# vi /var/lib/pgsql/data/pg_log/postgresql-Fri.log
2010-04-30 12:11:49.423 JST postgres [3398-1] ERROR: relation "abc" does not exist 6. データベースクラスタの環境変更 $ initdb --pgdata=/home/postgres/data/ --encoding=EUC_JP ポート番号は/home/postgres/data/下に作成されるpostgresql.confの中のportの#を外し変更する。 #port = 5432
↓
port = ポート番号
PostgreSQLを起動時にオプションを付けて起動する。 $ postmaster -p ポート番号 -D /home/postgres/data 上記に応じてマシン起動時にPostgreSQLを起動するスクリプト「/etc/init.d/postgresql」を修正するか、これをコピーしてpostgresql2を作成し修正し、マシン起動時に起動するように設定する。 Last-modified: 2014-03-11 (火) 01:59:57 (3670d)
|