12C CDB模式下RMAN备份与恢复_3

背景:


阅读新闻

12C CDB模式下RMAN备份与恢复

[日期:2016-11-29]

来源:Linux社区

作者:wenzhongyan

[字体:大 中 小]

12C 的RMAN和Oracle Enterprise Manager Cloud Control工具支持多租户环境下的备份和恢复,RMAN可以连接到目标数据库、Data Guard、辅助实例或辅助数据库,通过连接数据库的类型不同,所完成的数据库操作也不相同,在这里我们主要描述CDB和PDB备份恢复操作,在PDB环境中支持备份或恢复单个数据文件或表空间。

在从数据丢失恢复能力而言,单独备份根和所有的PDB相当于备份整个CDB。主要的区别是在RMAN命令的数目,您必须输入和恢复时间。恢复整个CDB$ROOT的时间要比所有的PDB的时间少。

1.1. RMAN连接数据库

RMAN可通过操作系统认证和密码文件两种方式连接到一个目标数据库,使用RMAN备份恢复工具的用户需要具有SYSDBA或SYSBACKUP系统权限,如果用户需要连接到恢复目录,需要被授予RECOVERY_CATALOG_OWNER对象权限。

操作系统认证

我们在LINUX环境中使用操作系统认证方式连接到数据库,我们需要满足以下两个条件:

设定ORACLE_SID变量,例如数据库的SID为orcl,因此我们在.bash_profile文件或者命令行设置ORACLE_SID变量。

ORACLE_SID=orcl; export ORACLE_SID

执行rman命令用户需要具有SYSDBA或者SYSBACKUP权限,Linux环境下的OSDBA用户组为dba。

具有SYSDBA权限用户连接到RMAN

rman target '"/ as sysdba"'

具有SYSBACKUP权限用户连接到RMAN

rman target '"/ as sysbackup"'

具有SYSDBA权限用户隐式连接到RMAN

rman target /

密码文件认证

数据库使用密码文件认证管理用户,RMAN可以使用密码连接。使用本地或远程访问的密码文件。使用服务名方式连接数据库时,数据库必须使用一个密码文件,同样连接到数据库的用户需要具有SYSDBA或SYSBACKUP权限。

密码文件认证具有SYSDBA权限用户连接到RMAN

rman target '"zlhis@orcl assysdba"'

target database Password: password

connected to target database: orcl(DBID=39525561)

密码文件认证具有SYSBACKUP权限用户连接到RMAN

rman target '"zlhis@orcl as sysbackup"'

target database Password: password

connected to target database: orcl(DBID=39525561)

1.2. 只备份CDB

只备份CDB数据库需要具有SYSDBA或SYSBACKUP权限用户连接到CDB的root环境下,执行backupdatabase root命令即可完成对CDB的备份,方法如下:

RMAN> backupdatabase root;

启动 backup 于 17-3月 -16

分配的通道: ORA_DISK_1

通道 ORA_DISK_1: SID=50 设备类型=DISK

通道 ORA_DISK_1: 正在启动全部数据文件备份集

通道 ORA_DISK_1: 正在指定备份集内的数据文件

输入数据文件: 文件号=00001 名称=/u01/app/oracle/oradata/cdb/system01.dbf

输入数据文件: 文件号=00003 名称=/u01/app/oracle/oradata/cdb/sysaux01.dbf

输入数据文件: 文件号=00004 名称=/u01/app/oracle/oradata/cdb/undotbs01.dbf

输入数据文件: 文件号=00006 名称=/u01/app/oracle/oradata/cdb/users01.dbf

通道 ORA_DISK_1: 正在启动段 1 于 17-3月 -16

通道 ORA_DISK_1: 已完成段 1 于 17-3月 -16

段句柄=/u01/app/oracle/fast_recovery_area/CDB/backupset/2016_03_17/o1_mf_nnndf_TAG20160317T152301_cgnptp1s_.bkp标记=TAG20160317T152301 注释=NONE

通道 ORA_DISK_1: 备份集已完成, 经过时间:00:01:55

完成 backup 于 17-3月 -16

启动 Control File and SPFILE Autobackup 于 17-3月 -16段handle=/u01/app/oracle/fast_recovery_area/CDB/autobackup/2016_03_17/o1_mf_s_906737097_cgnpydod_.bkpcomment=NONE

完成 Control File and SPFILE Autobackup 于 17-3月 -16

执行backup database root不给数据文件保存位置时,备份文件默认存放在快速恢复区中。

1.3. 备份整个CDB及其下面的所有PDB

备份整个CDB数据库及其下面的所有PDB类似于非CDB数据库方法相同,使用具有SYSDBA或SYSBACKUP权限用户连接到CDB的root环境下面,然后执行backupdatabase命令即可完成整个CDB的备份,方法如下:

RMAN> backup database;

启动 backup 于 17-3月 -16

分配的通道: ORA_DISK_1

通道 ORA_DISK_1: SID=50 设备类型=DISK

通道 ORA_DISK_1: 正在启动全部数据文件备份集

通道 ORA_DISK_1: 正在指定备份集内的数据文件

输入数据文件: 文件号=00001 名称=/u01/app/oracle/oradata/cdb/system01.dbf

输入数据文件: 文件号=00003 名称=/u01/app/oracle/oradata/cdb/sysaux01.dbf

输入数据文件: 文件号=00004 名称=/u01/app/oracle/oradata/cdb/undotbs01.dbf

输入数据文件: 文件号=00006 名称=/u01/app/oracle/oradata/cdb/users01.dbf

输入数据文件: 文件号=00009 名称=/u01/app/oracle/oradata/cdb/pdb1/sysaux01.dbf

输入数据文件: 文件号=00008 名称=/u01/app/oracle/oradata/cdb/pdb1/system01.dbf

输入数据文件: 文件号=00010 名称=/u01/app/oracle/oradata/cdb/pdb1/pdb1_users01.dbf

通道 ORA_DISK_1: 正在启动段 1 于 17-3月 -16

通道 ORA_DISK_1: 已完成段 1 于 17-3月 -16

段句柄=/u01/app/oracle/fast_recovery_area/CDB/backupset/2016_03_17/o1_mf_nnndf_TAG20160317T152301_cgnptp1s_.bkp标记=TAG20160317T152301注释=NONE

通道 ORA_DISK_1: 备份集已完成, 经过时间:00:01:55

完成 backup 于 17-3月 -16

启动 Control File andSPFILE Autobackup 于17-3月-16段handle=/u01/app/oracle/fast_recovery_area/CDB/autobackup/2016_03_17/o1_mf_s_906737097_cgnpydod_.bkpcomment=NONE

完成 Control File andSPFILE Autobackup 于17-3月-16

1.4. 备份单个和多个PDB

在CDB中允许备份一个或多少PDB数据库,备份一个PDB数据库可以通过以下两个方式备份:

在CDB根(root)使用BACKUP PLUGGABLE DATABASE命令备份一个或多个PDB数据库。

[oracle@localhost ~]$ rman target /

恢复管理器: Release 12.1.0.2.0 - Production on 星期二 3月 22 17:11:27 2016

Copyright (c) 1982, 2014, Oracle and/or itsaffiliates. All rights reserved.

已连接到目标数据库: CDB (DBID=2023252752)

RMAN> backuppluggable database pdb1;

启动 backup 于 22-3月 -16

使用目标数据库控制文件替代恢复目录

分配的通道: ORA_DISK_1

通道 ORA_DISK_1: SID=57 设备类型=DISK

通道 ORA_DISK_1: 正在启动全部数据文件备份集

通道 ORA_DISK_1: 正在指定备份集内的数据文件

输入数据文件: 文件号=00009 名称=/u01/app/oracle/oradata/cdb/pdb1/sysaux01.dbf

输入数据文件: 文件号=00008 名称=/u01/app/oracle/oradata/cdb/pdb1/system01.dbf

输入数据文件: 文件号=00010 名称=/u01/app/oracle/oradata/cdb/pdb1/pdb1_users01.dbf

通道 ORA_DISK_1: 正在启动段 1 于 22-3月 -16

通道 ORA_DISK_1: 已完成段 1 于 22-3月 -16段句柄=/u01/app/oracle/fast_recovery_area/CDB/2E26709E68912450E055000000000001/backupset/2016_03_22/o1_mf_nnndf_TAG20160322T171142_ch232hxb_.bkp标记=TAG20160322T171142 注释=NONE

通道 ORA_DISK_1: 备份集已完成, 经过时间:00:01:05

完成 backup 于 22-3月 -16

启动 Control File and SPFILE Autobackup 于 22-3月 -16段handle=/u01/app/oracle/fast_recovery_area/CDB/autobackup/2016_03_22/o1_mf_s_907175569_ch234n0h_.bkpcomment=NONE

完成 Control File and SPFILE Autobackup 于 22-3月 -16

如果要备份多个pdb,只需在备份命令后面跟上多个你想备份的pdb实例的名称,如下backup pluggable database pdb1,pdb2;

在PDB中使用BACKUP DATABASE备份当前连接的PDB数据库,前提条件是需要配置好TNSNAMES.ORA文件。

[oracle@localhost admin]$ rman target sys/oracle@pdb1

恢复管理器: Release 12.1.0.2.0 - Production on 星期三 3月 23 09:35:16 2016

Copyright (c) 1982, 2014, Oracle and/or itsaffiliates. All rights reserved.

已连接到目标数据库: CDB (DBID=2023252752)

RMAN> backup database;

启动 backup 于 23-3月 -16

使用目标数据库控制文件替代恢复目录

分配的通道: ORA_DISK_1

通道 ORA_DISK_1: SID=69 设备类型=DISK

通道 ORA_DISK_1: 正在启动全部数据文件备份集

通道 ORA_DISK_1: 正在指定备份集内的数据文件

输入数据文件: 文件号=00009 名称=/u01/app/oracle/oradata/cdb/pdb1/sysaux01.dbf

输入数据文件: 文件号=00008 名称=/u01/app/oracle/oradata/cdb/pdb1/system01.dbf

输入数据文件: 文件号=00010 名称=/u01/app/oracle/oradata/cdb/pdb1/pdb1_users01.dbf

通道 ORA_DISK_1: 正在启动段 1 于 23-3月 -16

通道 ORA_DISK_1: 已完成段 1 于 23-3月 -16

段句柄=/u01/app/oracle/fast_recovery_area/CDB/2E26709E68912450E055000000000001/backupset/2016_03_23/o1_mf_nnndf_TAG20160323T100113_ch3y7byj_.bkp标记=TAG20160323T100113 注释=NONE

通道 ORA_DISK_1: 备份集已完成, 经过时间:00:01:05

完成 backup 于 23-3月 -16

启动 Control File and SPFILE Autobackup 于 23-3月 -16段handle=/u01/app/oracle/fast_recovery_area/CDB/autobackup/2016_03_23/o1_mf_s_907236140_ch3y9jyb_.bkpcomment=NONE

完成 Control File and SPFILE Autobackup 于 23-3月 -16

1.5. 整体数据库恢复(CDB和所有PDB)

12C数据库加强了RMAN恢复的功能,恢复的方式基本同以前的模式一样,如果是在一个全新的异地进行恢复,同样的也是先手工创建与原库相同的CDB和PDB实例,然后关闭实例,删除所有数据文件,通过RMAN命令或者拷贝原始库的控制文件到新库上,启动CDB数据库到mount状态,如下

[oracle@localhostadmin]$rman target /

恢复管理器: Release 12.1.0.2.0 -Production on 星期三 7月 13 11:27:33 2016

Copyright(c) 1982, 2014, Oracle and/or its affiliates. All rights reserved.

已连接到目标数据库 (未启动)

RMAN>startup mount;

Oracle实例已启动

数据库已装载

系统全局区域总计 2516582400 字节

FixedSize 3048776 字节

VariableSize 671091384 字节

DatabaseBuffers 1828716544 字节

RedoBuffers 13725696 字节

RMAN>restoredatabase;

。。。。。。。(此处省略)

通道 ORA_DISK_1: 将数据文件 00098 还原到 ….ORADATA/ORCL/ZL9WZARDDATA.DBF

通道 ORA_DISK_1: 将数据文件 00099 还原到 ….ORADATA/ORCL/ZL9IDEXPSS.DBF

通道 ORA_DISK_1: 将数据文件 00100 还原到 ….ORADATA/ORCL/ZLBA5.DBF

通道 ORA_DISK_1: 将数据文件 00101 还原到 ….ORADATA/ORCL/MGMTAD4J.DBF

通道 ORA_DISK_1: 将据文件 00102 还原到 ….ORADATA/ORCL/MGMTDBF

