初期設定など
Turbolinux 11 ServerにはPostgreSQLのバージョン8.2.5-1が収められています。7系から8系にアップグレードした事によって、PostgreSQLの機能にも更なる向上が見られます。
データベースの初期化
Turbolinux 11 Serverの場合、10 Serverのコントロールセンターのような便利ツールがありませんので、コンソール画面からturboserviceコマンドでTurboツールを直接呼び出してやらねばなりません。このサービス管理ツールから起動時の設定や、現時点でのサービスの停止・開始の操作が可能です。ここでPostgreSQLサービスを開始すると、自動的にデータベースの初期化(initdb)も行ってくれます。/var/lib/pgsql/dataディレクトリ下に必要なファイルセットが用意されます。
※後日談ですが、サービス管理ツールの「起動時のサービス」でチェックを入れても、設定ファイルに反映されていないのか、再度起動した時にここでチェックを入れたサービスが起動してくれません。バグでしょうか。
もしコンソールからコマンドラインで起動時の設定を行いたい時は、以下のようにchkconfigコマンドを使います。
# chkconfig postgresql on
クライアント設定ファイルpg_hba.conf
上記のディレクトリ下にpg_hbs.confファイルがありますが、その最下部にクライアントのアクセス許可に関する設定箇所がありますので、ここを少し修正します。
# TYPE DATABASE USER CIDR-ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all ident sameuser
# IPv4 local connections:
host all all 127.0.0.1/32 ident sameuser
# IPv6 local connections:
host all all ::1/128 ident sameuser上の赤字部分をtrustに変えます。そのままident認証を使ってもいいのですが、ここは簡単にtrustしてしまいます。
ユーザ登録
次に実際にデータベースを利用するユーザを登録してやりましょう。コマンドはcreateuserを使います。登録するユーザは、実際にサーバに登録されているユーザから選びましょう。
まずPostgreSQLのスーパーユーザであるpostgresにログインしてからcreateuserコマンドを打ちます。# su - postgres [ENTER]
$ createuser (ユーザ名) [ENTER]
$ Shall the new role be a superuser? (y/n) [y ENTER]
$ CREATE ROLEこれでデータベースを使用するユーザが登録されました。データベースの作成は、一旦このユーザでログインしてから行います。この後の操作については、「PostgreSQLの小部屋」の内容をご参照下さい。詳しく解説がされています。
8系に追加された便利機能
7系の「ALTER TABLE 〜」コマンドにも便利なものが色々ありましたが、8系になって更にコラムの型を変更できる機能が加わりました。これは、最初「整数型」で登録していたコラムで浮動小数型が使いたくなった時などに便利です。書式は以下の通りです。
ALTER TABLE テーブル名 ALTER コラム名 TYPE 変更後の型
しかしバージョンが上がるにつれ、どんどん便利な機能が追加されて行ってますね(^.^)