千家信息网

怎么执行SQL语句进行归档备份

发表于:2024-10-19 作者:千家信息网编辑
千家信息网最后更新 2024年10月19日,这篇文章主要介绍"怎么执行SQL语句进行归档备份",在日常操作中,相信很多人在怎么执行SQL语句进行归档备份问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"怎么执行SQL
千家信息网最后更新 2024年10月19日怎么执行SQL语句进行归档备份

这篇文章主要介绍"怎么执行SQL语句进行归档备份",在日常操作中,相信很多人在怎么执行SQL语句进行归档备份问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"怎么执行SQL语句进行归档备份"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

1. 概述
在DIsql工具中使用BACKUP语句可以备份归档日志。使用归档备份的前提:一是,归档文件的db_magic值和库的db_magic值必须一样;二是,服务器必须配置归档;三是,归档日志必须连续,如果出现不连续的情况,前面的会忽略,仅备份最新的连续部分。如果未收集到指定范围内的归档,则不会备份。联机备份的时候经常会切换归档文件,最后一个归档总是空的,所以最后一个归档不会被备份。

DIsql中输入以下即可备份归档:

SQL> select * from v$dm_ini where para_name='BAK_PATH';LINEID     PARA_NAME PARA_VALUE                          MIN_VALUE MAX_VALUE MPP_CHK SESS_VALUE                          FILE_VALUE                          DESCRIPTION      PARA_TYPE---------- --------- ----------------------------------- --------- --------- ------- ----------------------------------- ----------------------------------- ---------------- ---------1          BAK_PATH  /dm_home/dmdba/dmdbms/data/jydm/bak NULL      NULL      N       /dm_home/dmdba/dmdbms/data/jydm/bak /dm_home/dmdba/dmdbms/data/jydm/bak backup file path READ ONLYused time: 7.311(ms). Execute id is 1219.SQL> backup archive log all to archivelog_backup_2020052901 backupset 'archivelog_backup_2020052901';backup archive log all to archivelog_backup_2020052901 backupset 'archivelog_backup_2020052901';[-7109]:Pipe connect failure.used time: 2.618(ms). Execute id is 0.

在Oracle Linux7.1中要使用dmap需要手动启动DmAPService服务和dmap执行码,在Redhat中启动DmAPService服务时会同时启动dmap

[root@shard1 bak]# systemctl start DmAPService[dmdba@shard1 ~]$ cd /dm_home/dmdba/dmdbms/bin[dmdba@shard1 bin]$ ./dmapdmap V7.1.6.46-Build(2018.02.08-89107)ENTdmap is readySQL> backup archive log all to archivelog_backup_2020052901 backupset 'archivelog_backup_2020052901';executed successfullyused time: 00:00:34.482. Execute id is 1234.SQL> select * from v$backupset where backup_path='/dm_home/dmdba/dmdbms/data/jydm/bak/archivelog_backup_2020052901';LINEID     DEVICE_TYPE BACKUP_ID   PARENT_ID   BACKUP_NAME                  BACKUP_PATH                                                      TYPE        LEVEL       RANGE#      OBJECT_NAME OBJECT_ID   BASE_NAME BACKUP_TIME                 DESC# ENCRYPT_TYPE COMPRESS_LEVEL WITHOUT_LOG USE_PWR     PKG_SIZE    BEGIN_LSN            END_LSN              BKP_NUM     DBF_NUM     PARALLEL_NUM DDL_CLONE   MPP_FLAG    MIN_TRX_START_LSN    MIN_EXEC_VER CUMULATIVE---------- ----------- ----------- ----------- ---------------------------- ---------------------------------------------------------------- ----------- ----------- ----------- ----------- ----------- --------- --------------------------- ----- ------------ -------------- ----------- ----------- ----------- -------------------- -------------------- ----------- ----------- ------------ ----------- ----------- -------------------- ------------ -----------1          DISK        -30479448   -1          ARCHIVELOG_BACKUP_2020052901 /dm_home/dmdba/dmdbms/data/jydm/bak/archivelog_backup_2020052901 3           0           4           ARCHIVE     -1                    2020-05-29 18:44:25.000480        0            0              1           0           33554432    8236220              15088441             1           9           1            0           0           15088441             117507596    0used time: 00:00:01.010. Execute id is 1266.SQL> select * from v$parameter where name='BAK_USE_AP';LINEID     ID          NAME       TYPE VALUE SYS_VALUE FILE_VALUE DESCRIPTION---------- ----------- ---------- ---- ----- --------- ---------- -----------------------------------------------------------------------------------1          541         BAK_USE_AP SYS  1     1         1          backup use assistant plus-in, 0:use sub process; 1:use AP; 2:not use AP. default 1.used time: 6.765(ms). Execute id is 1252.SQL> select * from v$parameter where name='BAK_POLICY';LINEID     ID          NAME       TYPE VALUE SYS_VALUE FILE_VALUE DESCRIPTION---------- ----------- ---------- ---- ----- --------- ---------- --------------1          7           BAK_POLICY SYS  0     0         0          backup patternused time: 7.405(ms). Execute id is 1253.

