無料スクリプト配布のPHP.TO   PHPの実用的なtips PHPマニュアル MySQLマニュアル Apacheマニュアル PostgreSQLマニュアル マニュアル検索    

ALTER DATABASE

名前

ALTER DATABASE -- データベースを変更する

概要

ALTER DATABASE 

name

 [ [ WITH ] 

option

 [ ... ] ]



ここで

option

は以下の通りです。



    CONNECTION LIMIT 

connlimit



ALTER DATABASE 

name

 RENAME TO 

new_name



ALTER DATABASE 

name

 OWNER TO 

new_owner



ALTER DATABASE 

name

 SET TABLESPACE 

new_tablespace



ALTER DATABASE 

name

 SET 

configuration_parameter

 { TO | = } { 

value

 | DEFAULT }
ALTER DATABASE 

name

 SET 

configuration_parameter

 FROM CURRENT
ALTER DATABASE 

name

 RESET 

configuration_parameter


ALTER DATABASE 

name

 RESET ALL

説明

ALTER DATABASE はデータベースの属性を変更します。

最初の構文はデータベース毎の設定を変更します。 (詳細は後述します。) データベース所有者とスーパーユーザのみがこの設定を変更することができます。

2番目の構文は、データベースの名前を変更します。 データベースの名前を変更できるのは、データベースの所有者またはスーパーユーザのみです。 ただし、スーパーユーザではない所有者は CREATEDB 権限を所有していなければなりません。 現在のデータベースの名前を変更することはできません(必要ならば、別のデータベースに接続してください)。

3番目の構文は、データベースの所有者を変更します。 所有者を変更するにはデータベースを所有し、かつ、新しい所有者ロールの間接的あるいは直接的なメンバでなければなりません。 さらに、 CREATEDB 権限も持たなければなりません。 (スーパーユーザはこれらの権限を自動的に持っていることに注意してください。)

4番目の構文は、データベースのデフォルトのテーブル空間を変更します。 データベースの所有者またはスーパーユーザのみがこれを行うことができます。 また、新しいテーブル空間における作成権限を持つ必要があります。 このコマンドはデータベースの古いデフォルトのテーブル空間から新しいテーブル空間にテーブルまたはインデックスを物理的にすべて移動します。 デフォルト以外のテーブル空間にあるテーブルまたはインデックスには影響がないことに注意してください。

残りの構文は、 PostgreSQL データベースにおける実行時設定変数のセッションのデフォルト値を変更します。 指定された値が、コマンド実行後にデータベースで開始される新規セッションのデフォルト値になります。 データベース固有のデフォルト値によって、 postgresql.conf ファイルに記述されている設定や postgres コマンドラインから受け取った設定は上書きされます。 データベースにおけるセッションのデフォルト値を変更できるのは、データベースの所有者またはスーパーユーザのみです。 この方法では設定できない変数や、スーパーユーザのみが設定できる変数も存在します。

パラメータ

name

属性変更の対象となるデータベースの名前です。

connlimit

データベースへの最大同時接続数です。 -1は無制限を意味します。

new_name

新しいデータベース名です。

new_owner

新しいデータベースの所有者です。

new_tablespace

新しいデータベースのデフォルトのテーブル空間です。

configuration_parameter
value

指定した設定パラメータについて、データベースのセッションのデフォルト値を指定した値に設定します。 value DEFAULT の場合、あるいは等価な RESET が使用されている場合、データベース固有の設定は無効になり、新しいセッションではシステム全体のデフォルト設定が継承されます。 全てのデータベース固有の設定をクリアするには、 RESET ALL を使用してください。 SET FROM CURRENT は、データベース固有の値としてセッションにおけるパラメータの現在値を保管します。

設定可能なパラメータ名とその値に関する詳細については SET および 第18章 を参照してください。

注釈

データベースではなく特定のロールにセッションのデフォルト値を関連付けることもできます。 ALTER ROLE を参照してください。 設定が競合する場合には、ロール固有の設定により、データベース固有の設定が上書きされます。

test データベース内のインデックススキャンをデフォルトで無効にします。

ALTER DATABASE test SET enable_indexscan TO off;

互換性

ALTER DATABASE 文は PostgreSQL の拡張です。

関連項目

CREATE DATABASE , DROP DATABASE , SET , CREATE TABLESPACE

powered by SEO.CUG.NET