DIsql工具功能介绍:
DIsql联机备份支持数据库、表空间、表和归档的备份,用户表空间、用户表的还原。在进行联机库级备份、归档备份表空间备份和表空间还原时,必须保证系统处于归档模式,否则联机备份还原不能进行。
联机备份之前,要求数据库必须配置本地归档且归档必须处于开启状态。即配置dm.ini中ARCH_INI 参数和dmarch.ini 配置。设置 INI 参数 BAK_POLICY,使用合适的备份策略。
执行联机操作时,语句的解析执行使用的是 DM 服务器的编码方式,而文件操作使用操作系统的编码方式。因此,当 DM 建库参数的编码方式与操作系统编码方式不一致时,使用中文文件名或路径名等可能造成控制台打印信息和日志文件中的信息的中文部分显示乱码。
备份数据库:
SQL>BACKUP DATABASE BACKUPSET 'dm8_bak';
以上示例中的各参数为备份中必选参数;
SQL>BACKUP DATABASE TO FULL_BAK BACKUPSET 'DM8_BAK_01' BACKUPINFO '完全备份' COMPRESSED LEVEL 3 PARALLEL 8;
参数解释:备份名设置为“FULL_BAK”,备份描述信息为“完全备份”,压缩级别设置为3,备份并行数为8。
TO:指定生成备份名称。
BACKUPSET:备份存放路径。如果仅指定备份集名称即指定为相对路径,生成备份集到默认的备份路径下。如果仅指定该关键字,不指定目标备份集目录,会在默认备份路径下自动生成。
COMPRESSED: 备份压缩级别。先压缩再写入磁盘。压缩级别为 0~9。
PARALLE:并行备份。执行备份时实际使用的并行数由用户指定的并行数和实际可使用的最大并行数决定,而实际可使用的最大并行数由数据文件的个数决定。
备份表空间:
temp 表空间不支持联机备份。
SQL>BACKUP TABLESPACE DMHR BACKUPSET 'DMHR_BAK';
备份表:
SQL>BACKUP TABLE EMPLOYEE BACKUPSET 'EMPLOYEE_bak';
备份归档:
SQL>BACKUP ARCHIVE LOG ALL BACKUPSET 'arch_bak';
参数介绍:
ALL:备份所有的归档;
FROM LSN:指定备份的起始 lsn。
UNTIL LSN:指定备份的截止 lsn
FROM TIME:指定备份的开始的时间点。
UNTILTIME:指定备份的截止的时间点。
BETWEEN ... AND ...:指定备份的区间。指定区间后,只会备份指定区间内的归档文件。
DELETE INPUT:用于指定备份完成之后,是否删除归档操作
使用起止LSN备份归档:
SQL> SELECT ARCH_LSN, CLSN, PATH from V$ARCH_FILE;
SQL> BACKUP ARCHIVELOG LSN BETWEEN 130947 AND 135678 BACKUPSET 'ARCH_BAK_47_78'
加密+设置跟踪日志文件备份数据库:
SQL>BACKUP DATABASE BACKUPSET 'DM8_bak_for_encrypt' IDENTIFIED BY "abd123456" ENCRYPT WITH RC4 TRACE FILE 'D:\dmdbms\data\DAMENG\bak\dm8_trace.log' TRACE LEVEL 1;
参数介绍:
IDENTIFIED BY:指定加密密码,密码长度为 9 到 48 个字节。若密码长度不符合要求会报错;
WITH ENCRYPTION:指定加密类型;
ENCRYPT WITH :指定加密算法,SELECT * FROM V$CIPHERS,查询DM支持的加密算法;
TRACE FILE:指定生成的跟踪日志文件路径;
TRACE LEVEL:表示是否启用 TRACE,1 表示不启用 TRACE 功能,2 表示启用,系统默认值为 1。
备份管理相关动态视图如下:
V$BACKUPSET:显示备份集基本信息。
V$BACKUPSET_DBINFO:显示备份集的数据库相关信息。
V$BACKUPSET_DBF:显示备份集中数据文件的相关信息。
V$BACKUPSET_ARCH:显示备份集的归档信息。
V$BACKUPSET_BKP:显示备份集的备份片信息。
V$BACKUPSET_SEARCH_DIRS:显示备份集搜索目录。
V$BACKUPSET_TABLE:显示表备份集中备份表信息。
V$BACKUPSET_SUBS:显示并行备份中生成的子备份集信息。
例如:
select * from V$BACKUPSET where backup_path='D:\dmdbms\data\DAMENG\bak\DM8_BAK_01';
select * from V$BACKUPSET_TABLE;
欢迎访问达梦官方社区,获取更多内容: https://eco.dameng.com