CREATEDB(1)

NAME
createdb - 新しい PostgreSQL データベースの作成

SYNOPSIS

createdb [ options... ] [ dbname ] [ description ]

説明

createdb は、新しい PostgreSQL データベースを作成します。

通常、このコマンドを実行するデータベースユーザが、新しいデータベースの所有者になります。 ただし、-O オプションを使用して別のユーザを所有者に指定することができます (コマンドを実行するユーザが適切な権限を持っている場合)。

createdb は PostgreSQL の対話的ターミナル psql(1) 経由で実行される SQL コマンド CREATE DATABASE [create_database(l)] のシェルスクリプトラッパーです。したがって、これ以外の方法でデータベースを作成しても何も違いはありません。このスクリプトから psql プログラムが参照できること、データベースサーバがターゲットのポートで稼働していることが必要です。 また、psql および libpq フロントエンドライブラリの、すべてのデフォルト設定と環境変数が適用されます。

オプション

createdb では、下記のコマンドライン引数を指定できます。

dbname
    作成するデータベースの名前を指定します。この名前はシステム内の全ての PostgreSQL データベースの中で一意でなければなりません。 デフォルトでは、現在のシステムユーザと同じ名前でデータベースを作成します。

description
    オプションで、新しく作成されるデータベースに関連付けるコメントを指定します。

-D location

--location location
    データベースの代替の場所を指定します。 initlocation(1) も参照して下さい。

-e

--echo
    createdb が生成し、サーバに送信した問い合わせをエコー表示します。

-E encoding

--encoding encoding
    このデータベース内で使用する文字エンコード方式を指定します。

-O owner

--owner owner
    新しいデータベースの所有者となるデータベースユーザを指定します。

-q

--quiet
    返答を表示させないようにします。

-T template

--template template
    このデータベースの構築に使用するテンプレートを指定します。

オプション -D、-E、-O、および -T は、それぞれ根底にある SQL コマンド CREATE DATABASE [create_database(l)] に対応しています。詳細はそちらを参照して下さい。

また createdb は、以下のコマンドライン引数を接続パラメータとして受けつけます。

-h host

--host host
    サーバが稼働しているマシンのホスト名を指定します。ホスト名がスラッシュから始まる場合、Unix ドメインソケット用のディレクトリとして使用されます。

-p port

--port port
    サーバが接続を監視するインターネット TCP/IP ポートもしくは Unix ドメインソケットのファイル拡張子を指定します。

-U username

--username username
    接続するためのユーザ名を指定します。

-W

--password
    強制的にパスワードのプロンプトを表示します。

診断

CREATE DATABASE
    データベースの作成に成功した場合に表示されます。

createdb:Database creation failed.
    (データベースの作成に失敗しました。)

createdb: Comment creation failed. (Database was created.)
    データベースのコメント / 説明が作成できませんでした。データベース自身は既に作られています。 後でコメントをつけるには SQL コマンド COMMENT ON DATABASE を使うことができます。

エラー条件があれば、バックエンドのエラーメッセージが表示されます。この場合に表示されるメッセージについては、CREATE DATABASE [create_database(l)] と psql(1) を参照して下さい。

環境

PGDATABASE
    設定されている場合は、これが作成するデータベースの名前になります (コマンドラインでオーバーライドされない限り)。

PGHOST

PGPORT

PGUSER
    デフォルトの接続パラメータです。 コマンドラインでも PGDATABASE でも指定されていない場合は、PGUSER が作成するデータベースの名前にもなります。

例

デフォルトのデータベースサーバを使ったデータベース demo を作成します。

$ createdb demo
CREATE DATABASE

この結果は、SQL コマンド CREATE DATABASE を実行した場合の結果と同じです。

ホスト eden 上のポート番号 5000 のサーバを使用し、LATIN1 エンコード方式を使用するデータベース demo を、その背後で実行される問い合わせを表示させながら作成します。

$ createdb -p 5000 -h eden -E LATIN1 -e demo
CREATE DATABASE "demo" WITH ENCODING = 'LATIN1'
CREATE DATABASE

関連項目
dropdb(1), CREATE DATABASE [create_database(l)]