备份集"archivelog_backup_2020052901"会生成到默认的备份路径下。如要设置其他备份选项需参考下文的备份归档语法。

语法如下:

BACKUP[ALL | [FROM LSN ]| [UNTIL LSN ]|[LSN BETWEEN  AND ] | [FROM TIME '']|[UNTIL TIME '']|[TIME BETWEEN''> AND '']][][DELETE INPUT][TO < 备份名>]BACKUPSET ['< 备份集路径>'][DEVICE TYPE < 介质类型> [PARMS '< 介质参数>']][BACKUPINFO '< 备份描述>'][MAXPIECESIZE < 备份片限制大小>][IDENTIFIED BY < 密钥>[WITH ENCRYPTION][ENCRYPT WITH < 加密算法>]][COMPRESSED [LEVEL < 压缩级别>]][WITHOUT LOG][TRACE FILE ''] [TRACE LEVEL ][TASK THREAD < 线程数>][PARALLEL [< 并行数>]];

ALL:备份所有的归档;

FROM LSN:指定备份的起始lsn。

UNTIL LSN:指定备份的截止lsn。归档日志的有效LSN范围(起始lsn,截止lsn)可以通过V$ARCH_FILE查看,或者通过dmclvt工具分析日志的结果查看。如果用户无法确定准确的lsn,也可以指定一个模糊的lsn值,取值范围(1~9223372036854775807)。只要指定的FROM LSN、UNTIL LSN与有效LSN范围有重叠部分,就会备份包含重叠部分的完整日志文件。

FROM TIME:指定备份的开始的时间点。

UNTILTIME:指定备份的截止的时间点。
BETWEEN ... AND ...:指定备份的区间。指定区间后,只会备份指定区间内的归档文件。:搜索过滤。搜索过滤仅限于根据备份指定条件能找到的所有归档备份集。1) num TIMES,取值范围为0~2147483647,指若归档文件已经备份了num次,则不再备份;否则备份。如num=3,则认为已经备份了3次的归档文件就不再备份。若num=0,则认为所有都不需要备份。2)SINCE TIME 'datetime_String',指定时间开始没有备份的归档文件进行备份。3)若以上两种均未指定,则备份所有未备份过的归档日志文件。

DELETE INPUT:用于指定备份完成之后,是否删除归档操作。

TO:指定生成备份名称。若未指定,系统随机生成,默认备份名格式为:ARCH_备份时间。其中,备份时间为开始备份的系统时间。

BACKUPSET:指定当前备份集生成路径,若指定为相对路径,则在默认备份路径中生成备份集。若不指定具体备份集路径,则在默认备份路径下,以约定归档备份集命名规则生成默认的归档备份集目录。归档备份默认备份集目录名生成规则:ARCH_LOG_时间,如
ARCH_LOG_20160518_143057_123456。表明该备份集为2016年5月18日14时30分57秒123456毫秒时生成的归档备份集。

DEVICE TYPE:指存储备份集的介质类型,支持DISK和TAPE,默认DISK。DISK表示存储备份集到磁盘,TAPE表示存储到磁带。

PARMS:只对介质类型为TAPE时有效。

