PostgreSQL
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
* [[PostgreSQL]] [#r9d36ce1]
#contents
** インストール [#d36f4fe1]
http://www.postgresql.org/からダウンロードします。ftp://f...
useradd postgres
ではコンパイルしていきます。
./configure --enable-multibyte=EUC_JP --with-perl --with...
これでEUC_JPで日本語が扱え、perl,javaを操作するためのモジ...
8.2.4では、
./configure --enable-nls=ja --with-perl --with-openssl
としました。--enable-nls=jaでエラーが出る場合は、
http://www.gnu.org/software/gettext/よりgettextをインスト...
wget ftp://mirrors.kernel.org/gnu/gettext/gettext-0.17.t...
tar xzvf gettext-0.17.tar.gz
cd gettext-0.17
./configure
make
make install
ではpostgesの続きです
make all
make install
またインストールは/usr/local/pgsqlにされてますので、先ほ...
chown -R pgsql:pgsql /usr/local/pgsql
では環境変数の設定です。.bashrcとか/etc/profileにでもいれ...
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コマンドで反映させておいてください。で...
su - postgres
initdb --encoding=EUC_JP
や
initdb -D /usr/local/pgsql/data -E utf8
このときwhichでinitdbの場所を確認しておいてください。すで...
** 起動オプション [#yc246d79]
pg_ctl -D /usr/local/pgsql/data -l /usr/local/pgsql/log/...
てな感じで
-pg_ctl
-D datadir
データの場所です。省略した場合は、環境変数PGDATAが使われ...
-o options
postmasterに渡すオプションを指定します。"か'でくくってく...
-l filename
ログの名前を指定します。
-s
エラーメッセージのみを表示します。
-p path
postmasterの場所を指定します。デフォルトではpg_ctlと同じ...
-postmaster
-B buffers
サーバプロセスが使用する共有バッファの数をです。デフォル...
-i
クライアントとTCP/IPで接続できます。ない場合にはローカル...
-p port
接続用のポートです。指定がない場合は、5432です。
-S
サイレントモードで起動します。
status
ステイタスが表示されます。これはプロンプトで使用してくだ...
** 自動起動 [#ef60ea1e]
#! /bin/sh
# chkconfig: 2345 98 02
# description: PostgreSQL RDBMS
# This is an example of a start/stop script for SysV-sty...
# as is used on Linux systems. You should edit some of ...
# and maybe the 'echo' commands.
#
# Proper init scripts on Linux systems normally require ...
# and pid files under /var/run as well as reacting to ne...
# settings, so you should treat this with care.
# Original author: Ryan Kirkpatrick
# $Header: /cvsroot/pgsql-server/contrib/start-scripts/l...
## EDIT FROM HERE
# Installation prefix
prefix=/usr/local/pgsql
# Data directory
PGDATA="/usr/local/pgsql/data"
# Who to run pg_ctl as, should be "postgres".
PGUSER=postgres
# Where to keep a log file
PGLOG="$PGDATA/serverlog"
## STOP EDITING HERE
# Check for echo -n vs echo \c
if echo '\c' | grep -s c >/dev/null 2>&1 ; then
ECHO_N="echo -n"
ECHO_C=""
else
ECHO_N="echo"
ECHO_C='\c'
fi
# The path that is to be used for the script
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin...
# What to use to start up the postmaster
DAEMON="$prefix/bin/pg_ctl"
set -e
# Only start if we can find pg_ctl.
test -f $DAEMON || exit 0
# Parse command line parameters.
case $1 in
start)
$ECHO_N "Starting PostgreSQL: "$ECHO_C
su - $PGUSER -c "$DAEMON start -o '-i' -D '$PGDAT...
echo "ok"
;;
stop)
echo -n "Stopping PostgreSQL: "
su - $PGUSER -c "$DAEMON stop -D '$PGDATA' -s -m ...
echo "ok"
;;
restart)
echo -n "Restarting PostgreSQL: "
su - $PGUSER -c "$DAEMON restart -o '-i' -D '$PGD...
echo "ok"
;;
status)
su - $PGUSER -c "$DAEMON status -D '$PGDATA'"
;;
*)
# Print help
echo "Usage: $0 {start|stop|restart|status}" 1>&2
exit 1
;;
esac
exit 0
** pg_hba.conf [#r53f20b7]
接続を制御します。最初はlocalしか接続を許可されていません...
host all all 192.168.1.0 255.255.255.0 trust
これは左から順に
TYPE,DATABASE,USER,IP_ADDRES,IP-MASK,METHOD
になってます。
TYPE localの場合は、ロカール(UNIXドメインソケット)接続で...
DATABASE allですべて
USER allですべて
IP_ADDRES 対象のIP
IP_MASK 対象のmask
METHOD
trust 無条件に接続を許可する。ユーザー認証はユーザー名...
md5 パスワード認証を行う。pg_shadowに登録されている...
crypt パスワード認証を行う。pg_shadowに登録されている...
regect 接続拒否
それではだめな場合は、8.0の場合postgresql.confの
listen_addresses = '*'
にしてみましょう。
** コマンド [#k57b351e]
これらはpostgresユーザになっておこなってください。
psql -l
データベース一覧表示
createdb データベース名
createdb testdb --locale=C --encoding=UTF8 --template=te...
データベース作成
dropdb データベース名
データベース削除
psql データベース名
データベース接続
pg_dump dbname > /backup/backupfile
バックアップ
psql dbname < /backup/backupfile
リストア dropdbで削除してから。
createuser
ユーザを作成します。-Pでパスワードのプロンプトを表示しま...
** SQL [#ka2e5e32]
ユーザpostgresqlになってpsql databaseでログイン後行ってく...
ユーザ一覧の表示
select usename from pg_user;
ユーザ作成
CREATE USER user WITH PASSWORD 'password';
パスワード変更
ALTER USER user WITH PASSWORD password';
ユーザ削除
DROP USER user
\df 関数一覧
\dt テーブル一覧
\dT 型の一覧
\l データベース一覧
** VACUUM [#uca85fc4]
PostgreSQLデータベースの掃除と解析をおこなってくれるコマ...
vacuumdb test
データベースtestをvacuumします。
** EXPLAIN [#m285159a]
ちゃんとインデックスを使っているか見ておきましょう。
EXPLAIN sql;
EXPLAIN ANALYZE sql;
ANALYZEをつけていると実際に実行されます。後はVACUUM ANALY...
** ODBC [#q693a13d]
http://pgfoundry.org/projects/psqlodbc/~
http://www.postgresql.org/ftp/odbc/versions/msi/~
http://www.interwiz.koganei.tokyo.jp/software/PsqlODBC/in...
** バックアップ [#e8938f4e]
[[PostgreSQLのバックアップ&リストア手法その1>http://www....
** リンク [#h9c8ab58]
[[第1回:PostgreSQL のインストール & 設定>http://www.stac...
** 参考書籍 [#naae1358]
[[PostgreSQL全機能リファレンス>http://www.amazon.co.jp/ex...
終了行:
* [[PostgreSQL]] [#r9d36ce1]
#contents
** インストール [#d36f4fe1]
http://www.postgresql.org/からダウンロードします。ftp://f...
useradd postgres
ではコンパイルしていきます。
./configure --enable-multibyte=EUC_JP --with-perl --with...
これでEUC_JPで日本語が扱え、perl,javaを操作するためのモジ...
8.2.4では、
./configure --enable-nls=ja --with-perl --with-openssl
としました。--enable-nls=jaでエラーが出る場合は、
http://www.gnu.org/software/gettext/よりgettextをインスト...
wget ftp://mirrors.kernel.org/gnu/gettext/gettext-0.17.t...
tar xzvf gettext-0.17.tar.gz
cd gettext-0.17
./configure
make
make install
ではpostgesの続きです
make all
make install
またインストールは/usr/local/pgsqlにされてますので、先ほ...
chown -R pgsql:pgsql /usr/local/pgsql
では環境変数の設定です。.bashrcとか/etc/profileにでもいれ...
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コマンドで反映させておいてください。で...
su - postgres
initdb --encoding=EUC_JP
や
initdb -D /usr/local/pgsql/data -E utf8
このときwhichでinitdbの場所を確認しておいてください。すで...
** 起動オプション [#yc246d79]
pg_ctl -D /usr/local/pgsql/data -l /usr/local/pgsql/log/...
てな感じで
-pg_ctl
-D datadir
データの場所です。省略した場合は、環境変数PGDATAが使われ...
-o options
postmasterに渡すオプションを指定します。"か'でくくってく...
-l filename
ログの名前を指定します。
-s
エラーメッセージのみを表示します。
-p path
postmasterの場所を指定します。デフォルトではpg_ctlと同じ...
-postmaster
-B buffers
サーバプロセスが使用する共有バッファの数をです。デフォル...
-i
クライアントとTCP/IPで接続できます。ない場合にはローカル...
-p port
接続用のポートです。指定がない場合は、5432です。
-S
サイレントモードで起動します。
status
ステイタスが表示されます。これはプロンプトで使用してくだ...
** 自動起動 [#ef60ea1e]
#! /bin/sh
# chkconfig: 2345 98 02
# description: PostgreSQL RDBMS
# This is an example of a start/stop script for SysV-sty...
# as is used on Linux systems. You should edit some of ...
# and maybe the 'echo' commands.
#
# Proper init scripts on Linux systems normally require ...
# and pid files under /var/run as well as reacting to ne...
# settings, so you should treat this with care.
# Original author: Ryan Kirkpatrick
# $Header: /cvsroot/pgsql-server/contrib/start-scripts/l...
## EDIT FROM HERE
# Installation prefix
prefix=/usr/local/pgsql
# Data directory
PGDATA="/usr/local/pgsql/data"
# Who to run pg_ctl as, should be "postgres".
PGUSER=postgres
# Where to keep a log file
PGLOG="$PGDATA/serverlog"
## STOP EDITING HERE
# Check for echo -n vs echo \c
if echo '\c' | grep -s c >/dev/null 2>&1 ; then
ECHO_N="echo -n"
ECHO_C=""
else
ECHO_N="echo"
ECHO_C='\c'
fi
# The path that is to be used for the script
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin...
# What to use to start up the postmaster
DAEMON="$prefix/bin/pg_ctl"
set -e
# Only start if we can find pg_ctl.
test -f $DAEMON || exit 0
# Parse command line parameters.
case $1 in
start)
$ECHO_N "Starting PostgreSQL: "$ECHO_C
su - $PGUSER -c "$DAEMON start -o '-i' -D '$PGDAT...
echo "ok"
;;
stop)
echo -n "Stopping PostgreSQL: "
su - $PGUSER -c "$DAEMON stop -D '$PGDATA' -s -m ...
echo "ok"
;;
restart)
echo -n "Restarting PostgreSQL: "
su - $PGUSER -c "$DAEMON restart -o '-i' -D '$PGD...
echo "ok"
;;
status)
su - $PGUSER -c "$DAEMON status -D '$PGDATA'"
;;
*)
# Print help
echo "Usage: $0 {start|stop|restart|status}" 1>&2
exit 1
;;
esac
exit 0
** pg_hba.conf [#r53f20b7]
接続を制御します。最初はlocalしか接続を許可されていません...
host all all 192.168.1.0 255.255.255.0 trust
これは左から順に
TYPE,DATABASE,USER,IP_ADDRES,IP-MASK,METHOD
になってます。
TYPE localの場合は、ロカール(UNIXドメインソケット)接続で...
DATABASE allですべて
USER allですべて
IP_ADDRES 対象のIP
IP_MASK 対象のmask
METHOD
trust 無条件に接続を許可する。ユーザー認証はユーザー名...
md5 パスワード認証を行う。pg_shadowに登録されている...
crypt パスワード認証を行う。pg_shadowに登録されている...
regect 接続拒否
それではだめな場合は、8.0の場合postgresql.confの
listen_addresses = '*'
にしてみましょう。
** コマンド [#k57b351e]
これらはpostgresユーザになっておこなってください。
psql -l
データベース一覧表示
createdb データベース名
createdb testdb --locale=C --encoding=UTF8 --template=te...
データベース作成
dropdb データベース名
データベース削除
psql データベース名
データベース接続
pg_dump dbname > /backup/backupfile
バックアップ
psql dbname < /backup/backupfile
リストア dropdbで削除してから。
createuser
ユーザを作成します。-Pでパスワードのプロンプトを表示しま...
** SQL [#ka2e5e32]
ユーザpostgresqlになってpsql databaseでログイン後行ってく...
ユーザ一覧の表示
select usename from pg_user;
ユーザ作成
CREATE USER user WITH PASSWORD 'password';
パスワード変更
ALTER USER user WITH PASSWORD password';
ユーザ削除
DROP USER user
\df 関数一覧
\dt テーブル一覧
\dT 型の一覧
\l データベース一覧
** VACUUM [#uca85fc4]
PostgreSQLデータベースの掃除と解析をおこなってくれるコマ...
vacuumdb test
データベースtestをvacuumします。
** EXPLAIN [#m285159a]
ちゃんとインデックスを使っているか見ておきましょう。
EXPLAIN sql;
EXPLAIN ANALYZE sql;
ANALYZEをつけていると実際に実行されます。後はVACUUM ANALY...
** ODBC [#q693a13d]
http://pgfoundry.org/projects/psqlodbc/~
http://www.postgresql.org/ftp/odbc/versions/msi/~
http://www.interwiz.koganei.tokyo.jp/software/PsqlODBC/in...
** バックアップ [#e8938f4e]
[[PostgreSQLのバックアップ&リストア手法その1>http://www....
** リンク [#h9c8ab58]
[[第1回:PostgreSQL のインストール & 設定>http://www.stac...
** 参考書籍 [#naae1358]
[[PostgreSQL全機能リファレンス>http://www.amazon.co.jp/ex...
ページ名: