一、增量恢复至指定时间点
1、建表,并插入数据
CREATE TABLE T1(C1 INT);
INSERT INTO T1 VALUES(1);
commit;
select * from t1;

2、进行完全备份
backup database full backupset '/home/dmdba/bak/full';

3、执行插入:
insert into T1 values(2);
commit;
select * from T1;
select sysdate;
--记录当前时间t1:2022-01-26 09:50:09

4、执行插入:
insert into T1 values(3);
commit;
select * from T1;
select sysdate;
--记录当前时间t2:2022-01-26 09:50:44

5、备份归档文件
backup archive log all backupset '/home/dmdba/bak/arch';
6、脱机还原数据库:停止数据库服务,使用数据库还原工具将数据库恢复到t时间点
restore archive log from backupset '/home/dmdba/bak/arch' to database '/u01/dmdbms/data/DAMENG/dm.ini'
restore database '/u01/dmdbms/data/DAMENG/dm.ini' from backupset '/home/dmdba/bak/full';
recover database '/u01/dmdbms/data/DAMENG/dm.ini' with archivedir '/u01/dmdbms/data/arch' until time '2022-01-26 09:50:24';
recover database '/u01/dmdbms/data/DAMENG/dm.ini' update db_magic;

6、查询T1数据
SELECT * FROM T1;
二、hint测试
1、创建测试表并插入数据
CREATE TABLE T1 (ID int,NAME VARCHAR(128));
CREATE TABLE test01(C1 INT,C2 VARCHAR);
insert into test01 values (1,'王一'),(2,'王二'),(3,'王三'),(4,'王四'),(5,'王五'),(6,'王六'),(7,'王七');

2、建立索引
CREATE INDEX IDX_TEST01_C1 ON TEST01(C1);
CREATE INDEX IDX_TEST01_C2 ON TEST01(C2);
3、加入hint查询新的执行计划
explain SELECT /*+INDEX(TEST01, IDX_TEST01_C1) */ * FROM TEST01 WHERE c1 >4 and C2 in ('王四','王五','王六');
explain select /*+ NO_INDEX (TEST01, IDX_TEST01_C1)} */ * FROM TEST01 WHERE c1 >4 and C2 in ('王四','王五','王六');

三、事务提交测试
1、会话1:
--建表并插入数据并查询:
create table FUT_SWGL_TJ (c1 int,c2 varchar(10));
insert into FUT_SWGL_TJ values(1,'aa');
select * from FUT_SWGL_TJ;
2、会话2:
查询同一张表数据
select * from FUT_SWGL_TJ;
3、退出会话1,会话2重新执行
select * from FUT_SWGL_TJ;
四、用户可靠性测试
1、登录数据库创建用户
CREATE USER "TEST01" IDENTIFIED BY dameng123 HASH WITH SHA512 NO SALT PASSWORD_POLICY 2 ENCRYPT BY dameng123
LIMIT FAILED_LOGIN_ATTEMPS 3,
PASSWORD_LOCK_TIME 1,
PASSWORD_GRACE_TIME 5 , --口令宽限期
PASSWORD_LIFE_TIME 365 --口令有限期
DEFAULT TABLESPACE "MAIN"

2、查看当前密码策略
select para_name,para_value from v$dm_ini where para_name like 'PWD_POLICY';

0 无策略
1 禁止与用户名相同
2 口令长度不小于9
4 至少包含一个大写字母(A-Z)
8 至少包含一个数字(0-9)
16 至少包含一个标点符号(英文输入法状态下,除“和空格外的所有符号)
3、修改密码策略
SP_SET_PARA_VALUE(1, 'PWD_POLICY',14);

4、创建用户
create user test04 identified by dameng123;
create user test04 identified by dameng123123;
create user test04 identified by Dameng123123;

五、身份认证测试
1、创建与操作系统同名的数据库用户dmdba
CREATE USER dmdba IDENTIFIED BY "Dameng12345";
SP_SET_PARA_VALUE(2,'ENABLE_LOCAL_OSAUTH',1);
COMMIT;
重新启动数据库服务器,使INI参数生效
2、在操作系统中创建dmusers用户组,并将操作系统用户dmdba添加到dmusers用户组。
groupadd dmusers
usermod -G dmusers dmdba
3、操作系统用户dmdba基于OS的身份验证登录数据库以及基于DB身份登录数据库。
disql / as users
SELECT distinct USER as 当前登录用户 FROM USER_ROLE_PRIVS;
disql dmdba/Dameng123123
SELECT distinct USER as 当前登录用户 FROM USER_ROLE_PRIVS;

达梦社区地址:https://eco.dameng.com