PostgreSQL導入から接続まで使えば分かるPostgreSQL運用&チューニング(1)(3/3 ページ)

» 2008年06月10日 00時00分 公開
[北川俊広SRA OSS, Inc.]
前のページへ 1|2|3       

データベースに接続する

 PostgreSQLには、専用のターミナルとしてpsqlが付属しています。psqlを利用すると手軽にデータベースへ接続し、SQLを実行することができます。

 psqlでデータベースに接続する最も単純なコマンドは次のとおりです。

[postgres]$ psql データベース名 ユーザー名

 PostgreSQLは独自のユーザー管理機構を持っています。そのため、OSのユーザーとPostgreSQLのユーザー間に直接的な関連はありません。

 ただし、一般的なPostgreSQLのコマンドは、データベースに接続するユーザーの指定を省略した場合、そのコマンドを実行したOSのユーザーの名前を使用して接続する仕組みになっています。上記のコマンドの場合もユーザー名を省略すると、postgresユーザーでデータベースに接続します。

ユーザーの作成

 いまのところ、PostgreSQLのユーザーはスーパーユーザーのpostgresしか存在していないので、一般ユーザーを作成します。

 例えば、user1という名前の一般ユーザーを作成するには、postgresユーザーでcreateuserコマンドを実行します。このとき、PostgreSQLは起動している必要があります。

[postgres]$ createuser user1
Shall the new role be a superuser? (y/n) n
Shall the new role be allowed to create databases? (y/n) y
Shall the new role be allowed to create more new roles? (y/n) n

 createuserコマンド実行時の質問は、それぞれ以下のことを確認しています。

  • 新しいロールをスーパーユーザーとするか
  • 新しいロールに対してデータベース作成を許可するか
  • 新しいロールに対してロール作成を許可するか

 ここでの「ロール」とは、ユーザーとグループの両方を含む概念です。本連載では、ロールについては複雑な使い方をしませんので、ユーザーと同じと思っていただいて構いません。

psqlでデータベースに接続

 PostgreSQLでは、initdbコマンドでデータベースクラスタを初期化した時点で、template0template1postgresという3つのデータベースが自動的に作成されます。

 template0とtemplate1データベースはユーザーがデータベースを作る際にひな型として使用されるデータベースです。

 また、postgresデータベースはPostgreSQL 8.1以降に用意されているデータベースで、主にPostgreSQLのコマンドによって使用されます。どれも必要なデータベースなので削除してはいけません。なお、template1とpostgresデータベースには接続することができます。

 例えば、user1ユーザーでpostgresデータベースに接続する場合、psqlコマンドで次のように接続します。

[postgres]$ psql postgres user1
Welcome to psql 8.3.1, the PostgreSQL interactive terminal.

  Type:  \copyright for distribution terms
         \h for help with SQL commands
         \? for help with psql commands
         \g or terminate with semicolon to execute query
         \q to quit

postgres=>  //一般ユーザーの場合のプロンプト表示

 一般ユーザーでデータベースに接続した場合、プロンプトは 「=>」になり、スーパーユーザーの場合は「=#」になります。

 終了するには、\qコマンドを実行します。

 psqlのコマンドはこのようにすべて「\」で始まります。psqlのコマンド一覧は\?コマンドで見ることができます。


  以上が、インストールからデータベースへ接続するまでの流れです。本連載ではここで導入したPostgreSQLをもとに、調査からチューニングまでのひととおりの流れを紹介していきます。

 次回は、PostgreSQLの運用やチューニングについて解説するうえで用いるベンチマークソフトウェアについて見ていきます。


前のページへ 1|2|3       

Copyright © ITmedia, Inc. All Rights Reserved.

スポンサーからのお知らせPR

注目のテーマ

Microsoft & Windows最前線2025
AI for エンジニアリング
ローコード/ノーコード セントラル by @IT - ITエンジニアがビジネスの中心で活躍する組織へ
Cloud Native Central by @IT - スケーラブルな能力を組織に
システム開発ノウハウ 【発注ナビ】PR
あなたにおすすめの記事PR

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。