CREATE UNDO
CREATE UNDO — 定义一个新回滚段
CREATE UNDO [ IF NOT EXISTS ] name
[ WITH ( storage_parameter = value [, ... ] ) ]
[ TABLESPACE tablespace_name ]
CREATE UNDO
在当前数据库中构建一个回滚段。该回滚段名必须与当前数据库中任何现有回滚段的名称不同。回滚段主要被用来存放表和索引中修改过的老版本数据。
要创建一个回滚段,你必须是一个超级用户或者当前数据库拥有者。
-
IF NOT EXISTS
如果一个同名关系已经存在则不要抛出错误。这种情况下会发出一个提示。注意这并不保证现有的回滚段与将要创建的回滚段有任何相似。
-
name
要创建的回滚段名称。这里不能包括模式名,因为回滚段总是被创建在系统模式
pg_catalog
中。 -
storage_parameter
回滚段相关的存储参数的名称。详见 回滚段存储参数。
-
tablespace_name
在其中创建回滚段的表空间。如果没有指定,将会使用 default_tablespace。
可选的WITH
子句为回滚段指定存储参数:
-
minpages
回滚段中的最小页面数。默认是
128
。 -
maxpages
回滚段中的最大页面数。默认不限制。该参数更多只是一种提示,实际上,Redrock Postgres 采用的是一种完全自动化的机制,称为自动回滚段管理模式,用于管理回滚段占用的存储空间。
创建一个回滚段:
CREATE UNDO undo_13;
创建一个回滚段并且把回滚段放在表空间undospace
中:
CREATE UNDO undo_14 TABLESPACE undospace;
CREATE UNDO
是一种 Redrock Postgres 的语言扩展。在 SQL 标准中没有对于回滚段的规定。