摘要:在数据库管理领域,数据的保护与恢复一直是至关重要的任务。针对数据库开发人员“误删”数据这一高危情境,南大通用基于共享存储的数据库集群GBase 8s内置“闪回”工具,提供闪回功能来确保数据的完整性和可靠性,(马大哈们)再也不用担心“跑路”了。
在数据库管理领域,数据的保护与恢复一直是至关重要的任务。针对数据库开发人员“误删”数据这一高危情境,南大通用基于共享存储的数据库集群GBase 8s内置“闪回”工具,提供闪回功能来确保数据的完整性和可靠性,(马大哈们)再也不用担心“跑路”了。
GBASE南大通用闪回工具 onflsbk.sh 能够完成表的闪回功能,给用户提供单张表回退到历史某一位置的快照。具体包括 5 个步骤,如下表:
闪回工具安装和配置
这一步骤涉及工具的安装与配置文件的参数设置。闪回工具的安装包为绿色版的 tar包,只需放到指定的服务器解压即可,但需要注意解压后目录以及文件属主需要拥有执行 onlog 的权限 。
闪回工具可以通过配置目录:[安装目录名]/conf/ 下的参数文件config.properties来配置参数,包括:jdbc 的url,数据库用户名/密码,字符集,是否支持 32K,数据库目录等等。
flashback.conf 配置文件参数说明
闪回工具使用
闪回工具通过执行 shell 脚本:[安装目录名]/onflsbk.sh 来实现闪回功能。
闪回语法图
闪回程序分为“按照时间闪回”和“按照lsn号闪回”。
a. 按照时间闪回:
./onflsbk.sh -D database_name -d 'date_time' -r table_name
-D database_name 是闪回命令用来选择数据库的参数,输入database_name 是被选择的数据库名;
-d 'date_time' 是闪回命令指定还原时间点的参数,输入的 'date_time' 是用来指定还原的目标时间点,格式: 'yyyy-mm-dd hh24:mi:ss',如果选择该参数,说明这条闪回命令是将表的数据,命令行中不能出现 -l 'lsn_number';
-r table_name 是闪回命令用来选择表的参数,该参数必须配合 -l 'lsn_number' 或 -d 'date_time' 中的一个参数使用,输入的 table_name 是被选择将要还原的表名,命令行中不能出现 -d 'date_time';
b. 按照 lsn 号闪回:
./onflsbk.sh -D database_name -l 'lsn_number' -r table_name
-D database_name 是闪回命令用来选择数据库的参数,输入的 database_name 是 被选择的数据库名;
-l 'lsn_number' 是闪回命令指定逻辑日志的 LSN 位置的参数,输入的'lsn_number' 是用来指定逻辑日志 LSN 位置,如果选择该参数说明这条闪回命令是通过指定逻 辑日志的 LSN 位置进行表的数据还原;
-r table_name 是闪回命令用来选择表的参数,该参数必须配合-l'lsn_number' 或 -d 'date_time' 中的一个参数使用,输入的 table_name 是被选择将要还原的表名,命令行中不能出现 -d 'date_time';
c. 闪回到新表:
通过 LSN 闪回到新表语法:
onflsbk.sh -D database_name -l 'lsn_number' -r table_name -t new_table_name
通过时间闪回到新表语法:
onflsbk.sh -D database_name -d 'date_time' -r table_name -t new_table_name
来源:GBASE南大通用