BACKUPINFO:备份的描述信息。最大不超过256个字节。

MAXPIECESIZE:最大备份片文件大小上限,以M为单位,最小128M,32位系统最大2G,64位系统最大128G。

IDENTIFIED BY:指定备份时的加密密码。密码应该使用双引号括起来,这样避免一些特殊字符通不过语法检测。密码的设置规则遵行ini参数pwd_policy指定的口令策略。

WITH ENCRYPTION:指定加密类型,0表示不加密,不对备份文件进行加密处理;1表示简单加密,对备份文件设置口令,但文件内容仍以明文存储;2表示完全数据加密,对备份文件进行完全的加密,备份文件以密文方式存储。

ENCRYPT WITH:加密算法。缺省情况下,算法为AES256_CFB。

加密算法包括:

DES_ECB、DES_CBC、DES_CFB、DES_OFB、DESEDE_ECB、DESEDE_CBC、DESEDE_CFB、DESEDE_OFB、AES128_ECB、AES128_CBC、AES128_CFB 、AES128_OFB、AES192_ECB、AES192_CBC、AES192_CFB 、AES192_OFB、AES256_ECB、AES256_CBC、AES256_CFB 、AES256_OFB 、RC4

COMPRESSED:取值范围0~9。0表示不压缩,1表示1级压缩,9表示9级压缩。压缩级别越高,压缩越慢,但压缩比越高。若未指定,但指定COMPRESSED,则默认1;否则,默认0。

WITHOUT LOG:只是语法支持,不起任何作用。

TRACE FILE:指定生成的TRACE文件。启用TRACE,但不指定TRACE FILE时,默认在DM数据库系统的log目录下生成DM_SBTTRACE_年月.LOG文件;若使用相对路径,则生成在执行码同级目录下。若用户指定,则指定的文件不能为已经存在的文件,否则报错;也不可以为ASM文件。

TRACE LEVEL:有效值1、2,默认为1表示不启用TRACE,此时若指定了TRACE FILE,会生成TRACE文件,但不写入TRACE信息;为2启用TRACE并写入TRACE相关内容。

TASK THREAD:备份过程中数据处理过程线程的个数,取值范围0~64,默认为4。若指定为0,则调整为1;若指定超过当前系统主机核数,则调整为当前主机核数。线程数(TASK THREAD)*并行数(PARALLEL)不得超过512。

PARALLEL:指定并行备份的并行数,取值范围0~128。若不指定,则默认为4,指定0或者1均认为为非并行备份。并行备份不支持介质为TAPE的备份。线程数(TASK THREAD)*并行数(PARALLEL)不得超过512。

2. 设置备份选项
归档备份常用的备份选项有设置备份名、设置备份集路径、指定介质参数、添加备份描述等,设置方式同数据库备份相同。

3. 备份归档
归档备份拷贝指定归档目录下的所有的归档文件到备份集中,并记录各个归档文件的属性,文件大小,LSN区间等。归档备份不存在增量备份
之说。当需要保存库的归档时,可以使用归档备份。
完整的备份归档步骤如下:
1) 配置归档,参考3.1节。
2) 数据库处于OPEN或者MOUNT状态。
3) DIsql中输入备份数据库语句。
例如,备份归档日志,通过LSN BETWEEN ... AND ...来指定起始和截至LSN。
首先,确定LSN范围。

