返回首页

gbase数据、南大通用产品文档:GBase8c

更新日期:2024年09月11日

闪回表
背景信息
闪回表可以将表恢复至特定时间点,
当逻辑损坏仅限于一个或一组表,
而不是整个数据
库时,此特性可以快速恢复表的数据。闪回表基于MVCC 多版本机制,通过删除指定时间
点和该时间点之后的增量数据,
并找回指定时间点和当前时间点删除的数据,
实现表级数据
还原。
前提条件
undo_retention_time 参数用于设置undo 旧版本的保留时间。
语法
TIMECAPSULE TABLE
table_name TO { TIMESTAMP |
CSN }
expression
示例
TIMECAPSULE TABLE t1 TO TIMESTAMP to_timestamp ('2020-02-11 10:13:22.724718',
'YYYY-MM-DD HH24:MI:SS.FF');
TIMECAPSULE TABLE t1 TO CSN 9617;

功能
设置一个节点的状态。
语法
gcadmin setnodestate ip
表4- 18 参数说明

GBase 8a MPP Cluster 产品手册
4 管理员指南
文档版本953(2022-09-15)
南大通用数据技术股份有限公司
188
参数名称
说明
ip
要设置状态的节点ip。
state
用于指定要设置的节点状态,节点状态有3 种。

unavailable 标识节点为不可用,
不在记录该节点得dml、
ddl 操作,设置该状态后必须进行节点替换,替换完成
后状态可恢复为normal;

failure:标识集群故障,相当于offline,这时dml、ddl
将不会下发到该节点,而是直接记录fevent log;

normal:
当节点故障解决后可以直接将节点置为normal,
这相当于节点重新online,
这时gcrecover 将恢复之前记
录的feventlog,
新发起的ddl、
dml 将重新下发到该节点。
警告

一旦将节点状态设置为unavailable,是无法手工恢复的,只能进行
替换才可用;

如果设置一个节点为unavailable 状态会导致任何一个distribution 中
出现某个分片的主副分片都不可用的情况,则设置失败。
示例
$ gcadmin setnodestate 172.168.83.13 failure
set node [172.168.83.13] state to failure
set node [172.168.83.13] state to failure successful
$ gcadmin showcluster vc vc2
CLUSTER STATE:
ACTIVE
VIRTUAL CLUSTER MODE:
NORMAL
==========================================================
|
GBASE VIRTUAL CLUSTER INFORMATION
|
==========================================================
|
VcName
| DistributionId |
comment
|
----------------------------------------------------------
|
vc2
|
2
| comment message for vc2 |
----------------------------------------------------------
==============================================================
======
|
VIRTUAL CLUSTER DATA NODE INFORMATION
|
==============================================================
======
|NodeName|
IpAddress
|DistributionId| gnode |syncserver|DataState|
--------------------------------------------------------------------
| node1
|172.168.83.13|
2
|FAILURE|
|
|

GBase 8a MPP Cluster 产品手册
4 管理员指南
文档版本953(2022-09-15)
南大通用数据技术股份有限公司
189
--------------------------------------------------------------------
| node2
|172.168.83.14|
2
| OPEN
|
OPEN
|
0
|
--------------------------------------------------------------------
2 data node

ENCRYPT(str[,salt])
函数说明
使用Linux 的crypt()系统调用来加密str。参数salt 是一个至少包含两个字符的字
符串。如果salt 没有给定,会使用一个随机数值。
示例
因未给定salt 值,使用随机数值对“hello”进行加密。
gbase> SELECT ENCRYPT('hello') FROM dual;
+------------------+
| ENCRYPT('hello') |
+------------------+

GBase 8a MPP Cluster 产品手册
5 数据库管理指南
文档版本953(2022-04-10)
南大通用数据技术股份有限公司
841
| y/oLk8SmVyZXg
|
+------------------+
1 row in set
说明
ENCRYPT()在一些系统上忽略除了str 前8 个字符之外的全部字符,
这个行为通过使用crypt()系统调用来决定。
如果crypt()在用户的系统上不可用,ENCRYPT()总是返回NULL,
所以推荐用户使用MD5()或SHA1(),这两个函数存在于所有平台上。