YMatrix 文档
快速上手
集群部署
SQL参考
- ABORT
- ALTER_DATABASE
- ALTER_EXTENSION
- ALTER_EXTERNAL_TABLE
- ALTER_FOREIGN_DATA_WRAPPER
- ALTER_FOREIGN_TABLE
- ALTER_FUNCTION
- ALTER_INDEX
- ALTER_RESOURCE_GROUP
- ALTER_RESOURCE_QUEUE
- ALTER_ROLE
- ALTER_RULE
- ALTER_SCHEMA
- ALTER_SEQUENCE
- ALTER_SERVER
- ALTER_TABLE
- ALTER_TABLESPACE
- ALTER_TYPE
- ALTER_USER_MAPPING
- ALTER_VIEW
- ANALYZE
- BEGIN
- CHECKPOINT
- COMMIT
- COPY
- CREATE_DATABASE
- CREATE_EXTENSION
- CREATE_EXTERNAL_TABLE
- CREATE_FOREIGN_DATA_WRAPPER
- CREATE_FOREIGN_TABLE
- CREATE_FUNCTION
- CREATE_INDEX
- CREATE_RESOURCE_GROUP
- CREATE_RESOURCE_QUEUE
- CREATE_ROLE
- CREATE_RULE
- CREATE_SCHEMA
- CREATE_SEQUENCE
- CREATE_SERVER
- CREATE_TABLE
- CREATE_TABLE_AS
- CREATE_TABLESPACE
- CREATE_TYPE
- CREATE_USER_MAPPING
- CREATE_VIEW
- DELETE
- DROP_DATABASE
- DROP_EXTENSION
- DROP_EXTERNAL_TABLE
- DROP_FOREIGN_DATA_WRAPPER
- DROP_FOREIGN_TABLE
- DROP_FUNCTION
- DROP_INDEX
- DROP_RESOURCE_GROUP
- DROP_RESOURCE_QUEUE
- DROP_ROLE
- DROP_RULE
- DROP_SCHEMA
- DROP_SEQUENCE
- DROP_SERVER
- DROP_TABLE
- DROP_TABLESPACE
- DROP_TYPE
- DROP_USER_MAPPING
- DROP_VIEW
- END
- EXPLAIN
- GRANT
- INSERT
- LOAD
- LOCK
- REINDEX
- RELEASE_SAVEPOINT
- RESET
- REVOKE
- ROLLBACK_TO_SAVEPOINT
- ROLLBACK
- SAVEPOINT
- SELECT INTO
- SET ROLE
- SET TRANSACTION
- SET
- SHOW
- START TRANSACTION
- TRUNCATE
- UPDATE
- VACUUM
工具指南
ALTER DATABASE
修改数据库的属性
概要
ALTER DATABASE name [ WITH CONNECTION LIMIT connlimit ]
ALTER DATABASE name RENAME TO newname
ALTER DATABASE name OWNER TO new_owner
ALTER DATABASE name SET TABLESPACE new_tablespace
ALTER DATABASE name SET parameter { TO | = } { value | DEFAULT }
ALTER DATABASE name SET parameter FROM CURRENT
ALTER DATABASE name RESET parameter
ALTER DATABASE name RESET ALL
描述
ALTER DATABASE 修改一个数据库的属性。
第一个语句修改数据库的连接数。只有数据的所有者或者超级用户可以更改此设置。
第二个语句修改数据库的名字。只有数据库的所有者或者超级用户可以重命名数据库;非超级用户必须拥有 CREATEDB 权限。不能修改当前数据库的名字,连接到其他的数据库先。
第三个聚集修改数据库的所有者。要修改所有者,你必须是新角色的直接或者间接的成员, 而且必须有 CREATEDB 的权限。(超级用户可以自动拥有所有的权限。)
第四个语句修改数据库的默认表空间。只有数据库的所有者或者超级用户可以修改默认表空, 你还需要在新的表空间上有创建的权限。这个命令会将这个数据库所有在默认表空间的表和索引 都移到新的表空间。注意,不在默认表空间的表和索引不受影响。
剩下的语句是用来修改 YMatrix 数据库会话级别的参数默认值。当一个会话在数据库开启后, 这个会话提供的参数值将成为默认参数值。数据库在配置文件(postgresql.conf) 配置的默认值将被覆盖。只有数据库所有者或者超级用户才能修改会话默认值。某些参数不能用这 种方式设置,或者只能被超级用户设置。
参数
name
- 将要被修改属性的数据库名称。
connlimit
- 最大并发连接数。缺省值-1表示没有限制
parameter value
- 将指定配置参数的数据库的会话默认值设置为给定值。如果这个值是 DEFAULT,或者是等效的 RESET,数据库的特定设置会被删除,因此系统范围的默认设置将在新会话中继承。用 RESET ALL 来清除所有的数据库设置。
newname
- 新的数据库名。
new_owner
- 新的数据库所有者。
new_tablespace
- 新的数据库默认表空间。
注意
还可以为特定角色(用户)而不是数据库设置配置参数会话默认值。如果存在冲突,角色特定的设置将覆盖数据库特定的设置。 参见 ALTER ROLE.
示例
为数据库 mydatabase 设置默认的模式搜索路径:
ALTER DATABASE mydatabase SET search_path TO myschema,
public, pg_catalog;
兼容性
ALTER DATABASE 语句是 YMatrix 的扩展语句。