Linux Memo/Postgresql+Perl Module
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
]
開始行:
*postgres7.4.x+Perl Moduleのインストール [#qd46c569]
RIGHT:更新日&lastmod();
[[ここ:http://www.postgresql.org/]]からPostgresqlを、 [[...
**postgres7.4.xのインストール [#b21ca4d5]
事前にpostgresというユーザを作成。
vine3.0ではreadline-devel-4.3-5vl1.i386.rpmがインストール...
インストールする
$ tar zxvf postgresql-7.4.1.tar.gz
$ cd postgresql-7.4.1
$ ./configure --enable-multibyte=EUC_JP --enable-syslog ...
--with-openssl <-sslを有効にする
(8.2では--enable-multibyte=EUC_JP --enable-syslogのオプ...
$ make
$ su
# make install
# chown -R postgres.postgres /usr/local/pgsql
postgresの.bash_profileに
# PostgreQSL
export PATH="$PATH":/usr/local/pgsql/bin
export POSTGRES_HOME=/usr/local/pgsql
export PGLIB=$POSTGRES_HOME/lib
export PGDATA=$POSTGRES_HOME/data
export MANPATH="$MANPATH":POSTGRES_HOME/man
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH":"$PGLIB"
を追加。
$ source .bash_profile
$ initdb
(8.2ではここで文字コードを指定
$ initdb --encoding=EUC_JP
The files belonging to this database system will be owne...
This user must also own the server process.
The database cluster will be initialized with locale ja_...
creating directory /usr/local/pgsql/data ... ok
creating subdirectories ... ok
selecting default max_connections ... 100
selecting default shared_buffers/max_fsm_pages ... 24MB/...
creating configuration files ... ok
creating template1 database in /usr/local/pgsql/data/bas...
initializing pg_authid ... ok
initializing dependencies ... ok
creating system views ... ok
loading system objects' descriptions ... ok
creating conversions ... ok
setting privileges on built-in objects ... ok
creating information schema ... ok
vacuuming database template1 ... ok
copying template1 to template0 ... ok
copying template1 to postgres ... ok
WARNING: enabling "trust" authentication for local conne...
You can change this by editing pg_hba.conf or using the ...
next time you run initdb.
Success. You can now start the database server using:
postgres -D /usr/local/pgsql/data
or
pg_ctl -D /usr/local/pgsql/data -l logfile start)
========= 8.2の説明ここまで ============================...
$ cd /usr/local/pgsql/data
$ chmod 600 pg_hba.conf
pg_hba.confを編集
# TYPE DATABASE USER IP-ADDRESS IP-MAS...
host yotei www 192.244.75.xxx 255...
host yotei www 192.244.75.xxx 255...
host yotei all 10.3.1.xxx 255...
host yotei all 0.0.0.0 0.0...
host all all 127.0.0.1 255...
logを取るために
postgresql.confで
#log_connections = false
log_connections = true
#log_timestamp = false
log_timestamp = true
に変更する。Logファイルははじめに以下のように作成しておく。
# touch /var/log/postgresql.log
# chown postgres.postgres /var/log/postgresql.log
# chmod o-r /var/log/postgresql.log
またネットワークで使用する場合以下の設定も必要かも
postgresql.confで
#tcpip_socket = false
を
tcpip_socket = true
**起動 [#lb2c4990]
$ pg_ctl -w start
または、
$ /usr/local/pgsql/bin/postmaster -i -D /usr/local/pgsql...
このとき/tmp/.sPGSQL.5432 があると起動しないので消しておく
また、
/usr/local/pgsql/data/postmaster.pid
も削除しておく。
**Perl Moduleのインストール [#k9fd989d]
モジュールのコンパイルはpostgresユーザで行う。
このときPostgreSQLが動作している必要がある。でないと
make testでエラーする。
$ tar zxvf pgsql_perl5-1.9.0.tar.gz
$ cd pgsql_perl5-1.9.0
$ perl Makefile.PL
$ make
$ make test
ところが、このバージョンでは
PERL_DL_NONLAZY=1 /usr/bin/perl -Iblib/arch -Iblib/lib -...
Can't call method "errorMessage" on an undefined value a...
make: *** [test_dynamic] エラー 255
のようなエラーが出たので
test.plを修正
99行目あたり
#( $$Option_ref{port} ne "" && $$Option_ref{dbname} ne "...
( $$Option_ref{port} ne "" && $$Option_ref{dbname} eq ""...
and print "Pg::conndefaults ........ ok\n"
or die "Pg::conndefaults ........ not ok: "; #, $...
^^^^<--...
119行目あたり
#( $conn->errorMessage =~ /Database .?rumpumpel.? does n...
( $conn->errorMessage =~ 'FATAL: database "rumpumpel" d...
再度 $ make test
PERL_DL_NONLAZY=1 /usr/bin/perl -Iblib/arch -Iblib/lib -...
Pg::conndefaults ........ ok
Pg::connectdb ........... ok
$conn->exec ............. ok
$conn->errorMessage ..... ok
$conn->db ............... ok
$conn->user ............. ok
$conn->port ............. ok
$conn->cmdStatus ........ not ok: CREATE TABLE
$conn->oidStatus ........ ok
$conn->getline .......... ok
$conn->endcopy .......... ok
$result->cmdTuples ...... ok
$result->fname .......... ok
$result->ftype .......... ok
$result->fsize .......... ok
$result->fnumber ........ ok
$result->fetchrow ....... ok
test sequence finished.
$ su
# make install
DE JE2ISM 2004/02
細かいPostgresqlの設定は[[ここ:https://wwwism.dyndns.org/...
---------------------------------------------------------...
RIGHT:[[元ページ:https://wwwism.dyndns.org/hp/linux/psqlp...
終了行:
*postgres7.4.x+Perl Moduleのインストール [#qd46c569]
RIGHT:更新日&lastmod();
[[ここ:http://www.postgresql.org/]]からPostgresqlを、 [[...
**postgres7.4.xのインストール [#b21ca4d5]
事前にpostgresというユーザを作成。
vine3.0ではreadline-devel-4.3-5vl1.i386.rpmがインストール...
インストールする
$ tar zxvf postgresql-7.4.1.tar.gz
$ cd postgresql-7.4.1
$ ./configure --enable-multibyte=EUC_JP --enable-syslog ...
--with-openssl <-sslを有効にする
(8.2では--enable-multibyte=EUC_JP --enable-syslogのオプ...
$ make
$ su
# make install
# chown -R postgres.postgres /usr/local/pgsql
postgresの.bash_profileに
# PostgreQSL
export PATH="$PATH":/usr/local/pgsql/bin
export POSTGRES_HOME=/usr/local/pgsql
export PGLIB=$POSTGRES_HOME/lib
export PGDATA=$POSTGRES_HOME/data
export MANPATH="$MANPATH":POSTGRES_HOME/man
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH":"$PGLIB"
を追加。
$ source .bash_profile
$ initdb
(8.2ではここで文字コードを指定
$ initdb --encoding=EUC_JP
The files belonging to this database system will be owne...
This user must also own the server process.
The database cluster will be initialized with locale ja_...
creating directory /usr/local/pgsql/data ... ok
creating subdirectories ... ok
selecting default max_connections ... 100
selecting default shared_buffers/max_fsm_pages ... 24MB/...
creating configuration files ... ok
creating template1 database in /usr/local/pgsql/data/bas...
initializing pg_authid ... ok
initializing dependencies ... ok
creating system views ... ok
loading system objects' descriptions ... ok
creating conversions ... ok
setting privileges on built-in objects ... ok
creating information schema ... ok
vacuuming database template1 ... ok
copying template1 to template0 ... ok
copying template1 to postgres ... ok
WARNING: enabling "trust" authentication for local conne...
You can change this by editing pg_hba.conf or using the ...
next time you run initdb.
Success. You can now start the database server using:
postgres -D /usr/local/pgsql/data
or
pg_ctl -D /usr/local/pgsql/data -l logfile start)
========= 8.2の説明ここまで ============================...
$ cd /usr/local/pgsql/data
$ chmod 600 pg_hba.conf
pg_hba.confを編集
# TYPE DATABASE USER IP-ADDRESS IP-MAS...
host yotei www 192.244.75.xxx 255...
host yotei www 192.244.75.xxx 255...
host yotei all 10.3.1.xxx 255...
host yotei all 0.0.0.0 0.0...
host all all 127.0.0.1 255...
logを取るために
postgresql.confで
#log_connections = false
log_connections = true
#log_timestamp = false
log_timestamp = true
に変更する。Logファイルははじめに以下のように作成しておく。
# touch /var/log/postgresql.log
# chown postgres.postgres /var/log/postgresql.log
# chmod o-r /var/log/postgresql.log
またネットワークで使用する場合以下の設定も必要かも
postgresql.confで
#tcpip_socket = false
を
tcpip_socket = true
**起動 [#lb2c4990]
$ pg_ctl -w start
または、
$ /usr/local/pgsql/bin/postmaster -i -D /usr/local/pgsql...
このとき/tmp/.sPGSQL.5432 があると起動しないので消しておく
また、
/usr/local/pgsql/data/postmaster.pid
も削除しておく。
**Perl Moduleのインストール [#k9fd989d]
モジュールのコンパイルはpostgresユーザで行う。
このときPostgreSQLが動作している必要がある。でないと
make testでエラーする。
$ tar zxvf pgsql_perl5-1.9.0.tar.gz
$ cd pgsql_perl5-1.9.0
$ perl Makefile.PL
$ make
$ make test
ところが、このバージョンでは
PERL_DL_NONLAZY=1 /usr/bin/perl -Iblib/arch -Iblib/lib -...
Can't call method "errorMessage" on an undefined value a...
make: *** [test_dynamic] エラー 255
のようなエラーが出たので
test.plを修正
99行目あたり
#( $$Option_ref{port} ne "" && $$Option_ref{dbname} ne "...
( $$Option_ref{port} ne "" && $$Option_ref{dbname} eq ""...
and print "Pg::conndefaults ........ ok\n"
or die "Pg::conndefaults ........ not ok: "; #, $...
^^^^<--...
119行目あたり
#( $conn->errorMessage =~ /Database .?rumpumpel.? does n...
( $conn->errorMessage =~ 'FATAL: database "rumpumpel" d...
再度 $ make test
PERL_DL_NONLAZY=1 /usr/bin/perl -Iblib/arch -Iblib/lib -...
Pg::conndefaults ........ ok
Pg::connectdb ........... ok
$conn->exec ............. ok
$conn->errorMessage ..... ok
$conn->db ............... ok
$conn->user ............. ok
$conn->port ............. ok
$conn->cmdStatus ........ not ok: CREATE TABLE
$conn->oidStatus ........ ok
$conn->getline .......... ok
$conn->endcopy .......... ok
$result->cmdTuples ...... ok
$result->fname .......... ok
$result->ftype .......... ok
$result->fsize .......... ok
$result->fnumber ........ ok
$result->fetchrow ....... ok
test sequence finished.
$ su
# make install
DE JE2ISM 2004/02
細かいPostgresqlの設定は[[ここ:https://wwwism.dyndns.org/...
---------------------------------------------------------...
RIGHT:[[元ページ:https://wwwism.dyndns.org/hp/linux/psqlp...
ページ名: