search
LoginSignup
1
Help us understand the problem. What are the problem?

posted at

updated at

PostgreSQLを動かす

個人的メモです。

PostgreSQLサーバを走らせる

$ postgres -D /usr/local/var/postgres

シェルでの操作

# ユーザを作る
$ createuser <user名>

# DBを作る
$ createdb -O <ownerのuser>  <db名>

# デフォルトのDBのインタラクティブシェルに入る
$ psql -d postgres

# DB指定してインタラクティブシェルに入る
$ psql -d <接続先のdb名> -U <接続するuser名>
  • デフォルトのsuperuserの名前はpostgres

PostgreSQLインタラクティブシェルにて

スーパユーザでとログインするとdb1=#, その他ユーザだとdb1=>が表示されているはず。

# db1を使用(MySQLでいうUSE)
\connect データベース名

# データベース一覧
db1=>\l

# スキーマ一覧
db1=>\dn

# ユーザ一覧
db1=>\du
db1=>select * from pg_user;

# 現在のDBのテーブル一覧 (全スキーマの)
db1=>\dt

# テーブル作成
# スキーマを明示的に指定しないと、publicスキーマ内に作られる模様。
db1=>CREATE TABLE new_table(....);

# テーブル詳細
db1=>\d <table名>;

# テーブル削除
db1=>DROP TABLE <table名>;

# userのパスワード変更
db1=>\password
db1=>\password <user名>

# userに権限を与える
=# ALTER USER <user名> CREATEDB

# DBを削除する
=# DROP DATABASE "<DB名>";

# テーブルのスキーマを見る
=>\d <table名>

権限回りの操作は以下。

# それぞれのuserの権限を確認する
t-# \du

# super userの権限を与える
=# ALTER USER some_user WITH Superuser;

Register as a new user and use Qiita more conveniently

  1. You can follow users and tags
  2. you can stock useful information
  3. You can make editorial suggestions for articles
What you can do with signing up
1
Help us understand the problem. What are the problem?