通道 ORA_DISK_1: 将数据文件 00103 还原到 ….ORADATA/ORCL/MGMTDEPOT.DBF

通道 ORA_DISK_1: 正在读取备份片段 /u01/app/oracle/fast_recovery_area/CDB/autobackup/01RAH8KJ_1_1

通道 ORA_DISK_1: 将数据文件 00002 还原到 ….ORADATA/CDB/PDBSEED/SYSTEM01.DBF

通道 ORA_DISK_1:` 将数据文件 00004 还原到 ….ORADATA/CDB/PDBSEED/SYSAUX01.DBF

通道 ORA_DISK_1: 正在读取备份片段D:\APP\RMAN\04RAH9B2_1_1

。。。。。。。(此处略过)

通道 ORA_DISK_1: ORA-19870:还原备份片段 /u01/app/oracle/fast_recovery_area/CDB/autobackup 04RAH9B2_1_1 时出错

ORA-19504:无法创建文件"….ORADATA/CDB/PDBSEED/SYSAUX01.DBF"

ORA-27040:文件创建错误, 无法创建文件

OSD-04002:无法打开文件

O/S-Error:(OS 3) 系统找不到指定的路径。

故障转移到上一个备份

RMAN-00571:===========================================================

RMAN-00569:===============ERROR MESSAGE STACK FOLLOWS===============

RMAN-00571:===========================================================

RMAN-03002:restore 命令 (在 07/13/2016 11:55:19 上) 失败

RMAN-06026:有些目标没有找到 - 终止还原

RMAN-06023:没有找到数据文件4的副本来还原

RMAN-06023:没有找到数据文件2的副本来还原

在还原的时候可能遇到RMAN-06023错误,这是由于恢复数据文件路径不存在导致,我只需要手工创建路径,然后重复执行下restore database命令就可以了,之前已经恢复的文件会自动略过,如下

。。。。。。。(此处省略)

正在略过数据文件111; 已还原到文件 ....ORADATA/ZLEMR/ZLDOCBASE.DBF

正在略过数据文件112; 已还原到文件 ....ORADATA/ZLEMR/ZLDOCINDEX.DBF

正在略过数据文件113; 已还原到文件 ....ORADATA/ZLEMR/ZLDOCDATA.DBF

正在略过数据文件114; 已还原到文件 ....ORADATA/ZLEMR/ZLDOCDATAINDEX.DBF

正在略过数据文件115; 已还原到文件 ....ORADATA/ZLEMR/ZLDOCXML.DBF

通道 ORA_DISK_1: 正在开始还原数据文件备份集

通道 ORA_DISK_1: 正在指定从备份集还原的数据文件

通道 ORA_DISK_1: 将数据文件 00002 还原到 ....ORADATA/CDB/PDBSEED/SYSTEM01.DBF

通道 ORA_DISK_1: 将数据文件 00004 还原到 ....ORADATA/CDB/PDBSEED/SYSAUX01.DBF

通道 ORA_DISK_1: 正在读取备份片段D:\APP\RMAN\04RAH9B2_1_1

通道 ORA_DISK_1: 已还原备份片段 1

通道 ORA_DISK_1: 还原完成, 用时: 00:00:55

完成 restore 于 13-7月 -16

RMAN>recoverdatabase;

。。。。。。(此处省略)

归档日志文件名=…..ARCHIVE/ARC0000000588_0915209064.0001线程=1 序列=588

归档日志文件名=…..ARCHIVE/ARC0000000589_0915209064.0001线程=1 序列=589

归档日志文件名=…..ARCHIVE/ARC0000000590_0915209064.0001线程=1 序列=590

归档日志文件名=…..ARCHIVE/ARC0000000591_0915209064.0001线程=1 序列=591

归档日志文件名=…..ARCHIVE/ARC0000000592_0915209064.0001线程=1 序列=592

归档日志文件名=…..ARCHIVE/ARC0000000593_0915209064.0001线程=1 序列=593

归档日志文件名=…..ARCHIVE/ARC0000000594_0915209064.0001线程=1 序列=594

归档日志文件名=…..ARCHIVE/ARC0000000595_0915209064.0001线程=1 序列=595

介质恢复完成, 用时: 00:04:32

完成 recover 于 13-7月 -16

RMAN>alter database open resetlogs;

已处理语句

1.6. 单个PDB数据库恢复

恢复单个PDB的前提是CDB已经能够正常启动,在CDB启动的情况下在RMAN中采用restore pluggable database pdb名称指定单个PDB数据库进行恢复,如下

RMAN>restore pluggable database orcl;

启动 restore 于 13-7月 -16

使用通道 ORA_DISK_1

通道 ORA_DISK_1: 正在开始还原数据文件备份集

通道 ORA_DISK_1: 正在指定从备份集还原的数据文件

通道 ORA_DISK_1: 将数据文件 00056 还原到 ....ORADATA/ORCL/SYSTEM01.DBF

通道 ORA_DISK_1: 将数据文件 00057 还原到 ....ORADATA/ORCL/SYSAUX01.DBF

通道 ORA_DISK_1: 将数据文件 00058 还原到 ....ORADATA/ORCL/USERS

。。。。。。。(此处省略)

通道 ORA_DISK_1: 将数据文件 00102 还原到 ....ORADATA/ORCL/MGMT.DBF

通道 ORA_DISK_1: 将数据文件 00103 还原到 ....ORADATA/ORCL/MGMT_DEPOT.DBF

通道 ORA_DISK_1: 正在读取备份片段D:\APP\RMAN\01RAH8KJ_1_1

通道 ORA_DISK_1: 段句柄=…..RMAN/01RAH8KJ_1_1 标记=TAG20160712T160849

通道 ORA_DISK_1: 已还原备份片段 1

通道 ORA_DISK_1: 还原完成, 用时: 00:07:07

完成 restore 于 13-7月 -16

RMAN>recover pluggable database orcl;

启动 recover 于 13-7月 -16

使用通道 ORA_DISK_1

正在开始介质的恢复

归档日志文件名=…..ARCHIVE/ARC0000000591_0915209064.0001线程=1 序列=591

归档日志文件名=…..ARCHIVE/ARC0000000592_0915209064.0001线程=1 序列=592

归档日志文件名=…..ARCHIVE/ARC0000000593_0915209064.0001线程=1 序列=593

归档日志文件名=…..ARCHIVE/ARC0000000594_0915209064.0001线程=1 序列=594

归档日志文件名=…..ARCHIVE/ARC0000000595_0915209064.0001线程=1 序列=595

介质恢复完成, 用时: 00:01:10

完成 recover 于 13-7月 -16

最后,在以restlogs方式,打开pdb实例,如下

SQL*Plus:Release 12.1.0.2.0 Production on 星期三 7月 13 15:12:57 2016

Copyright(c) 1982, 2014, Oracle. All rightsreserved.

SQL>conn / as sysdba

已连接。

SQL>show pdbs

CON_ID CON_NAME OPEN MODE RESTRICTED

---------------------------------------- ---------- ----------

2 PDB$SEED READ ONLY NO

3 ORCL MOUNTED

4 ZLEMR MOUNTED

SQL>alter pluggable database pdb1 orcl resetlogs;

插接式数据库已变更。

SQL>show pdbs

CON_ID CON_NAME OPEN MODE RESTRICTED

---------------------------------------- ---------- ----------

2 PDB$SEED READ ONLY NO

3 ORCL READ WRITE NO

4 ZLEMR MOUNTED

1.7. 恢复PDB数据文件

数据库在open的时候,会对当前的数据的所有数据文件进行检查。

对于system,sysaux和undo表空间的数据文件,如果有问题,数据库无法open。如果是PDB中某个普通的数据文件出现丢失,我们可以先用offline方式跳过,然后再打数据库,稍后再对数据文件做恢复:

例:

SQL> startup;

ORACLE instance started.

Total System Global Area 835104768 bytes

Fixed Size 2293880 bytes

Variable Size 322965384 bytes

Database Buffers 503316480 bytes

Redo Buffers 6529024 bytes

Database mounted.

ORA-01157: cannot identify/lock data file 6- see DBWR trace file

ORA-01110: data file 6:'/u01/app/oracle/oradata/c12/users01.dbf'

SQL> alter database datafile 6 offline;

Database altered.

SQL> alter dat九度快排系统 https://www.190seo.comabase open;

Database altered.

使用rman

RMAN> restore datafile 6;

RMAN> recover datafile 6;

然后对数据文件进行online处理

SQL> alter database datafile 6 online;

再看看pdb的数据文件.摸拟pdb数据文件删除

[oracle@o12c pdb2]$ mv pdb2_users01.dbfpdb2_users01.dbfold

启动数据库实例

SQL> startup;

ORACLE instance started.

Total System Global Area 835104768 bytes

Fixed Size 2293880 bytes

Variable Size 322965384 bytes

Database Buffers 503316480 bytes

Redo Buffers 6529024 bytes

Database mounted.

Database opened.

由此我们可以得出一个结论,当cdb在打开的时候,数据库不会检查pdb中的数据文件。

SQL> alter pluggable database pdb2 open;

alter pluggable database pdb2 open

ERROR at line 1:

ORA-01157: cannot identify/lock data file 13- see DBWR trace file

ORA-01110: data file 13:'/u01/app/oracle/oradata/c12/pdb2/pdb2_users01.dbf'

只有在打开pluggabledatabase时,会效验PDB数据库的数据文件,。

SQL> alter session set container=pdb2;

Session altered.

SQL> alter pluggable database datafile 13 offline;

Pluggable database altered.

数据文件file#(文件号)是唯一的,但我们在CDB中操作时找不到该文件,必须要进入PDB模式,如果在CDB试图去offline一个数据文件时会报错:

SQL> show con_name

CON_NAME

------------------------------

CDB$ROOT

SQL> alter database datafile 10 offline;

alter database datafile 10 offline

第 1 行出现错误:

ORA-01516: 不存在的日志文件, 数据文件或临时文件 "10"*

但是在rman中可以直接使用datafile号进行恢复

[oracle@localhost admin]$ rman target /

恢复管理器: Release 12.1.0.2.0 - Production on 星期三 3月 23 11:04:15 2016

Copyright (c) 1982, 2014, Oracle and/or itsaffiliates. All rights reserved.

已连接到目标数据库: CDB (DBID=2023252752)

RMAN> restore datafile 10;

启动 restore 于 23-3月 -16

使用通道 ORA_DISK_1

通道 ORA_DISK_1: 正在开始还原数据文件备份集

通道 ORA_DISK_1: 正在指定从备份集还原的数据文件

通道 ORA_DISK_1: 将数据文件 00010 还原到 /u01……/backupset/2016_03_23/o1_mf_nnndf_TAG20160323T100113_ch3y7byj_.bkp

通道 ORA_DISK_1: 段句柄=/u01…….backupset/2016_03_23/o1_mf_nnndf_TAG20160323T100113_ch3y7byj_.bkp标记=TAG20160323T100113

通道 ORA_DISK_1: 已还原备份片段 1

通道 ORA_DISK_1: 还原完成, 用时: 00:00:01

完成 restore 于 23-3月 -16

RMAN> recover datafile 10;

启动 recover 于 23-3月 -16

使用通道 ORA_DISK_1

正在开始介质的恢复

介质恢复完成, 用时: 00:00:00

完成 recover 于 23-3月 -16;

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-11/137678.htm

linux

ORA-00600 [3020] ORA-10560问题解决办法

CentOS 7 yum方式快速安装MongoDB

相关资讯

rman备份 12C CDB模式

RMAN备份与恢复 (今 16:11)

Oracle RAC 实验环境RMAN备份v1.01 (08月08日)

将Oracle数据库改为归档模式并启用 (05月23日)

Oracle RMAN 备份一例 (08月08日)

RMAN 备份与恢复实例 (07月12日)

通过shell脚本实现对Oracle RMAN备 (04月13日)

本文评论

查看全部评论 (0)

表情: 表情

姓名:

匿名

字数

同意评论声明

评论声明

尊重网上道德,遵守中华人民共和国的各项有关法律法规

承担一切因您的行为而直接或间接导致的民事或刑事法律责任

本站管理人员有权保留或删除其管辖留言中的任意内容

本站有权在网站内转载或引用您的评论

参与本评论即表明您已经阅读并接受上述条款

最新资讯

RMAN备份与恢复

Flask Web开发:基于Python的Web应用开发实

SSH 端口转发实战

使用Cobbler批量安装操作系统

Apache Httpd 2.2 配置全解析(CentOS6)

Apache Httpd 2.2 配置CA证书实现Https加密

GNOME 3.26.1 发布

CentOS6上编译安装httpd2.4 详解

使用OpenSSL实现CA证书的搭建过程

CentOS 7.2 双网卡绑定及相关问题解决

背景:

阅读新闻

CentOS 7 yum方式快速安装MongoDB

[日期:2016-11-29]

来源:Linux社区

作者:leshami

[字体:大 中 小]

MongoDB是深受广大开源爱好者支持和研究的NoSQL数据库之一,它基于灵活的JSON文档方式,非常适合敏捷开发,其高可用功能强大,支持水平扩展等众多关键特性。一如其简约而不简单的MySQL一样,安装起来也非常方便,支持源码编译安装,rpm安装以及yum安装等众多方式。本文主要讲述在CentOS 7下yum方式快速安装MongoDB。

一、安装环境及配置yum

# more /etc/RedHat-release

CentOS Linux release 7.2.1511 (Core)

# vi /etc/yum.repos.d/mongodb-org-3.2.repo

[mongodb-org-3.2]

name=MongoDB Repository

baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.2/x86_64/

gpgcheck=1

enabled=1

gpgkey=https://www.mongodb.org/static/pgp/server-3.2.asc

二、安装MongoDB

# yum -y install mongodb-org

Loaded plugins: fastestmirror, langpacks

base | 3.6 kB 00:00:00

epel/x86_64/metalink | 5.2 kB 00:00:00

extras | 3.4 kB 00:00:00

mongodb-org-3.2 | 2.5 kB 00:00:00

updates | 3.4 kB 00:00:00

mongodb-org-3.2/7/primary_db | 50 kB 00:00:03

Loading mirror speeds from cached hostfile

* base: mirrors.aliyun.com

* epel: mirrors.tuna.tsinghua.edu.cn

* extras: mirrors.aliyun.com

* updates: mirrors.aliyun.com

Resolving Dependencies

--> Running transaction check

---> Package mongodb-org.x86_64 0:3.2.10-1.el7 will be installed

--> Processing Dependency: mongodb-org-tools=3.2.10 for package: mongodb-org-3.2.10-1.el7.x86_64

--> Processing Dependency: mongodb-org-shell=3.2.10 for package: mongodb-org-3.2.10-1.el7.x86_64

--> Processing Dependency: mongodb-org-server=3.2.10 for package: mongodb-org-3.2.10-1.el7.x86_64

--> Processing Dependency: mongodb-org-mongos=3.2.10 for package: mongodb-org-3.2.10-1.el7.x86_64

--> Running transaction check

---> Package mongodb-org-mongos.x86_64 0:3.2.10-1.el7 will be installed

---> Package mongodb-org-server.x86_64 0:3.2.10-1.el7 will be installed

---> Package mongodb-org-shell.x86_64 0:3.2.10-1.el7 will be installed

---> Package mongodb-org-tools.x86_64 0:3.2.10-1.el7 will be installed

--> Finished Dependency Resolution

Dependencies Resolved

===================================================================================================

Package Arch Version Repository Size

===================================================================================================

Installing:

mongodb-org x86_64 3.2.10-1.el7 mongodb-org-3.2 5.8 k

Installing for dependencies:

mongodb-org-mongos x86_64 3.2.10-1.el7 mongodb-org-3.2 5.6 M

mongodb-org-server x86_64 3.2.10-1.el7 mongodb-org-3.2 12 M

mongodb-org-shell x86_64 3.2.10-1.el7 mongodb-org-3.2 6.7 M

mongodb-org-tools x86_64 3.2.10-1.el7 mongodb-org-3.2 41 M

Transaction Summary

===================================================================================================

Install 1 Package (+4 Dependent packages)

Total download size: 65 M

Installed size: 201 M

Downloading packages:

warning: /var/cache/yum/x86_64/7/mongodb-org-3.2/packages/mongodb-org-3.2.10-1.el7.x86_64.rpm:

Header V3 RSA/SHA1 Signature, key ID ea312927: NOKEY ]

Public key for mongodb-org-3.2.10-1.el7.x86_64.rpm is not installed

(1/5): mongodb-org-3.2.10-1.el7.x86_64.rpm | 5.8 kB 00:00:04

(2/5): mongodb-org-server-3.2.10-1.el7.x86_64.rpm | 12 MB 00:00:11

(3/5): mongodb-org-shell-3.2.10-1.el7.x86_64.rpm | 6.7 MB 00:00:06

(4/5): mongodb-org-tools-3.2.10-1.el7.x86_64.rpm | 41 MB 00:00:36

(5/5): mongodb-org-mongos-3.2.10-1.el7.x86_64.rpm | 5.6 MB 00:03:28

---------------------------------------------------------------------------------------------------

Total 322 kB/s | 65 MB 00:03:28

Retrieving key from https://www.mongodb.org/static/pgp/server-3.2.asc

Importing GPG key 0xEA312927:

Userid : "MongoDB 3.2 Release Signing Key "

Fingerprint: 42f3 e95a 2c4f 0827 9c49 60ad d68f a50f ea31 2927

From : https://www.mongodb.org/static/pgp/server-3.2.asc

Running transaction check

Running transaction test

Transaction test succeeded

Running transaction

Installing : mongodb-org-tools-3.2.10-1.el7.x86_64 1/5

Installing : mongodb-org-mongos-3.2.10-1.el7.x86_64 2/5

Installing : mongodb-org-shell-3.2.10-1.el7.x86_64 3/5

Installing : mongodb-org-server-3.2.10-1.el7.x86_64 4/5

Installing : mongodb-org-3.2.10-1.el7.x86_64 5/5

Verifying : mongodb-org-server-3.2.10-1.el7.x86_64 1/5

Verifying : mongodb-org-3.2.10-1.el7.x86_64 2/5

Verifying : mongodb-org-shell-3.2.10-1.el7.x86_64 3/5

Verifying : mongodb-org-mongos-3.2.10-1.el7.x86_64 4/5

Verifying : mongodb-org-tools-3.2.10-1.el7.x86_64 5/5

Installed:

mongodb-org.x86_64 0:3.2.10-1.el7

Dependency Installed:

mongodb-org-mongos.x86_64 0:3.2.10-1.el7 #Author : Leshami

mongodb-org-server.x86_64 0:3.2.10-1.el7 #Blog : http://blog.csdn.net/leshami

mongodb-org-shell.x86_64 0:3.2.10-1.el7

mongodb-org-tools.x86_64 0:3.2.10-1.el7

Complete!

三、验证安装结果

# rpm -qa |grep mongodb

mongodb-org-3.2.10-1.el7.x86_64

mongodb-org-mongos-3.2.10-1.el7.x86_64

mongodb-org-shell-3.2.10-1.el7.x86_64

mongodb-org-server-3.2.10-1.el7.x86_64

mongodb-org-tools-3.2.10-1.el7.x86_64

# rpm -ql mongodb-org-server

/etc/init.d/mongod

/etc/mongod.conf

/etc/sysconfig/mongod

/usr/bin/mongod

/usr/share/doc/mongodb-org-server-3.2.10

/usr/share/doc/mongodb-org-server-3.2.10/GNU-AGPL-3.0

/usr/share/doc/mongodb-org-server-3.2.10/MPL-2

/usr/share/doc/mongodb-org-server-3.2.10/README

/usr/share/doc/mongodb-org-server-3.2.10/THIRD-PARTY-NOTICES

/usr/share/man/man1/mongod.1

/var/lib/mongo

/var/log/mongodb

/var/log/mongodb/mongod.log

/var/run/mongodb

[root@localhost ~]# /etc/init.d/mongod start

Starting mongod (via systemctl): [ OK ]

[root@localhost ~]# netstat -nltp|grep mongo

tcp 0 0 127.0.0.1:27017 0.0.0.0:* LISTEN 89958/mongod

# mongo

MongoDB shell version: 3.2.10

connecting to: test

Welcome to the MongoDB shell.

For interactive help, type "help".

For more comprehensive documentation, see

http://docs.mongodb.org/

Questions? Try the support group

http://groups.google.com/group/mongodb-user

> db.version()

3.2.10

更多MongoDB相关教程见以下内容:

CentOS 编译安装 MongoDB与mongoDB的php扩展 http://www.linuxidc.com/Linux/2012-02/53833.htm

CentOS 6 使用 yum 安装MongoDB及服务器端配置 http://www.linuxidc.com/Linux/2012-08/68196.htm

Ubuntu 13.04下安装MongoDB2.4.3 http://www.linuxidc.com/Linux/2013-05/84227.htm

MongoDB入门必读(概念与实战并重) http://www.linuxidc.com/Linux/2013-07/87105.htm

Ubunu 14.04下MongoDB的安装指南 http://www.linuxidc.com/Linux/2014-08/105364.htm

《MongoDB 权威指南》(MongoDB: The Definitive Guide)英文文字版[PDF] http://www.linuxidc.com/Linux/2012-07/66735.htm

Nagios监控MongoDB分片集群服务实战 http://www.linuxidc.com/Linux/2014-10/107826.htm

基于CentOS 6.5操作系统搭建MongoDB服务 http://www.linuxidc.com/Linux/2014-11/108900.htm

MongoDB 的详细介绍:请点这里

MongoDB 的下载地址:请点这里

本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-11/137679.htm

linux

12C CDB模式下RMAN备份与恢复

查看及管理Oracle patch

相关资讯

CentOS安装MongoDB

Linux CentOS 6.5 yum安装MongoDB (今 09:00)

CentOS 6/Linux 安装MongoDB 2.6.5 (02/10/2015 09:34:50)

64位CentOS 6.2下安装MongoDB 3.0. (04月10日)

CentOS 6.5_X64下安装配置MongoDB (11/03/2014 15:23:38)

本文评论

查看全部评论 (0)

表情: 表情

姓名:

匿名

字数

同意评论声明

评论声明

尊重网上道德,遵守中华人民共和国的各项有关法律法规

承担一切因您的行为而直接或间接导致的民事或刑事法律责任

本站管理人员有权保留或删除其管辖留言中的任意内容

本站有权在网站内转载或引用您的评论

参与本评论即表明您已经阅读并接受上述条款

最新资讯

Linux CentOS 6.5 yum安装MongoDB

RHCE7.0学习笔记之ISCSI客户端

设置一个具有基本 HTTP 身份验证支持的

通过编排管理 Docker 容器

利用 Chef 在 Red Hat Enterprise Linux 上

利用 Puppet 实现自动化管理配置 Linux 计

Linux 系统运维工具 OpenLMI

RPM Database 实战详解

使用 Git 管理源代码

使用 Docker 容器网络

背景:

阅读新闻

查看及管理Oracle patch

[日期:2016-11-29]

来源:Linux社区

作者:Linux

[字体:大 中 小]

Oracle patch也即是Oracle补丁。Oracle补丁又包含好几个种类,小的补丁简直是难以数计,难免让人眼花缭乱。尽管如此,Oracle patch还是有序可循的。而且Oracle提供的opatch工具非常方便的用于安装oracle patch,以及查看当前系统已经安装的patch。本文列出了patch的几种类型,以及主要描述通过opatch工具查看当前数据库的patch应用的情况。对于如何apply patch可参考Oracle官方文档。

1、Oracle patch类型

One-off patches (e.g. a bug fix)

One-off patches也称之为一次性补丁,通常针对特定的版本数据库或运行平台。此类补丁通常较小,使用的最为频繁

One-off patch只需要用Opatch工具apply即可,不需要升级/修正数据字典

如在数据库使用过程中出现某些异常后如较常见的ORA-00600、ORA-07445错误等可以通过一次性补丁来搞定

Critical Patch Update (CPU)

简称CPU,一般来说CPU包含了Oracle产品安全漏洞的修复补丁集(set of security bug fix),通常一年发布四期

该类patch的安装和安装one-off patch一样,同样使用”opatch apply”命令来完成

安装完成后应针对既有的数据库(已经创建在使用的数据库),应在数据库级别运行数据字典升级脚本

Bundled patches (For Windows and Exadata only)

用于解决在Windows平台无法利用替换共享库文件后relink的方式来更新Oracle binary,所以Oracle特别针对Windows发布区别于Unix上Normal/Molecular CPU的CPU Bundle patch

通常情况下,Bundle Patch会别较大,Windows bundle patches通常每一个季度都会发布

PSR(Patch Set Release)/Patch Set Update(PSU)

PSR就是大家常见的大补丁合集,通常1GB左右,也就是oracle版布号的第四位即为PSR号。也就是说oracle版布号的第四位会被修改

每一个PSR是都整合了之前的一些bug,并且经过了严格的测试,通常更新PSR风险相对较小

如10.2,10.2.0.1.0是基础发行版,至今已有五个PSR发布,最新10.2的PSR为10.2.0.5.0

PSU就是在每个PSR发布之间的补丁,由于新旧PSR之间周期较长,而数据库在运行期间难以保证不会出现新的bug,因此有了PSU

PSU是对于PSR的一个重要补充,每个PSU修改5位版本号的第5位。如,11.1版本升级为11.1.0.7.1;10.2版本为10.2.0.4.2

PSU与CPU一样,定期发布,计划一年发布四次,发布日期与CPU发布日期相同。由于PSU包括同期发布的CPU,只要安装PSU即可

PSU同样使用Opatch工具安装/删除,命令仍是apply和rollback。一个PSU可视作一个个别补丁,安装和删除操作同样简便

2、opatch工具

Oracle 为我们提供了用于patch安装、回退、管理与追踪的工具opatch,该工具为命令行工具,简单易用,可以根据opatch的帮助命令来获取帮助信息

#获得opatch的帮助信息

[oracle@linux1 OPatch]$ http://www.linuxidc.com/Linux/2016-11/opatch -help

Invoking OPatch 11.1.0.6.6 #opatch的版本

Oracle Interim Patch Installer version 11.1.0.6.6

Copyright (c) 2009, Oracle Corporation. All rights reserved.

Usage: opatch [ -help ] [ -r[eport] ] [ command ]

command :=apply #安装patch

lsinventory #查看所有已安装的patch

napply #用于Apply a set of patches at a time

nrollback #用于Rollback a set of patches at a time

rollback #Rollback an existing one-off patch indicated by the reference-id

query

version

prereq #用于检查安装patch之前的先决条件

util

:=-help Displays the help message for the command.

-report Print the actions without executing.

example: #可以通过下面的方式来查看每一个具体命令的用法

'opatch -help'

'opatch apply -help'

'opatch lsinventory -help'

'opatch napply -help'

'opatch nrollback -help'

'opatch rollback -help'

'opatch prereq -help'

'opatch util -help'

OPatch succeeded.

#下面查看oracle 10g下的补丁信息,对于如何安装补丁,本文不作演示

oracle@M10DB01p:/users/oracle/OraHome10g/OPatch> http://www.linuxidc.com/Linux/2016-11/opatch lsinventory

Invoking OPatch 10.2.0.3.0

.........

Oracle Home : /users/oracle/OraHome10g

Central Inventory : /users/oracle/oraInventory

from : /etc/oraInst.loc

OPatch version : 10.2.0.3.0

OUI version : 10.2.0.3.0

OUI location : /users/oracle/OraHome10g/oui

Log file location : /users/oracle/OraHome10g/cfgtoollogs/opatch/opatch2013-12-19_09-54-27AM.log

Lsinventory Output file location : /users/oracle/OraHome10g/cfgtoollogs/opatch/lsinv/lsinventory2013-12-19_09-54-27AM.txt

--------------------------------------------------------------------------------

Installed Top-level Products (2):

Oracle Database 10g 10.2.0.1.0 #基础版本号

Oracle Database 10g Release 2 Patch Set 2 10.2.0.3.0 #PSR号为3

There are 2 products installed in this Oracle Home.

Interim patches (2) : #列出了2个临时补丁patch号及bug号

Patch 5556081 : applied on Wed Feb 15 11:16:15 HKT 2012

Created on 9 Nov 2006, 22:20:50 hrs PST8PDT

Bugs fixed:

5556081

Patch 5557962 : applied on Wed Feb 15 11:16:08 HKT 2012

Created on 9 Nov 2006, 23:23:06 hrs PST8PDT

Bugs fixed:

4269423, 5557962, 5528974

--------------------------------------------------------------------------------

OPatch succeeded.

#也可以通过查询dba_server_registry查看当前数据补丁的使用情况

SQL> select comp_name,version from dba_server_registry;

COMP_NAME VERSION

-------------------------------------------------- ------------------------------

Oracle XML Database 10.2.0.3.0

Oracle Label Security 10.2.0.3.0

Oracle Expression Filter 10.2.0.3.0

Oracle Rules Manager 10.2.0.3.0

Oracle Workspace Manager 10.2.0.1.0

Oracle Database Catalog Views 10.2.0.3.0

Oracle Database Packages and Types 10.2.0.3.0

JServer JAVA Virtual Machine 10.2.0.3.0

Oracle XDK 10.2.0.3.0

Oracle Database Java Packages 10.2.0.3.0

10 rows selected.

#下面是Oracle 11g下使用lsinventory -detail时patch的应用情况

[oracle@linux1 OPatch]$ http://www.linuxidc.com/Linux/2016-11/opatch lsinventory -detail

Invoking OPatch 11.1.0.6.6

Oracle Interim Patch Installer version 11.1.0.6.6

Copyright (c) 2009, Oracle Corporation. All rights reserved.

...............(省略)

--------------------------------------------------------------------------------

Installed Top-level Products (1):

Oracle Database 11g 11.2.0.1.0

There are 1 products installed in this Oracle Home.

Installed Products (134):

Agent Required Support Files 10.2.0.4.2

Assistant Common Files 11.2.0.1.0

Bali Share 1.1.18.0.0

Buildtools Common Files 11.2.0.1.0

Character Set Migration Utility 11.2.0.1.0

Cluster Verification Utility Common Files 11.2.0.1.0

Database Configuration and Upgrade Assistants 11.2.0.1.0

...............(省略)

SSL Required Support Files for InstantClient 11.2.0.1.0

Sun JDK 1.5.0.17.0

XDK Required Support Files 11.2.0.1.0

XML Parser for Java 11.2.0.1.0

XML Parser for Oracle JVM 11.2.0.1.0

There are 134 products installed in this Oracle Home.

Interim patches (1) :

Patch 8670579 : applied on Thu Aug 15 17:53:20 CST 2013

Unique Patch ID: 12243614

Created on 25 Feb 2010, 09:55:12 hrs US/Eastern

Bugs fixed:

8670579

Files Touched: #这里列出了相应的文件

/ahseteco.o --> ORACLE_HOME/lib/libnnz11.a

/am11rkg.o --> ORACLE_HOME/lib/libnnz11.a

/amsha.o --> ORACLE_HOME/lib/libnnz11.a

/cpui32.o --> ORACLE_HOME/lib/libnnz11.a

/sha.o --> ORACLE_HOME/lib/libnnz11.a

/x931rand.o --> ORACLE_HOME/lib/libnnz11.a

/am11dkg.o --> ORACLE_HOME/lib/libnnz11.a

/am931rnd.o --> ORACLE_HOME/lib/libnnz11.a

/amsharnd.o --> ORACLE_HOME/lib/libnnz11.a

/ghash.o --> ORACLE_HOME/lib/libnnz11.a

/shacomm.o --> ORACLE_HOME/lib/libnnz11.a

libnnz11.so --> ORACLE_HOME/lib/libnnz11.so

Patch Location in Inventory:

/u01/app/oracle/db_1/inventory/oneoffs/8670579

Patch Location in Storage area:

/u01/app/oracle/db_1/.patch_storage/8670579_Feb_25_2010_09_55_12

Rac system comprising of multiple nodes #列出了当前环境的节点

Local node=linux1

Remote node=linux2

--------------------------------------------------------------------------------

OPatch succeeded.

#下面是Oracle 11g下使用使用lsinventory -bugs_fixed来查看patch的情形

[oracle@linux1 OPatch]$ http://www.linuxidc.com/Linux/2016-11/opatch lsinventory -bugs_fixed

Invoking OPatch 11.1.0.6.6

...............(省略)

------------------------------------------------------------------------------------------------------

Installed Top-level Products (1):

Oracle Database 11g 11.2.0.1.0

There are 1 products installed in this Oracle Home.

List of Bugs fixed by Installed Patches:

Bug Fixed by Installed at Description

Patch

--- -------- ------------ ----------- #下面给出了和bug有关的具体描述

8670579 8670579 Thu Aug 15 17:53:20 CST 2013 DBBETA :NETCA/DBCA FAILED WITH HOTSPOT VIRTUAL MACHINE

Rac system comprising of multiple nodes

Local node=linux1

Remote node=linux2

------------------------------------------------------------------------------------------------------

OPatch succeeded.

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-11/137680.htm

linux

CentOS 7 yum方式快速安装MongoDB

Oracle Patch补丁体系和如何打补丁

相关资讯

Oracle Patch

Oracle安装Patch相关笔记 (今 16:13)

Oracle Patch补丁体系和如何打补丁 (11/29/2016 11:52:25)

Oracle通过BIND_AWARE+SQL PATCH解 (今 16:06)

使用Out of Place升级策略进行 (10/20/2016 08:07:31)

本文评论

查看全部评论 (0)

表情: 表情

姓名:

匿名

字数

同意评论声明

评论声明

尊重网上道德,遵守中华人民共和国的各项有关法律法规

承担一切因您的行为而直接或间接导致的民事或刑事法律责任

本站管理人员有权保留或删除其管辖留言中的任意内容

本站有权在网站内转载或引用您的评论

参与本评论即表明您已经阅读并接受上述条款

最新资讯

Oracle安装Patch相关笔记

Oracle通过BIND_AWARE+SQL PATCH解决SQL绑

使用sysbench对MySQL压力测试

sysbench 0.5使用手册

多线程基准测试工具sysbench 0.5 简介

MySQL恢复误操作的方法

关于 MySQL InnoDB锁机制

【LOB】clob 字段中字符串如何替换

LibTIFF 堆缓冲区溢出漏洞(CVE-2016-5652)

Kaspersky Internet Security KLIF驱动程序

背景:

阅读新闻

Oracle Patch补丁体系和如何打补丁

[日期:2016-11-29]

来源:Linux社区

作者:bisal

[字体:大 中 小]

Oracle作为大型商用关系型数据库,从其补丁体系就可以看出其考虑的全面性。首先我们看下Oracle Patch的主要类型[参考1和2]:

Version/维护版本

针对前一个维护版本的所有补丁进行整理,增加新的功能或对软件有较大的改动,进行整体测试,得到一个软件版本”包”,称为版本Version。比如 11.2。

One-off patches (e.g. a bug fix)

One-off patches也称之为一次性补丁,通常针对特定的版本数据库或运行平台。此类补丁通常较小,使用的最为频繁。One-off patch只需要用Opatch工具apply即可,不需要升级/修正数据字典。如在数据库使用过程中出现某些异常后如较常见的ORA-00600、ORA-07445错误等可以通过一次性补丁来搞定。

Critical Patch Update (CPU)

简称CPU,一般来说CPU包含了Oracle产品安全漏洞的修复补丁集(set of security bug fix),通常一年发布四期,一般是每季度提供一次的一组高优先级修复程序(往往针对安全性问题),对于以前的安全性修复程序而言,这些CPU是累积的,只需要安装最近最后一个就可以,它就包含了之前的所有CPU补丁,但也可包含其他修复程序,目的是解决与非安全性补丁之间的补丁冲突问题(即降低合并请求的必要性)。该类patch的安装和安装one-off patch一样,同样使用”opatch apply”命令来完成。安装完成后应针对既有的数据库(已经创建在使用的数据库),应在数据库级别运行数据字典升级脚本。

Bundled patches (For Windows and Exadata only)

用于解决在Windows平台无法利用替换共享库文件后relink的方式来更新Oracle binary,所以Oracle特别针对Windows发布区别于Unix上Normal/Molecular CPU的CPU Bundle patch。通常情况下,Bundle Patch会别较大,Windows bundle patches通常每一个季度都会发布。

PSR(Patch Set Release)/Patch Set Update(PSU)

PSR就是大家常见的大补丁合集,通常1GB左右,也就是oracle版布号的第四位即为PSR号。也就是说oracle版布号的第四位会被修改。每一个PSR是都整合了之前的一些bug,并且经过了严格的测试,通常更新PSR风险相对较小。10.2,10.2.0.1.0是基础发行版,至今已有五个PSR发布,最新10.2的PSR为10.2.0.5.0。

PSU就是在每个PSR发布之间的补丁,由于新旧PSR之间周期较长,而数据库在运行期间难以保证不会出现新的bug,因此有了PSU。PSU是对于PSR的一个重要补充,每个PSU修改5位版本号的第5位。如,11.1版本升级为11.1.0.7.1;10.2版本为10.2.0.4.2。PSU包含CPU,所以建议尽量安装PSU,PSU通常也是增量的,大部分PSU可以直接安装,但有些PSU则必须要求安装了上一 个版本的PSU之后才能继续安装,要仔细看各个PSU的Readme文档。PSU与CPU一样,定期发布,计划一年发布四次,发布日期与CPU发布日期相同。PSU同样使用Opatch工具安装/删除,命令仍是apply和rollback。一个PSU可视作一个个别补丁,安装和删除操作同样简便。

[参考3]PSU有三个优势,

(1) 低风险高价值,PSU包括:

Critical technical issues with fixes that may affect a large number of customers and that are already proven in the field

Critical Patch Update fixes

PSU不包括:

Changes that require re-certification (for example, Database fixes that cause optimizer plan changes)

Fixes that require configuration changes

每个PSU会限制包含bug fix的数量,一般在25到100个之间。会从用户下载量最多,以及发布的关键安全事件中选择出这些补丁。数据库PSU确保可以支持滚动RAC安装。

(2) PSU会通过严格的测试,保证各种fix可以正常运行,不会互相影响。

(3) Oracle版本号的第五位是作为每个PSU的增量版本号。例如初始PSU版本号是11.1.0.7.1,第二个针对11.1.0.7的PSU版本号就是11.1.0.7.2。

实验:

1.测试安装如下PSU,

Bug 24006111 - 11.2.0.4.161018 (Oct 2016) Database Patch Set Update (DB PSU) (文档 ID 24006111.8)

12C CDB模式下RMAN备份与恢复_3_第1张图片

选择操作系统版本进行下载,进入目录中执行opatch apply,

12C CDB模式下RMAN备份与恢复_3_第2张图片

提示patch安装需要OPatch的版本是11.2.0.3.5,使用OPatch version查看当前版本是11.2.0.3.4,所以第一步需要升级OPatch。

[oracle@emrep11 ~]$ /u01/app/oracle/11.2.0.4/dbhome_1/OPatch/opatch version

OPatch Version: 11.2.0.3.4

OPatch succeeded.

2.升级OPatch,

如下选择对应操作系统版本,下载OPatch,p17836989_112000_Linux-x86-64.zip,

补丁程序17836989: OPatch patch of version 11.2.0.3.5 for Oracle software releases 11.2.0.x (NOV 2013)

12C CDB模式下RMAN备份与恢复_3_第3张图片

解压缩,并复制至$ORACLE_HOME下,可以提前备份下旧版的OPatch。再执行OPatch version,

[oracle@emrep11 ~]$ /u01/app/oracle/11.2.0.4/dbhome_1/OPatch/opatch version

OPatch Version: 11.2.0.3.6

OPatch succeeded.

升级至11.2.0.3.6。

3.继续安装,

12C CDB模式下RMAN备份与恢复_3_第4张图片

执行失败,从错误信息看,有下面三个可执行程序处于激活状态,

Following executables are active :

/u01/app/oracle/11.2.0.4/dbhome_1/bin/oracle

/u01/app/oracle/11.2.0.4/dbhome_1/lib/libclntsh.so.11.1

/u01/app/oracle/11.2.0.4/dbhome_1/lib/libsqlplus.so

需要停止这些激活的可执行程序,首先查找sqlplus,

12C CDB模式下RMAN备份与恢复_3_第5张图片

接下来需要关闭数据库,以确保libclntsh.so.11.1停止,

12C CDB模式下RMAN备份与恢复_3_第6张图片

仍旧不行,说明仍有进程使用,尝试关闭监听,可参考这篇文章:《opatch error code 73: Prerequisite check “CheckActiveFilesAndExecutables” failed. (文档 ID 1942237.1)》

12C CDB模式下RMAN备份与恢复_3_第7张图片

此时再次执行opatch apply,

12C CDB模式下RMAN备份与恢复_3_第8张图片

4.验证安装,

12C CDB模式下RMAN备份与恢复_3_第9张图片

12C CDB模式下RMAN备份与恢复_3_第10张图片

12C CDB模式下RMAN备份与恢复_3_第11张图片

12C CDB模式下RMAN备份与恢复_3_第12张图片

可以看出已安装了相应的patch。

总结:

1.要了解Oracle Patch补丁体系中,各种类型补丁的关系、适用范围,这样才能在需要打补丁的时候选择正确的补丁并完成安装步骤了。

2.某些补丁要求最低的OPatch版本,OPatch的升级仅需要下载对应操作系统版本的OPatch压缩包,直接解压缩至$ORACLE_HOME即可,以防万一可以备份之前的OPatch。

3.OPatch有一系列的命令参数,可以查看帮助继续了解,例如有些补丁可以不用停机,在线打使用online参数。

参考文章:

参考1: http://www.linuxidc.com/Linux/2016-11/137673.htm

参考2: http://www.linuxidc.com/Linux/2016-11/137680.htm

参考3:

Patch Set Updates for Oracle Products (文档 ID 854428.1)

参考4:

opatch error code 73: Prerequisite check “CheckActiveFilesAndExecutables” failed. (文档 ID 1942237.1)

参考5:

Quick Reference to Patch Numbers for Database PSU, SPU(CPU), Bundle Patches and Patchsets (文档 ID 1454618.1)

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-11/137681.htm

linux

查看及管理Oracle patch

Oracle网络传输的加密和完整性验证

相关资讯

Oracle Patch Oracle Patch补丁

Oracle安装Patch相关笔记 (今 16:13)

查看及管理Oracle patch (11/29/2016 11:46:23)

Oracle通过BIND_AWARE+SQL PATCH解 (今 16:06)

使用Out of Place升级策略进行 (10/20/2016 08:07:31)

本文评论

查看全部评论 (0)

表情: 表情

姓名:

匿名

字数

同意评论声明

评论声明

尊重网上道德,遵守中华人民共和国的各项有关法律法规

承担一切因您的行为而直接或间接导致的民事或刑事法律责任

本站管理人员有权保留或删除其管辖留言中的任意内容

本站有权在网站内转载或引用您的评论

参与本评论即表明您已经阅读并接受上述条款

最新资讯

Oracle安装Patch相关笔记

Oracle通过BIND_AWARE+SQL PATCH解决SQL绑

使用sysbench对MySQL压力测试

sysbench 0.5使用手册

多线程基准测试工具sysbench 0.5 简介

MySQL恢复误操作的方法

关于 MySQL InnoDB锁机制

【LOB】clob 字段中字符串如何替换

LibTIFF 堆缓冲区溢出漏洞(CVE-2016-5652)

Kaspersky Internet Security KLIF驱动程序

背景:

阅读新闻

Oracle网络传输的加密和完整性验证

[日期:2016-11-29]

来源:Linux社区

作者:yesu898

[字体:大 中 小]

测试环境:

Oracle 11.2.0.4 Winodows 单机

应用场景:

对Oracle服务器和客户端之间的网络传输数据进行加密和完整性校验。

默认是使用明文方式传输数据,举例可以通过wireshark、sniffer等网络抓包工具抓取到传输的具体信息。

对于敏感信息是很不安全的。

举例:

对于汉字可以通过很多在线转换工具将HEX编码转换成可读汉字。

对于了解业务的人来说,这些信息是很有价值的。

客户端存在两种模式:

1、通过oracle客户端软件连接数据库

2、通过jdbc驱动连接oracle数据库

通过oracle客户端的情况:

启用传输加密和校验的主要方法是通过服务器端和客户端的sqlnet.ora文件实现。

配置方法:

理论上需要在数据库server端和oracle客户端都修改sqlnet.ora文件,但因为client端默认传输加密级别是ACCEPTED,默认一致性校验级别是ACCEPTED,所以只需要在服务器端设置如下参数就可以打开传输加密和一致性校验功能,而不需要再对client端的sqlnet.ora进行设置(知识拓展部分介绍)。

在oracle服务器端编辑sqlnet.ora文件,添加参数:

SQLNET.ENCRYPTION_SERVER=REQUIRED ----加密级别

SQLNET.ENCRYPTION_TYPES_SERVER=RC4_256 ----加密算法

SQLNET.CRYPTO_CHECKSUM_SERVER=REQUIRED --- 一致性能校验

设置参数后对新建立的session起作用。

加密后抓取的包不再是明文的:

对于jdbc连接的情况:

需要写代码,不是很懂,不做验证,大体格式如下:

For example:

DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());

Properties props=new Properties();

props.put("oracle.net.encryption_client", "accepted");

props.put("oracle.net.encryption_types_client", "RC4_128");

props.put("oracle.net.crypto_checksum_client", "REQUIRED"); //此行根据官方文档写,未作验证

props.put("oracle.net.crypto_checksum_types_client","MD5"); //此行根据官方文档格式写,未作验证

props.put("user", "XXX"); props.put("password", "YYY"); Connection conn=DriverManager.getConnection("jdbc:oracle:thin:@myhost:1521:mySID", props);

知识拓展:

server端和client端的加密级别参数SQLNET.ENCRYPTION_SERVER|CLIENT

级别分

REQUESTED

REQUIRED

ACCEPTED

REJECTED

server和client 要配合使用才能确保进行传输加密,简单概括如下表格:

Table 4-2 Encryption and Data Integrity Negotiations

Client SettingServer SettingEncryption and Data Negotiation

REJECTED

REJECTED

OFF

ACCEPTED

REJECTED

OFF

REQUESTED

REJECTED

OFF

REQUIRED

REJECTED

Connection fails

REJECTED

ACCEPTED

OFF

ACCEPTED

ACCEPTED

OFFFoot 1

REQUESTED

ACCEPTED

ON

REQUIRED

ACCEPTED

ON

REJECTED

REQUESTED

OFF

ACCEPTED

REQUESTED

ON

REQUESTED

REQUESTED

ON

REQUIRED

REQUESTED

ON

REJECTED

REQUIRED

Connection fails

ACCEPTED

REQUIRED

ON

REQUESTED

REQUIRED

ON

REQUIRED

REQUIRED

ON

一致性校验也分四中级别:

SQLNET.CRYPTO_CHECKSUM_SERVER|CLIENT

REQUESTED

REQUIRED

ACCEPTED

REJECTED

同样需要配合使用。

参数解释:

SQLNET.CRYPTO_CHECKSUM_CLIENT。默认设置为ACCEPTED。

参数

ACCEPTED - 客户端不请求使用校验和,但是如果服务器请求校验和,则请求。兼容的服务器参数为REJECTED,REQUESTED和REQUIRED。

REJECTED - 客户端不支持使用校验和。兼容的服务器参数为REJECTED,ACCEPTED和REQUESTED。

REQUESTED - 客户端喜欢使用校验和,但是如果服务器拒绝它们的使用,则不强制该问题。兼容的服务器参数是ACCEPTED,REQUESTED和REQUIRED。

REQUIRED - 客户端要求使用校验和,否则不连接。兼容的服务器参数是ACCEPTED,REQUESTED和REQUIRED。

SQLNET.CRYPTO_CHECKSUM_SERVER。默认设置为ACCEPTED。

参数

ACCEPTED - 服务器不请求使用校验和,但如果客户端请求它们,请继续。兼容的服务器参数有:REJECTED,REQUESTED和REQUIRED。

REJECTED - 服务器根本不支持使用校验和。兼容的客户端参数为REJECTED,ACCEPTED和REQUESTED。

REQUESTED - 服务器更喜欢使用校验和,但是如果客户端拒绝它们的使用,则不强制该问题。兼容的客户端参数是ACCEPTED,REQUESTED和REQUIRED。

REQUIRED - 服务器要求使用校验和,否则不连接。兼容的客户端参数是ACCEPTED,REQUESTED和REQUIRED。

对性能的影响:

既然要 加密和解密就势必会占用一定的性能资源,但影响不大,下图是一个测试结果,摘自http://www.orafaq.com/wiki/Network_Encryption

AlgorithmNoneMD5SHA-1

Time

%None

Time

%None

Time

%None

None

79.6 s

80.5 s

101%

82.4 s

104%

DES

104.7 s

132%

107.1 s

135%

108.2 s

136%

3DES168

151.8 s

191%

153.9 s

193%

155.6 s

196%

AES128

88.8 s

112%

90.5 s

114%

92.1 s

116%

AES256

91.8 s

115%

93.5 s

117%

94.2 s

118%

RC4_128

81.6 s

103%

82.5 s

104%

85.0 s

107%

RC4_256

81.7 s

103%

82.8 s

104%

85.0 s

107%

参考文档:

http://docs.oracle.com/cd/B19306_01/network.102/b14268/asoconfg.htm#BBJBIECD

http://docs.oracle.com/cd/B19306_01/network.102/b14268/asojbdc.htm#i1006209

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-11/137682.htm

linux

Oracle Patch补丁体系和如何打补丁

单服务器节点安装11g RAC

相关资讯

Oracle传输加密

本文评论

查看全部评论 (0)

表情: 表情

姓名:

匿名

字数

同意评论声明

评论声明

尊重网上道德,遵守中华人民共和国的各项有关法律法规

承担一切因您的行为而直接或间接导致的民事或刑事法律责任

本站管理人员有权保留或删除其管辖留言中的任意内容

本站有权在网站内转载或引用您的评论

参与本评论即表明您已经阅读并接受上述条款

最新资讯

单服务器节点安装11g RAC

Oracle网络传输的加密和完整性验证

Oracle Patch补丁体系和如何打补丁

查看及管理Oracle patch

CentOS 7 yum方式快速安装MongoDB

12C CDB模式下RMAN备份与恢复

ORA-00600 [3020] ORA-10560问题解决办法

OGG-03510问题解决办法

ORA-00604和ORA-04031导致数据库实例宕机

ORA-08103错误的解决过程

背景:

阅读新闻

单服务器节点安装11g RAC

[日期:2016-11-29]

来源:Linux社区

作者:yesu898

[字体:大 中 小]

安装Oracle 11.2.0.4 rac Linux

安装细节不过多赘述,和双节点安装并无明显区别,只是在配置SSH的时候节点选择位置,节点选择 rac1自己,然后配置SSH互信。

另外,注意一个问题!

vm测试环境下可能永远遇不到,但是生产环境下,如果你要将 一台独立的服务器拿出来安装rac,以后再添加其他节点服务器。

这时要注意了,一定要保证 服务器的 public网卡和private网卡是插着网线的,也就是必须是激活状态,否则在安装grid soft,最后运行root.sh脚本的时候

会提示:

Installing Trace File Analyzer

OLR initialization - successful

Adding Clusterware entries to inittab

CRS-2672: Attempting to start 'ora.mdnsd' on 'rac001'

CRS-2676: Start of 'ora.mdnsd' on 'rac001' succeeded

CRS-2672: Attempting to start 'ora.gpnpd' on 'rac001'

CRS-2676: Start of 'ora.gpnpd' on 'rac001' succeeded

CRS-2672: Attempting to start 'ora.cssdmonitor' on 'rac001'

CRS-2672: Attempting to start 'ora.gipcd' on 'rac001'

CRS-2676: Start of 'ora.cssdmonitor' on 'rac001' succeeded

CRS-2676: Start of 'ora.gipcd' on 'rac001' succeeded

CRS-2672: Attempting to start 'ora.cssd' on 'rac001'

CRS-2672: Attempting to start 'ora.diskmon' on 'rac001'

CRS-2676: Start of 'ora.diskmon' on 'rac001' succeeded

CRS-2676: Start of 'ora.cssd' on 'rac001' succeeded

ASM created and started successfully.

Disk Group CRS created successfully.

The ora.asm resource is not ONLINE

Did not succssfully configure and start ASM at /u01/app/11.2.0/grid/crs/install/crsconfig_lib.pm line 6912.

/u01/app/11.2.0/grid/perl/bin/perl -I/u01/app/11.2.0/grid/perl/lib -I/u01/app/11.2.0/grid/crs/install /u01/app/11.2.0/grid/crs/install/rootcrs.pl execution failed

同时群集的alert日志里:

crs-2757 command start timed out waiting for response from the resource ora.cluster_interconnect.haip

12C CDB模式下RMAN备份与恢复_3_第13张图片

CRSD & HAIP Resources Remain In OFFLINE as Private Network Interface is Partially Up (文档 ID 1529721.1)

这是因为这时往往心跳上是没插网线的。

插上网线,哪怕网络不通。

运行#/u01/app/11.2.0/grid/crs/install/rootcrs.pl -verbose -deconfig -force后,重新执行root.sh 就可以了。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-11/137683.htm

linux

Oracle网络传输的加密和完整性验证

Oracle字符串中前后包含空格处理方法

相关资讯

11g RAC 11g RAC安装

11G RAC重建ASM实例的SPFILE (06/18/2014 13:02:58)

Linux 环境中11g RAC 安装 PSU (06/15/2014 10:43:31)

本文评论

查看全部评论 (0)

表情: 表情

姓名:

匿名

字数

同意评论声明

评论声明

尊重网上道德,遵守中华人民共和国的各项有关法律法规

承担一切因您的行为而直接或间接导致的民事或刑事法律责任

本站管理人员有权保留或删除其管辖留言中的任意内容

本站有权在网站内转载或引用您的评论

参与本评论即表明您已经阅读并接受上述条款

最新资讯

Oracle字符串中前后包含空格处理方法

单服务器节点安装11g RAC

Oracle网络传输的加密和完整性验证

Oracle Patch补丁体系和如何打补丁

查看及管理Oracle patch

CentOS 7 yum方式快速安装MongoDB

12C CDB模式下RMAN备份与恢复

ORA-00600 [3020] ORA-10560问题解决办法

OGG-03510问题解决办法

ORA-00604和ORA-04031导致数据库实例宕机

背景:

阅读新闻

Oracle字符串中前后包含空格处理方法

[日期:2016-11-29]

来源:Linux社区

作者:yhdmy

[字体:大 中 小]

一、问题描述

今天碰到个问题,有个列中的字段前后都有不同数量的空格,开发人员要求去掉这些空格。其实Oracle早就替我们准备好trim函数来处理这样的问题。让我们实验一下,学习记住trim这个小东东。

二、实验

1.创建测试数据

SAM@OCM11G >create table test_space(id int,name varchar2(10));

Table created.

SAM@OCM11G >insert into test_space values (1,'sam');

1 row created.

SAM@OCM11G >insert into test_space values (2,' sam ');

1 row created.

SAM@OCM11G >insert into test_space values (3,' sam ');

1 row created.

SAM@OCM11G >commit;

Commit complete.

2.查询数据发现问题,并做字符统计

SAM@OCM11G >select * from test_space;

ID NAME

---------- ----------

1 sam

2 sam

3 sam

SAM@OCM11G >select id,length(name) from test_space;

ID LENGTH(NAME)

---------- ------------

1 3

2 5

3 8

3.使用trim去掉空格

SAM@OCM11G >select id,length(trim(name)) from test_space;

ID LENGTH(TRIM(NAME))

---------- ------------------

1 3

2 3

3 3

SAM@OCM11G >update test_space set name=trim(name);

3 rows updated.

SAM@OCM11G >select * from test_space;

ID NAME

---------- ----------

1 sam

2 sam

3 sam

4.检查(问题已处理)

SAM@OCM11G >select id,length(name) from test_space;

ID LENGTH(NAME)

---------- ------------

1 3

2 3

3 3

三、总结

一个小小的trim函数,真是难者不会,会者不难。通过这个小案例,我又多掌握了ORACLE的一个小功能,学习脚步不能停。好久没有发文了,再给自己一针强心剂。加油 Sam!Where there is a will, there is a way.

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-11/137684.htm

linux

单服务器节点安装11g RAC

RMAN 增量备份学习与实践

相关资讯

Oracle字符串

Oracle字符串截取和拼接应用 (04/05/2015 18:25:10)

工作中用到的Oracle字符串分割整理 (03/09/2014 10:15:46)

Oracle 模糊查询中不包括某字符串 (12/26/2012 15:28:08)

Oracle提取字符串中“汉字”串的解 (11/29/2014 08:08:50)

Oracle 字符串分割的处理 (02/02/2013 13:59:52)

本文评论

查看全部评论 (0)

表情: 表情

姓名:

匿名

字数

同意评论声明

评论声明

尊重网上道德,遵守中华人民共和国的各项有关法律法规

承担一切因您的行为而直接或间接导致的民事或刑事法律责任

本站管理人员有权保留或删除其管辖留言中的任意内容

本站有权在网站内转载或引用您的评论

参与本评论即表明您已经阅读并接受上述条款

最新资讯

RMAN 增量备份学习与实践

Oracle字符串中前后包含空格处理方法

单服务器节点安装11g RAC

Oracle网络传输的加密和完整性验证

Oracle Patch补丁体系和如何打补丁

查看及管理Oracle patch

CentOS 7 yum方式快速安装MongoDB

12C CDB模式下RMAN备份与恢复

ORA-00600 [3020] ORA-10560问题解决办法

OGG-03510问题解决办法

背景:

阅读新闻

RMAN 增量备份学习与实践

[日期:2016-11-29]

来源:Linux社区

作者:yhdmy

[字体:大 中 小]

一、基础知识

大家对RMAN我想都有不少的了解,此处只想对增量备份进行一下学习与实践,也是因为工作中确实有这样的需求存在。增量备份分为两种:Differential 差异,Cumulative 累积。如果不指明增量备份参数,默认的增量备份为Differential差异。常规备份方案:1周1次0级备份,其余为差异增量1级备份。或者1周1次0级备份,后两天为差异1级备份,第三天累积1级备份,后面0级备份前再次差异1级备份。总而言知,你了解了备份原理,后面策略就你自己定了。I believe you that you can choose correct policy.

(1)Differential Incremental Backups

差异增量备份,就是备份最近1次增量备份(差异或者累积)或者0级全备份后的所有变化的数据块。

12C CDB模式下RMAN备份与恢复_3_第14张图片

(2)Cumulative Incremental Backups

累积增量备份,就是备份最近0级备份后的所有变化的数据块,所以占用空间是比较多些。

12C CDB模式下RMAN备份与恢复_3_第15张图片

二、实验备份

(1)0级备份scripts:

#!/bin/bash

source /home/Oracle/.bash_profile

# Local variable

day=`date +%Y%m%d`

bk_dir=/rmanbackup/rman/TEST${day}

# Create backup directory

mkdir -p $bk_dir

# Incremental level 0 backup

rman target / log=$bk_dir/${day}.log <

RUN {

CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '$bk_dir/%F';

ALLOCATE CHANNEL ch01 TYPE DISK MAXPIECESIZE=10G;

ALLOCATE CHANNEL ch02 TYPE DISK MAXPIECESIZE=10G;

BACKUP AS COMPRESSED BACKUPSET INCREMENTAL LEVEL 0 DATABASE SKIP INACCESSIBLE FILESPERSET 10 FORMAT '$bk_dir/db_%T_%U.bak' PLUS ARCHIVELOG FILESPERSET 20 DELETE ALL INPUT FORMAT '$bk_dir/arch_%T_%U.bak';

RELEASE CHANNEL ch01;

RELEASE CHANNEL ch02;

}

ALLOCATE CHANNEL FOR MAINTENANCE DEVICE TYPE DISK;

CROSSCHECK BACKUPSET;

DELETE NOPROMPT OBSOLETE;

EOF

(2)1级差异增量备份scripst:

点击(此处)折叠或打开

#!/bin/bash

source /home/oracle/.bash_profile

# Local variable

day=`date +%Y%m%d`

bk_dir=/rmanbackup/rman/TEST${day}

# Create backup directory

mkdir -p bk_dir

# Differential Incremental level 1 backup

rman target / log=$bk_dir/${day}.log <

RUN {

CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '$bk_dir/%F';

ALLOCATE CHANNEL ch01 TYPE DISK MAXPIECESIZE=10G;

ALLOCATE CHANNEL ch02 TYPE DISK MAXPIECESIZE=10G;

BACKUP AS COMPRESSED BACKUPSET INCREMENTAL LEVEL 1 DATABASE SKIP INACCESSIBLE FILESPERSET 10 FORMAT '$bk_dir/db_%T_%U.bak' PLUS ARCHIVELOG FILESPERSET 20 FORMAT '$bk_dir/arch_%T_%U.bak' DELETE ALL INPUT;

RELEASE CHANNEL ch01;

RELEASE CHANNEL ch02;

}

ALLOCATE CHANNEL FOR MAINTENANCE DEVICE TYPE DISK;

CROSSCHECK BACKUPSET;

DELETE NOPROMPT OBSOLETE;

EOF

(3)1级累积增量备份scripst:

#!/bin/bash

source /home/oracle/.bash_profile

# Local variable

day=`date +%Y%m%d`

bk_dir=/rmanbackup/rman/TEST${day}

# Create backup directory

mkdir -p bk_dir

# Cumulative Incremental level 1 backup

rman target / log=$bk_dir/${day}.log <

RUN {

CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '$bk_dir/%F';

ALLOCATE CHANNEL ch01 TYPE DISK MAXPIECESIZE=10G;

ALLOCATE CHANNEL ch02 TYPE DISK MAXPIECESIZE=10G;

BACKUP AS COMPRESSED BACKUPSET INCREMENTAL LEVEL 1 CUMULATIVE DATABASE SKIP INACCESSIBLE FILESPERSET 10 FORMAT '$bk_dir/db_%T_%U.bak' PLUS ARCHIVELOG FILESPERSET 20 FORMAT '$bk_dir/arch_%T_%U.bak' DELETE ALL INPUT;

RELEASE CHANNEL ch01;

RELEASE CHANNEL ch02;

}

ALLOCATE CHANNEL FOR MAINTENANCE DEVICE TYPE DISK;

CROSSCHECK BACKUPSET;

DELETE NOPROMPT OBSOLETE;

EOF

三、总结

此次对增量备份进行了学习与实践,在实验过程中发现Differential Incremental 与 Cumulative Incremental的备份信息在rman中用list显示时都是1,无法分别。DBA们的看家本领,有备无患,所以每位DBA的小伙伴要学习好备份与恢复。Where there’s a will, there’s a way. Fighting Sam.

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-11/137685.htm

linux

Oracle字符串中前后包含空格处理方法

ORA-00054:resource busy and acquire with NOWAIT specified or timeout expired

相关资讯

rman备份 RMAN增量备份

RMAN备份与恢复 (今 16:11)

Oracle RAC 实验环境RMAN备份v1.01 (08月08日)

将Oracle数据库改为归档模式并启用 (05月23日)

Oracle RMAN 备份一例 (08月08日)

RMAN 备份与恢复实例 (07月12日)

通过shell脚本实现对Oracle RMAN备 (04月13日)

本文评论

查看全部评论 (0)

表情: 表情

姓名:

匿名

字数

同意评论声明

评论声明

尊重网上道德,遵守中华人民共和国的各项有关法律法规

承担一切因您的行为而直接或间接导致的民事或刑事法律责任

本站管理人员有权保留或删除其管辖留言中的任意内容

本站有权在网站内转载或引用您的评论

参与本评论即表明您已经阅读并接受上述条款

最新资讯

RMAN备份与恢复

Flask Web开发:基于Python的Web应用开发实

SSH 端口转发实战

使用Cobbler批量安装操作系统

Apache Httpd 2.2 配置全解析(CentOS6)

Apache Httpd 2.2 配置CA证书实现Https加密

GNOME 3.26.1 发布

CentOS6上编译安装httpd2.4 详解

使用OpenSSL实现CA证书的搭建过程

CentOS 7.2 双网卡绑定及相关问题解决

背景:

阅读新闻

ORA-00054:resource busy and acquire with NOWAIT specified or timeout expired

[日期:2016-11-29]

来源:Linux社区

作者:yhdmy

[字体:大 中 小]

一、故障描述:

早晨接到个开发人员的问题,truncat table T_USER_LABEL表时,报错: ORA-00054:resource busy and acquire with NOWAIT specified or timeout expired,如下图。按照字面意思,是资源忙,被占用了。处理思路:查到谁在占用资源,并且杀掉占用该资源的会话就可以了。有可能产生的原因有:1.创建索引时会产生的锁 2.dml 语句会产生的锁 3.索引创建时加上关键字 online时产生的锁。解决处理方法:1.等待其他会话释放资源 2.找出占用资源的会话,并删除 3.重启数据库,当然只有第2种比较适用。

pl-sql中报错:

12C CDB模式下RMAN备份与恢复_3_第16张图片

sqlplus中报错:

REPORTUSER@test > truncate table t_user_label;

truncate table t_user_label

*

ERROR at line 1:

ORA-00054: resource busy and acquire with NOWAIT specified or timeout expired

二、故障处理

1.检查哪个用户占用资源 T_USER_LABEL

SYS@test > select l.session_id,o.owner,o.object_name from v$locked_object l,dba_objects o where l.object_id=o.object_id;

SESSION_ID OWNER OBJECT_NAME

---------- ------------------------------ --------------------------------------------------

2205 REPORTUSER T_USER_LABEL

76 REPORTUSER T_USER_LABEL

1849 REPORTUSER T_TEMPORARY_CHANNEL_CUSTOMER

2.利用查出来占用资源 T_USER_LABEL的session_id,查出更加详细的信息

点击(此处)折叠或打开

SYS@test > SELECT sid, serial#, username, oSUSEr, terminal,program ,action, prev_exec_start FROM v$session where sid=2205;

SID SERIAL# USERNAME OSUSE TERMINAL PROGRAM ACTION PREV_EXEC_START

---------- ---------- ------------ ----- ---------- --------------- ------------------------------ -------------------

2205 3045 REPORTUSER huhw PTYY-003 plsqldev.exe - procedure P_USER_LABE 2016-06-29 11:31:02

SYS@test > SELECT sid, serial#, username, osuser, terminal,program ,action, prev_exec_start FROM v$session where sid=76;

SID SERIAL# USERNAME OSUSE TERMINAL PROGRAM ACTION PREV_EXEC_START

---------- ---------- ------------ ----- ---------- --------------- ------------------------------ -------------------

76 1677 REPORTUSER huhw PTYY-003 plsqldev.exe SQL - ? 2016-06-29 14:00:54

3.根据上面查出来的 SID,SERIAL# 杀掉占用资源 T_USER_LABEL的两个会话

SYS@test > alter system kill session '2205,3045';

System altered.

SYS@test > alter system kill session '76,1677';

System altered.

4.再次执行truncate table 成功

REPORTUSER@test > truncate table T_USER_LABEL;

Table truncated.

三、总结

问题回顾,通过上述查询信息中得出,有两个SESSION占用了T_USER_LABEL表资源,而且可以看出是在执行某个procedure,名字为P_USER_LABE,查看了这个procedure后,里面语句是通过查询其他表信息,最终要插入T_USER_LABEL表数据,在询问当事人后,昨天中午执行该procedure时,是强制中断了。导致最终没有提交事务,也未回滚,才会一直占用该资源。在这个案例中,学习掌握利用v$locked_object与dba_objects来找出哪个会话占用某对象,并且利用v$session来找出该会话的具体信息,包括SID,SERIAL#,如何连接,正在执行什么等等。最终使用alter system kill session ‘sid,serial#’; 来kill 掉占用资源的会话。

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-11/137686.htm

linux

RMAN 增量备份学习与实践

如何查看MySQL软件版本信息

相关资讯

ORA-00054

Oracle ORA-00054的解决方法( (07月27日)

Oracle解锁,解决“ORA-00054:资 (05/17/2014 05:37:23)

Oracle 表死锁处理 ORA-00054 (07/02/2013 15:30:10)

ORA-00054: resource busy and (07月27日)

ORA-00054:Oracle查询被锁的对象 (04/26/2014 10:24:50)

Oracle之报错:ORA-00054: 资源正忙 (03/30/2013 09:08:38)

本文评论

查看全部评论 (0)

表情: 表情

姓名:

匿名

字数

同意评论声明

评论声明

尊重网上道德,遵守中华人民共和国的各项有关法律法规

承担一切因您的行为而直接或间接导致的民事或刑事法律责任

本站管理人员有权保留或删除其管辖留言中的任意内容

本站有权在网站内转载或引用您的评论

参与本评论即表明您已经阅读并接受上述条款

最新资讯

如何查看MySQL软件版本信息

ORA-00054:resource busy and acquire with

RMAN 增量备份学习与实践

Oracle字符串中前后包含空格处理方法

单服务器节点安装11g RAC

Oracle网络传输的加密和完整性验证

Oracle Patch补丁体系和如何打补丁

查看及管理Oracle patch

CentOS 7 yum方式快速安装MongoDB

12C CDB模式下RMAN备份与恢复

背景:

阅读新闻

如何查看MySQL软件版本信息

[日期:2016-11-29]

来源:Linux社区

作者:yhdmy

[字体:大 中 小]

一、问题描述

今日上午接到同事的召唤,让帮着给查看一下生产数据MySQL数据库软件版本。呵呵,对于小白的我,当然是先答应后学习喽。并且漂亮的完成任务。

二、实验(非生产环境)

1.登录mysql环境时,有服务版本号,此处为5.6.22

[root@linuxidc ~]# mysql

Welcome to the MySQL monitor. Commands end with ; or \g.

Your MySQL connection id is 39

Server version: 5.6.22-enterprise-commercial-advanced MySQL Enterprise Server - Advanced Edition (Commercial)

Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

2.使用 mysql -V 来查看版本信息

[root@linuxidc ~]# mysql -V

mysql Ver 14.14 Distrib 5.6.22, for Linux (x86_64) using EditLine wrapper

3.使用 mysql --help 来查看版本信息

[root@linuxidc ~]# mysql --help |grep Distrib

mysql Ver 14.14 Distrib 5.6.22, for Linux (x86_64) using EditLine wrapper

[root@linuxidc ~]#

4.进入mysql命令后,使用status命令

mysql> status

--------------

mysql Ver 14.14 Distrib 5.6.22, for Linux (x86_64) using EditLine wrapper

Connection id: 51

Current database:

Current user: root@localhost

SSL: Not in use

Current pager: stdout

Using outfile: ''

Using delimiter: ;

Server version: 5.6.22-enterprise-commercial-advanced MySQL Enterprise Server - Advanced Edition (Commercial)

Protocol version: 10

Connection: Localhost via UNIX socket

Server characterset: latin1

Db characterset: latin1

Client characterset: utf8

Conn. characterset: utf8

UNIX socket: /var/lib/mysql/mysql.sock

Uptime: 45 days 23 hours 9 min 46 sec

Threads: 1 Questions: 124 Slow queries: 0 Opens: 48 Flush tables: 1 Open tables: 41 Queries per second avg: 0.000

5.使用系统函数

mysql> select version();

+---------------------------------------+

| version() |

+---------------------------------------+

| 5.6.22-enterprise-commercial-advanced |

+---------------------------------------+

1 row in set (0.00 sec)

mysql> select @@version;

+---------------------------------------+

| @@version |

+---------------------------------------+

| 5.6.22-enterprise-commercial-advanced |

+---------------------------------------+

1 row in set (0.00 sec)

6.查看变量

mysql> show variables like '%version%';

+-------------------------+---------------------------------------------------------+

| Variable_name | Value |

+-------------------------+---------------------------------------------------------+

| innodb_version | 5.6.22 |

| protocol_version | 10 |

| slave_type_conversions | |

| version | 5.6.22-enterprise-commercial-advanced |

| version_comment | MySQL Enterprise Server - Advanced Edition (Commercial) |

| version_compile_machine | x86_64 |

| version_compile_os | Linux |

+-------------------------+---------------------------------------------------------+

7 rows in set (0.00 sec)

7.mysqladmin 命令方式

[root@linuxidc ~]# mysqladmin -uroot -p -hlocalhost version;

Enter password:

mysqladmin Ver 8.42 Distrib 5.6.22, for Linux on x86_64

Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.

Server version 5.6.22-enterprise-commercial-advanced

Protocol version 10

Connection Localhost via UNIX socket

UNIX socket /var/lib/mysql/mysql.sock

Uptime: 46 days 7 min 45 sec

Threads: 1 Questions: 133 Slow queries: 0 Opens: 48 Flush tables: 1 Open tables: 41 Queries per second avg: 0.000

三、官方说明 2.1.1章节

The naming scheme in MySQL 5.6 uses release names that consist of three numbers and a suffix; for example, mysql-5.6.1-m1. The numbers within the release name are interpreted as follows:

The first number (5) is the major version and describes the file format. All MySQL 5 releases have the same file format.

The second number (6) is the release level. Taken together, the major version and release level constitute the release series number.

The third number (1) is the version number within the release series. This is incremented for each new release. Usually you want the latest version for the series you have chosen.

四、总结:

看似简单的工作,如果没有接触过人还真是不晓得。所以DBA的大小朋友们,把你不会的东西提早学习一下,会受益匪浅的。想起来一句话(书到用时方恨少;事非经过不知难。)译:知识总是在运用时才让人感到太不够了,许多事情如果不亲身经历过就不知道它有多难。

本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-11/137687.htm

linux

ORA-00054:resource busy and acquire with NOWAIT specified or timeout expired

RMAN异构迁移及异构DataGuard

相关资讯

MySQL版本信息查看

本文评论

查看全部评论 (0)

表情: 表情

姓名:

匿名

字数

同意评论声明

评论声明

尊重网上道德,遵守中华人民共和国的各项有关法律法规

承担一切因您的行为而直接或间接导致的民事或刑事法律责任

本站管理人员有权保留或删除其管辖留言中的任意内容

本站有权在网站内转载或引用您的评论

参与本评论即表明您已经阅读并接受上述条款

最新资讯

RMAN异构迁移及异构DataGuard

如何查看MySQL软件版本信息

ORA-00054:resource busy and acquire with

RMAN 增量备份学习与实践

Oracle字符串中前后包含空格处理方法

单服务器节点安装11g RAC

Oracle网络传输的加密和完整性验证

Oracle Patch补丁体系和如何打补丁

查看及管理Oracle patch

CentOS 7 yum方式快速安装MongoDB

背景:

阅读新闻

RMAN异构迁移及异构DataGuard

[日期:2016-11-29]

来源:Linux社区

作者:yesu898

[字体:大 中 小]

1、Rman工具将Windows数据库迁移到Linux上。

rman可以实现跨操作系统平台备份恢复,但是必须符合如下标准,且数据库版本要一致。

For Oracle Database 10g Release 2 and above releases:

Solaris x86-64 Linux x86-64

HP-PA HP-IA

Windows IA (64-bit) / Windows (64-bit Itanium) Windows 64-bit for AMD /

For Oracle Database 11g Release 1 and above releases (requires minimum 11.1 compatible setting):

Linux Windows

另外虽然基本备份和恢复过程和同平台rman备份恢复无差异,但是因为跨平台不能读取redo、archivelog信息,所以需要原端数据库启动到mount状态,然后执行rman全备。

11g支持set newname for database to 可以方便的将全库数据文件进行自动重命名。

run {

set newname for database to '/home/oracle/app/oracle/oradata/ora/%U';

restore database;

switch datafile all;

}

启动数据库

alter database open resetlogs;

修改temp表空间文件路径

SQL>alter database tempfile '/oradata/datafiles/ora/temp01.dbf' drop;

Database altered.

SQL>alter tablespace temp add tempfile '/oradata/datafiles/ora/temp01.dbf' reuse; --需要数据库是open 或open read only状态

修改redo存放路径

此时redo默认会放到$ORACLE_HOME/dbs目录中,参考《Oracle 修改redo日志》重新生成新的redo到指定位置。

失败测试记录:

记录1;

尝试使用关库冷备份的方法将windows文件直接复制到linux中并尝试修改文件名,从而直接拉起数据库, 但是alter database rename file 命令无法执行成功。

SQL> select name from v$datafile;

NAME

--------------------------------------------------------------------------------

C:\APP\ADMINISTRATOR\ORADATA\ORA\SYSTEM02.DBF

C:\APP\ADMINISTRATOR\ORADATA\ORA\SYSAUX01.DBF

C:\APP\ADMINISTRATOR\ORADATA\ORA\UNDOTBS01.DBF

C:\APP\ADMINISTRATOR\ORADATA\ORA\USERS01.DBF

C:\APP\ADMINISTRATOR\ORADATA\ORA\EXAMPLE01.DBF

SQL> alter database rename file 'C:\APP\ADMINISTRATOR\ORADATA\ORA\SYSTEM02.DBF' to '/home/oracle/app/oracle/oradata/ora/SYSTEM02.DBF';

alter database rename file 'C:\APP\ADMINISTRATOR\ORADATA\ORA\SYSTEM02.DBF' to '/home/oracle/app/oracle/oradata/ora/SYSTEM02.DBF'

*

ERROR at line 1:

ORA-01511: error in renaming log/data files

ORA-01516: nonexistent log file, data file, or temporary file

"C:\APP\ADMINISTRATOR\ORADATA\ORA\SYSTEM02.DBF"

原因:怀疑是和跨平台文件名无法正常识别有关。

记录2;

如果不将原库处于mount状态,而是直接open状态下备份,然后备份归档,当目标端恢复时可以成功restore database,但是recover database时就无法成功,报如下错误。根据mos介绍这种跨平台场景下,redo 、archivelog 不支持传统的方式进行介质恢复。

RMAN> recover database;

Starting recover at 23-NOV-16

using channel ORA_DISK_1

starting media recovery

channel ORA_DISK_1: starting archived log restore to default destination

channel ORA_DISK_1: restoring archived log

archived log thread=1 sequence=95

channel ORA_DISK_1: reading from backup piece /tmp/backup/a/ARCHIVE0DRLLO42_1_1.BAK

channel ORA_DISK_1: piece handle=/tmp/backup/a/ARCHIVE0DRLLO42_1_1.BAK tag=TAG20161123T205634

channel ORA_DISK_1: restored backup piece 1

channel ORA_DISK_1: restore complete, elapsed time: 00:00:01

archived log file name=/home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/arch1_95_925028740.dbf thread=1 sequence=95

RMAN-00571:===========================================================

RMAN-00569:===============ERROR MESSAGE STACK FOLLOWS===============

RMAN-00571:===========================================================

RMAN-03002: failure of recover command at 11/23/2016 21:11:20

RMAN-11003: failure during parse/execution of SQL statement: alter database recover logfile '/home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/arch1_95_925028740.dbf'

ORA-10562: Error occurred while applying redo to data block (file# 2, block# 61511)

ORA-10564: tablespace SYSAUX

ORA-01110: data file 2: '/home/oracle/app/oracle/oradata/ora/data_D-ORA_TS-SYSAUX_FNO-2'

ORA-10561: block type 'TRANSACTION MANAGED DATA BLOCK', data object# 67714

ORA-00600: internal error code, arguments: [ktbrcl:CDLC not in CR], [228], [], [], [], [], [], [], [], [], [], []

2、跨平台Dataguard

每种操作系统平台都有platform_id ,如

SQL> select platform_id, platform_name from v$database;

PLATFORM_ID PLATFORM_NAME

----------- -----------------------------------------------------

13 Linux x86 64-bit

如下表中的各种platform_id组合可进行Dataguard配置,有些组合需要满足特定的条件,虽然跨平台不能将原端的归档直接在新库recover,但是可以部署特定异构平台的Dataguard,并实现实时同步。

PLATFORM_ID

PLATFORM_NAME

Release name

PLATFORM_IDs supported within the same Data Guard configuration when using Data Guard Redo Apply (Physical Standby)

2

Solaris[tm] OE (64-bit)

Solaris Operating System (SPARC) (64-bit)

2

6 - See Support Note: 1982638.1 and Note: 414043.1

3

HP-UX (64-bit)

HP-UX PA-RISC

3

4 - Oracle 10g onward, see Support Note: 395982.1 and Note:414043.1

4

HP-UX IA (64-bit)

HP-UX Itanium

4

3 - Oracle 10g onward, see Support Notes Note: 395982.1 and Note:414043.1

5

HP Tru64 UNIX

HP Tru64 UNIX

5

6

IBM AIX on POWER Systems (64-bit)

2 - See Support Note: 1982638.1 and Note: 414043.1

6

7

Microsoft Windows (32-bit)

Microsoft Windows (x86)

7

8, 12 - Oracle 10g onward, see Support Note: 414043.1

10 - Oracle 11g onward, requires Patch 13104881 --> Fix for 13104881 Included in 12.1

11, 13 - Oracle 11g onward, see Support Note: 414043.1, also requires Patch 13104881

8

Microsoft Windows IA (64-bit)

Microsoft Windows (64-bit Itanium)

7 - Oracle 10g onward, see Support Note: 414043.1

8

12 - Oracle 10g onward

11, 13 - Oracle 11g onward, requires Patch 13104881

9

IBM zSeries Based Linux

z/Linux

9

18 (64-bit zSeries only)

10

Linux (32-bit)

Linux x86

7 - Oracle 11g onward, requires Patch 13104881

10

11, 13 - Oracle 10g onward, see Support Note: 414043.1

11

Linux IA (64-bit)

Linux Itanium

10 - Oracle 10g onward, see Support Note: 414043.1

11

13 - Oracle 10g onward

7 - Oracle 11g onward, see Support Note: 414043.1, also requires Patch 13104881

8, 12 - Oracle 11g onward, requires Patch 13104881

12

Microsoft Windows 64-bit for AMD

Microsoft Windows (x86-64)

7 - Oracle 10g onward, see Support Note Note: 414043.1

8 - Oracle 10g onward

12

11, 13 - Oracle 11g onward, requires Patch 13104881

13

Linux 64-bit for AMD

Linux x86-64

7 - Oracle 11g onward, see Support Note: 414043.1, also requires Patch 13104881

10 - Oracle 10g onward, see Support Note Note: 414043.1

11 - Oracle 10g onward

8, 12 - Oracle 11g onward, requires Patch 13104881

13

20 - Oracle 11g onward

15

HP Open VMS

HP OpenVMS Alpha

HP IA OpenVMS

OpenVMS Itanium

15

16

Apple Mac OS

Mac OS X Server

16

17

Solaris Operating System (x86)

Solaris Operating System (x86)

17

20 - Oracle 10g onward, see Support Note: 414043.1

18

IBM Power Based Linux

Linux on Power

9 (64-bit zSeries only)

18

20

Solaris Operating System (AMD64)

Solaris Operating System (x86-64)

13 - Oracle 11g onward

17 - Oracle 10g onward, see Support Note: 414043.1

20

配置过程和普通Dataguard无差别,需要注意的是经过测试,需要将备机的*_FILE_NAME_CONVERT两个参数设置上 ,且rman恢复的时候直接recover而不要通过 set newname 的形式去指定新文件的路径,在使用rman进行初始化同步的时候会自动按照转换参数修改redo和temp文件的路径,否则会导致恢复后temp和redo仍然使用原windows路径格式,且无法手动修改。

注意事项:

SQL> alter system set DB_FILE_NAME_CONVERT='C:\APP\ADMINISTRATOR\ORADATA\ORA\','/home/oracle/app/oracle/oradata/ora/' scope=spfile;

System altered.

SQL> alter system set LOG_FILE_NAME_CONVERT='C:\APP\ADMINISTRATOR\ORADATA\ORA\','/home/oracle/app/oracle/oradata/ora/' scope=spfile;

System altered.

特别要特别以上转换参数中,windows路径的最后一个字符应该是\,linux的最后一样应该是/,否则转换后的数据文件就会是

/home/oracle/app/oracle/oradata/ora\EXAMPLE01.DBF

关于rman恢复的总结:

rman restore database还原时,无论新环境的控制文件是for standby的还是普通的控制文件,生成的数据文件的路径并不受OMF影响.

但如果restore 出来的控制文件是 for standby 的那restore database的时候如果不指定set netname 会按照*_file_name_convert 参数的转换值来生成数据文件、temp文件、redo文件等。

但如果restore 出来的控制文件是普通的控制文件,那restore database的时候如果不指定set netname ,也不会按照*_file_name_convert 参数的转换值来生成数据文件、temp文件、redo文件。如果是windows环境,会生成到$ORALCE_HOME/dbs目录下,文件名如:C:APPADMINISTRATORORADATAORAEXAMPLE01.DBF。

如果是linux则会生成到原路径下,如果路径不存在这直接报错,中断还原。

当创建好了Dataguard后,如果主端添加数据文件,则备端处理情况如下:

当备机设置了db_file_name_convert参数,并同时启动了OMF功能是,OMF的优先级要高于db_file_name_convert参数,备机OMF启动的情况下会 忽略db_file_name_convert参数。

参考文档:

Data Guard Support for Heterogeneous Primary and Physical Standbys in Same Data Guard Configuration (文档 ID 413484.1)

RMAN DUPLICATE/RESTORE/RECOVER Mixed Platform Support (文档 ID 1079563.1)

Restore From Windows To Linux using RMAN Fails (文档 ID 2003327.1)

Dataguard DB/LOG FILE NAME CONVERT has been set but files are created in a different directory (文档 ID 1348512.1)

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-11/137688.htm

linux

如何查看MySQL软件版本信息

通过Oracle数据库访问控制功能(Database access control)

相关资讯

rman备份 非归档模式

RMAN备份与恢复 (今 16:11)

Oracle RAC 实验环境RMAN备份v1.01 (08月08日)

将Oracle数据库改为归档模式并启用 (05月23日)

Oracle RMAN 备份一例 (08月08日)

RMAN 备份与恢复实例 (07月12日)

通过shell脚本实现对Oracle RMAN备 (04月13日)

本文评论

查看全部评论 (0)

表情: 表情

姓名:

匿名

字数

同意评论声明

评论声明

尊重网上道德,遵守中华人民共和国的各项有关法律法规

承担一切因您的行为而直接或间接导致的民事或刑事法律责任

本站管理人员有权保留或删除其管辖留言中的任意内容

本站有权在网站内转载或引用您的评论

参与本评论即表明您已经阅读并接受上述条款

最新资讯

RMAN备份与恢复

Flask Web开发:基于Python的Web应用开发实

SSH 端口转发实战

使用Cobbler批量安装操作系统

Apache Httpd 2.2 配置全解析(CentOS6)

Apache Httpd 2.2 配置CA证书实现Https加密

GNOME 3.26.1 发布

CentOS6上编译安装httpd2.4 详解

使用OpenSSL实现CA证书的搭建过程

CentOS 7.2 双网卡绑定及相关问题解决

你可能感兴趣的:(12C CDB模式下RMAN备份与恢复_3)