OSS-DB Silver 暗記 B-5

運用管理(52%):::基本的な運用管理作業【重要度:7】

 

1. DBユーザ管理

 

1.1 DBユーザ追加・削除・変更

 

  • ユーザ権限
    • superuser :スーパーユーザ権限
    • createrole:ユーザ作成権限
    • createdb :DB作成権限
    • login :ログイン権限
DB superuser & user PostgreSQL
Fig.1 DB superuser & user

 

  • superuser は、superuser と user を追加・削除・変更できる
createrole superuser PostgreSQL
Fig.2 createrole superuser
  • user は、user を追加・削除・変更できる

user createrole PostgreSQL

Fig.3 user createrole

1.2 DBユーザ変更

1.2.1 DBユーザ名変更

  • 書式:alter user  ユーザ名  rename to  新ユーザ名

 

=> alter user user1 rename to user9;		// user1 → user9

 

1.2.2 パスワード変更

  • 書式:alter user  ユーザ名  with password  ‘new password’

 

=> alter user user1 with password ‘abcd1234’;	// new password:abcd1234

 

1.2.3 権限変更

  • 書式:alter user  ユーザ名  with
    {   superuser | nosuperuser | createdb   | nocreatedb | createrole | nocreaterole
    | login         | nologin   }

 

=# alter user user1 with superuser;		// user1 → superuser

 

 

2. ディスク領域管理

  • MVCC(Multi Version Concurrency Control:多版型同時実行制御)
    • Multi Version:多版
    • Concurrency:同時実行、並列性
    • Control :制御

2.1 vacuum

  • MVCC により生じた不要ディスク領域を回収
  • 書式:vacuum  [full]  [verbose]  [テーブル名]

 

db1=# vacuum table1;		// 処理対象:table1

 

db1=# vacuum;			// 処理対象:db1(db1内の全テーブル)

 

 

2.2 analyze

  • SQL 操作履歴の統計情報を更新
  • 書式:analyze  [テーブル名]

 

db1=# analyze;			// 処理対象:db1(db1内の全テーブル)

 

2.3 vacuum analyze

  • vacuum とanalyze をまとめて実行
  • 書式:vacuum analyze  [テーブル名]

 

2.4 autovacuum

  • 自動バキューム
  • postgresql.conf
    • autovacuum(logical:on):自動バキューム有効・無効

 

 

3. 権限管理(テーブル単位)

 

3.1 grant

  • テーブルにアクセス権限を付与(grant)
  • 書式:grant  権限  on  テーブル名  to  { ユーザ名 | public }
    • 権限:{ select | insert | update | delete | truncate | references | trigger | all }

 

=> grant select,update on table1 to user1;	//

 

3.2 revoke

  • テーブルに付与したアクセス権限を取り消す(revoke)
  • 書式:revoke  権限  on  テーブル名  from  { ユーザ名 | public }
    • 権限:{ select | insert | update | delete | truncate | references | trigger | all }

 

=> revoke all on table1 from user1;		//

 

 

4. DBCの各種情報管理

 

4.1 情報スキーマ

  • information_schema という名前のスキーマ
    • schemata:スキーマ一覧
    • tables      :テーブル一覧
    • triggers   :トリガー一覧
    • views      :ビュー一覧

 

=# select * from information_schema.tables;	// テーブル一覧

 

4.2 システムカタログ

  • PostgreSQL の内部情報を格納するテーブル・ビュー
  • pg_catalog という名前のスキーマ
    • pg_class     :テーブル管理
    • pg_index    :インデックス管理
    • pg_proc     :関数管理
    • pg_roles     :ロール管理
    • pg_settings:設定パラメータ管理
    • pg_type     :データ型管理

 

=# select * from pg_catalog.pg_roles;		// ロールの管理

 

 

 

スポンサーリンク

コメントを残す

メールアドレスが公開されることはありません。