SQL> select ARCH_LSN, CLSN, PATH from V$ARCH_FILE;LINEID     ARCH_LSN             CLSN                 PATH---------- -------------------- -------------------- ----------------------------------------------------------------------1          0                    0                    /dm_home/dmdba/dmdbms/data/arch/ARCHIVE_LOCAL1_20200529193925775_0.log2          8236220              8493250              /dm_home/dmdba/dmdbms/data/arch/ARCHIVE_LOCAL1_20200407140301179_0.log3          8493250              9294927              /dm_home/dmdba/dmdbms/data/arch/ARCHIVE_LOCAL1_20200407225606099_0.log4          9294928              11047946             /dm_home/dmdba/dmdbms/data/arch/ARCHIVE_LOCAL1_20200410180147714_0.log5          11047947             11054313             /dm_home/dmdba/dmdbms/data/arch/ARCHIVE_LOCAL1_20200425175952636_0.log6          11054313             12906866             /dm_home/dmdba/dmdbms/data/arch/ARCHIVE_LOCAL1_20200509201513282_0.log7          12906867             13775969             /dm_home/dmdba/dmdbms/data/arch/ARCHIVE_LOCAL1_20200513203613043_0.log8          13775970             14461220             /dm_home/dmdba/dmdbms/data/arch/ARCHIVE_LOCAL1_20200526003546144_0.log9          14461221             14942037             /dm_home/dmdba/dmdbms/data/arch/ARCHIVE_LOCAL1_20200526003632028_0.log10         14942037             15088441             /dm_home/dmdba/dmdbms/data/arch/ARCHIVE_LOCAL1_20200528230749046_0.log11         15088442             15092081             /dm_home/dmdba/dmdbms/data/arch/ARCHIVE_LOCAL1_20200529184351533_0.log12         15092082             15092086             /dm_home/dmdba/dmdbms/data/arch/ARCHIVE_LOCAL1_20200529193755551_0.log12 rows got

通过查询结果选出备份的起始LSN和截至LSN。比如15092082 15092086

其次,备份归档。

SQL> backup archivelog lsn between 15092082 and 15092086 backupset 'arch_backup_lsn_15092082_15092086';executed successfullyused time: 00:00:01.174. Execute id is 1316.SQL> select * from v$backupset where backup_path='/dm_home/dmdba/dmdbms/data/jydm/bak/arch_backup_lsn_15092082_15092086';LINEID     DEVICE_TYPE BACKUP_ID   PARENT_ID   BACKUP_NAME                 BACKUP_PATH                                                           TYPE        LEVEL       RANGE#      OBJECT_NAME OBJECT_ID   BASE_NAME BACKUP_TIME                 DESC# ENCRYPT_TYPE COMPRESS_LEVEL WITHOUT_LOG USE_PWR     PKG_SIZE    BEGIN_LSN            END_LSN              BKP_NUM     DBF_NUM     PARALLEL_NUM DDL_CLONE   MPP_FLAG    MIN_TRX_START_LSN    MIN_EXEC_VER CUMULATIVE---------- ----------- ----------- ----------- --------------------------- --------------------------------------------------------------------- ----------- ----------- ----------- ----------- ----------- --------- --------------------------- ----- ------------ -------------- ----------- ----------- ----------- -------------------- -------------------- ----------- ----------- ------------ ----------- ----------- -------------------- ------------ -----------1          DISK        -1385444837 -1          ARCH_20200529_194216_000768 /dm_home/dmdba/dmdbms/data/jydm/bak/arch_backup_lsn_15092082_15092086 3           0           4           ARCHIVE     -1                    2020-05-29 19:42:17.000861        0            0              1           0           33554432    15092082             15092086             1           1           1            0           0           15092086             117507596    0used time: 00:00:01.013. Execute id is 1317.

到此,关于"怎么执行SQL语句进行归档备份"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!

备份 文件 生成 范围 加密 路径 日志 时间 语句 数据 系统 目录 存储 最大 介质 区间 数据库 语法 学习 起始 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 网络安全加密技术大作业 南京app软件开发外包 河北棋牌软件开发工作室 数据库前件后件是什么 多长时间要检测一次网络安全评估 vm服务器系统 安徽服务器电源公司有哪些 杭州互惠网络技术服务 我的世界网易服务器关闭状态 软件开发培训哪里最好 洛阳花魁软件开发有限公司 渝北区一站式网络技术内容 数字政府网络安全体系规划 网络安全技术 知乎 嘉定区网络技术服务产品 莆田网络安全宣传语 分包商的网络安全管理制度 搭建数据库erp 软件开发培训编程培训c 新建数据库表字段怎么填 网络安全网上培训机构 中国网络安全与信息化工程 清华大学网络技术视频教程 工控机应用软件开发 dnf读取服务器很慢 sql查询不在表中的数据库 计算机三级数据库技术填空题 云主机网络安全免责协议书 国家网络安全宣传周观安 软件教育现代化万方数据库查不到
0