とある日の妄想

- OSX10.3.9にPostgreSQL8.2.4をインストール -

何気ない日常にふと思いついた世迷言をつづるブログ

 

rss

■携帯版はこちら
http://blog.toaruhi.net/m/

携帯サイトQRコード

ブログ内検索

キーワード

 

※検索エンジンで検索した情報が見当たらない場合にご利用ください。

新着記事

カテゴリ一覧

外部リンク

作者について

2007年07月19日(火)
OSX10.3.9にPostgreSQL8.2.4をインストール
DB
OSX版pgAdmin3を使おうとしたんだけどDBにコネクトできない。
PostgreSQLのバージョンが7系だとダメなんかな〜と思い、
8系にうpグレしてみることにした。

7のDBファイルはめんどいので破棄することに。
まぁたいしたDB作ってなかったし。

インストール結果、無事にpgAdminで接続できるようになった。
ばんざい。
ついでにSSLも設定しといた。

■簡易インストールメモ(OSX10.3.9)
※内容については責任を負いませんのでご注意。

適当なサーバからアーカイブを落とし、解凍終わったとこから。
OpenSSLインストール済み。

# cd postgresql-8.2.4
# ./configure --with-perl --with-openssl
# make
# make install

※--with-javaはJDBCドライバが同梱されなくなったため無視されてしまう

・権限変更
# chown -R postgres /usr/local/pgsql

・環境変数設定
# su - postgres
# cd ~/postgres
# vi .tcshrc

↓.tcshrc ファイルに以下の内容を記述↓

setenv POSTGRES_HOME /usr/local/pgsql
setenv PGLIB $POSTGRES_HOME/lib
setenv PGDATA $POSTGRES_HOME/data

setenv PATH ${PATH}:$POSTGRES_HOME/bin

↑.tcshrc ファイルの設定ここまで↑

root権限で/etc/sysctl.confファイルを作り以下を記述。

---- ここから -----

ysv.shmmax=4194304
kern.sysv.shmmin=1
kern.sysv.shmmni=32
kern.sysv.shmseg=8
kern.sysv.shmall=1024

---- ここまで -----
なんかこれやらないとエラーがでてDB起動できない。
記述後、再起動する。

・データベース初期化・起動
# initdb -D $PGDATA --encoding=UTF-8 --no-locale
# pg_ctl -o "-i --silent_mode=true" start

・/etc/hostconfig変更

以下の行を追加(サーバ再起動時自動で起動するように)。
POSTGRESQLSERVER=-YES-

■PostgreSQL SSL設定
posgresqlユーザでログイン

cd /usr/local/pgsql/data

1.openssl req -new -text -out cert.req

Using configuration from /usr/share/ssl/openssl.cnf
Generating a 1024 bit RSA private key
................++++++
.++++++
writing new private key to 'certkey.pem'
Enter PEM pass phrase: password←適当な秘密鍵ファイル用パスワード
Verifying password - Enter PEM pass phrase: password←再入力
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:JA
State or Province Name (full name) [Some-State]:(都道府県名を英語で入力)
Locality Name (eg, city) []:
Organization Name (eg, company) [Internet Widgits Pty Ltd]:(組織名を英語で入力)
Organizational Unit Name (eg, section) []:
Common Name (eg, your name or your server's hostname) []:(サーバのアドレス入力)
Email Address []:(メアド入力)

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:

2.証明書の自己署名
openssl req -x509 -in cert.req -text -key privkey.pem -out server.crt
パスワード入力

3.秘密鍵からのパスワードの削除
openssl rsa -in privkey.pem -out server.key
パスワード入力

4. 権限変更
chmod 400 /usr/local/pgsql/data/server.*

5.postgresql.conf修正

#ssl = off # (change requires restart)

ssl = on # (change requires restart)

#password_encryption = on

password_encryption = on

6.pg_hba.conf修正
次の文を追加
hostssl all all 0.0.0.0/0 md5
(0.0.0.0/0はすべてのIPという意味)

7.DB再起動
pg_ctl stop
pg_ctl "-o -il --silent_mode=true" start

8.ユーザのパスワード設定(ここでは仮にpostgresユーザ)
psql
alter user postgres with password '********';
\q

9.接続確認
psql -h サーバのアドレス -W
パスワード入力

再起動時のため、起動設定を変更

cd /Library/StartUpItems/PostgreSQL
vi PostgreSQL

StartService関数内の該当箇所を以下に変更
sudo -u $PGUSER $DAEMON start -D "$PGDATA" -s -l $PGLOG -o "-il"

RestartService関数内の該当箇所を以下に変更
sudo -u $PGUSER $DAEMON restart -D "$PGDATA" -s -m fast -o "-il"

以上。





トラックバックURL

タグ:

コメントを投稿する

名前
コメント






テクノラティお気に入りに追加する