小さい頃はエラ呼吸

いつのまにやら肺で呼吸をしています。


無料のクラウドdotcloudでPostgreSQLをセットアップしてみたよ。

はじめに

node.jsやrubyをサポートしている無料のPaasクラウドdotcloudでPostgreSQLをセットアップしてみました。
公式マニュアルはこちら。

PostgreSQL全機能バイブル
鈴木 啓修
技術評論社
売り上げランキング: 10,666

検証した環境
  • Mac OS X 10.6.7
事前準備

事前準備として、クライアント環境にdotcloudのクライアントツールをインストールします。

sudo easy_install dotcloud
dotcloud上にPostgreSQLをセットアップする

dotcloud上でPostgreSQLを使えるようにするには、以下のコマンドを実行します。xxx.dbの部分はアプリケーションの名前になりますので、適宜読み替えてください。

dotcloud deploy -t postgresql xxx.db
>Created "xxx.db".
データベースのユーザを作成する

続いて、以下のコマンドを実行して接続用のユーザを作成します。このとき、パスワードを設定する必要があります。

dotcloud run xxx.db -- createuser ユーザ名 -SDRP
># createuser ユーザ名 -SDRP
>Enter password for new role: 
>Enter it again: 
新規にデータベースを作成する

次に、PostgreSQL上にデータベースを作成します。

dotcloud run xxx.db createdb データベース名
ユーザにデータベースの権限を付与する

ユーザとデータベースを作ったら、権限の付与を行います。以下のコマンドを実行すると、指定したユーザにデータベースのすべての権限が付与されます。

dotcloud run xxx.db -- psql -c \"GRANT ALL PRIVILEGES ON DATABASE データベース名 TO ユーザ名\"
試しにテーブルを作ってみる

1.以下のコマンドを実行すると、PostgreSQL用のシェルが起動します。

dotcloud run xxx.db psql

2.シェルが起動したら、create table文を実行します。

CREATE TABLE test
(
  id serial NOT NULL,
  "name" character(50),
  CONSTRAINT test_pkey PRIMARY KEY (id)
);

3.\dtでテーブルの一覧を取得すると、テーブルが作成されているのが確認できます。

postgres=# \dt
        List of relations
 Schema | Name | Type  |  Owner   
--------+------+-------+----------
 public | test | table | postgres
(1 row)