Oracle 11g RMAN虛擬私有目錄
虛擬私有目錄
預設情況下,RMAN恢復目錄的所有使用者都有完全的許可權來向恢復目錄插入,更新與刪除後設資料。例如,如果管理員管理的兩個不相關的資料庫共享同一個恢復目錄,每個管理員都可以有意或無意的損壞另一個資料庫的後設資料。在許多企業,這種情況是被允許的因為相同的人管理許多不同的資料庫與恢復目錄。你可能期望限制每個資料庫管理員只能修改屬於他管理的資料庫後設資料。可以透過建立虛擬私有目錄來完成這個目標。
每個11G恢復目錄都支援虛擬恢復目錄,但它們需要顯式地被建立。虛擬私有目錄的個數沒有限制,每個虛擬私有目錄是屬於資料庫方案使用者不同於恢復目錄的所有者。
在建立一個或多個虛擬私有目錄後,接下來就是管理員對恢復目錄授予每個虛擬私有目錄許可權來向恢復目錄註冊當前使用的一個或多個資料庫。恢復目錄管理也能被授予許可權來使用虛擬私有目錄來註冊新的資料庫。
一.建立基本恢復目錄:
1.啟動SQL*Plus並使用管理許可權連線到包含恢復目錄的資料庫
[oracle11@jingyong1 ~]$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.4.0 Production on Sun May 10 17:24:02 2015 Copyright (c) 1982, 2013, Oracle. All rights reserved. Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - Production With the Partitioning, OLAP, Data Mining and Real Application Testing options
2.為恢復目錄建立一個使用者與方案
SQL> create user rman identified by "rman" default tablespace users quota unlimited on users temporary tablespace temp; User created.
3.給恢復目錄使用者授予recovery_catalog_owner角色。有這個角色的使用者有恢復與查詢恢復目錄所需要的所有許可權
SQL> grant recovery_catalog_owner to rman; Grant succeeded.
4.啟動RMAN並連線到包含恢復目錄的資料庫,使用恢復目錄使用者連線資料庫
[oracle11@jingyong1 ~]$ rman catalog rman/rman@cs Recovery Manager: Release 11.2.0.4.0 - Production on Fri May 8 14:28:09 2015 Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved. connected to recovery catalog database RMAN>
5.執行create catalog命令來建立目錄。建立操作可能會執行幾分鐘。如果恢復目錄表空間是使用者的預設表空間,那麼可以執行以下命令
RMAN> create catalog; recovery catalog created
可以在執行create catalog命令時指定表空間名:RMAN> CREATE CATALOG TABLESPACE cat_tbs;如果恢復目錄要使用的表空間名是RMAN的保留關鍵字,那麼必須書寫為大寫並以引號括起來,比如:CREATE CATALOG TABLESPACE 'CATALOG'。
6.使用SQL*Plus來查詢恢復目錄檢視相關基本是否建立
SQL> conn rman/rman Connected. SQL> SELECT TABLE_NAME FROM USER_TABLES; TABLE_NAME ------------------------------ DB NODE CONF DBINC CKP TS TSATT DF SITE_DFATT TF SITE_TFATT OFFR RR RT ORL RLH AL BS BP BCF CCF XCF BSF BDF CDF XDF BRL BCB CCB SCR SCRL CONFIG XAL RSR FB GRSP NRSP VPC_USERS VPC_DATABASES CFS BCR ROUT RCVER TEMPRES 44 rows selected. SQL> select count(*) from user_objects; COUNT(*) ---------- 252
二.建立虛擬私有目錄
1.啟動SQL*Plus並使用管理許可權連線到恢復目錄資料庫
[oracle11@jingyong1 ~]$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.4.0 Production on Sun May 10 17:24:02 2015 Copyright (c) 1982, 2013, Oracle. All rights reserved. Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - Production With the Partitioning, OLAP, Data Mining and Real Application Testing options
2.如果虛擬私有目錄的所者使用者不存在,那麼建立這個使用者。例如,如果想要建立資料庫使用者vpc1來管理虛擬私有目錄,那麼可以執行下面的命令
SQL> create user vpc1 identified by "vpc1" default tablespace users quota unlimited on users temporary tablespace temp; User created.
3.對管理虛擬私有目錄的使用者授予recovery_catalog_owner角色
SQL> grant recovery_catalog_owner to vpc1; Grant succeeded. SQL> exit
4.啟動RMAN並以基本恢復目錄使用者連線到恢復目錄資料庫
[oracle11@oracle11g ~]$ rman Recovery Manager: Release 11.2.0.4.0 - Production on Sun May 10 16:09:22 2015 Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved. RMAN> connect catalog rman/rman@cs connected to recovery catalog database RMAN>
5.給虛擬私有目錄使用者授予需要的許可權,指定使用者vpc1可以訪問資料庫db的後設資料
RMAN> grant catalog for database db to vpc1; Grant succeeded.
在授予許可權時可以使用DBID不一定要使用資料庫名。虛擬私有目錄使用者不能訪問恢復目錄中任何其它資料庫的後設資料。
6.可以授予使用者向恢復目錄註冊新目標資料庫的能力
RMAN> grant register database to vpc1; Grant succeeded.
7.啟動RMAN並使用虛擬私有目錄使用者(不是基本恢復目錄使用者)連線到恢復目錄資料庫
Recovery Manager complete. [oracle11@oracle11g ~]$ rman Recovery Manager: Release 11.2.0.4.0 - Production on Sun May 10 16:19:26 2015 Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved. RMAN> connect catalog vpc1/vpc1@cs connected to recovery catalog database RMAN>
8.建立虛擬私有目錄
[oracle11@jingyong1 cs]$ rman catalog vpc1/vpc1@cs Recovery Manager: Release 11.2.0.4.0 - Production on Sun May 10 17:25:40 2015 Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved. connected to recovery catalog database RMAN> create virtual catalog; found ineligible base catalog owned by RMAN found eligible base catalog owned by VPC1 created virtual catalog against base catalog owned by VPC1
9.如果是使用 10.2或之前的版本RMAN且要使用虛擬私有目錄,那麼可以執行下面的PL/SQL過程來建立虛擬私有目錄(這裡的base_catalog_owner是基本恢復目錄使用者)
SQL> EXECUTE base_catalog_owner.DBMS_RCVCAT.CREATE_VIRTUAL_CATALOG;
10.註冊目標資料庫
[oracle11@jingyong1 cs]$ rman target sys/system@db catalog vpc1/vpc1@cs Recovery Manager: Release 11.2.0.4.0 - Production on Sun May 10 17:46:51 2015 Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved. connected to target database: DB (DBID=1640573015) connected to recovery catalog database RMAN> register database; database registered in recovery catalog starting full resync of recovery catalog full resync complete
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26015009/viewspace-1633545/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- oracle 11G RAC的建立(VM虛擬環境)Oracle
- 在JSP獲取虛擬目錄JS
- IIS虛擬目錄掛載檔案伺服器目錄伺服器
- Oracle 11G RAC複製備庫RMAN-03002 RMAN-05501 RMAN-03015 RMAN-03009 RMAN-10038Oracle
- ubuntu虛擬機器 掛載共享目錄Ubuntu虛擬機
- oracle 11g開啟歸檔模式及修改歸檔目錄Oracle模式
- Oracle虛擬索引Oracle索引
- 在 Mac Catalina 的 root 目錄建立虛擬檔案Mac
- 虛擬私有云(Virtual Private Cloud,VPC)Cloud
- Windows oracle 11g rman備份恢復到linux系統WindowsOracleLinux
- C#虛擬儀器開發實戰之目錄C#
- Nginx 配置二級虛擬目錄訪問 Laravel 重寫NginxLaravel
- 學習《Java虛擬機器》目錄索引(持續更新中)Java虛擬機索引
- Apache虛擬目錄配置及vue-cli反向代理的設定方法ApacheVue
- ORACLE rman與RMAN-00054&ORA-09945Oracle
- 【RMAN】Oracle rman 常用命令參考Oracle
- VMware虛擬機器Ubuntu根目錄磁碟空間(/dev/sda1)擴容虛擬機Ubuntudev
- Oracle中的虛擬列索引-nosegment indexOracle索引Index
- Oracle之11g DataGuardOracle
- Oracle RMAN恢復測試Oracle
- Oracle RMAN備份實戰Oracle
- Oracle OCP(60):RMAN 備份Oracle
- Oracle 11gRac 測試案例(一)目錄Oracle
- 管理(006):啟用只讀Oracle Home目錄Oracle
- linux系統(CentOS7)虛擬機器上安裝oracle 11g,解決oracle圖形介面卡住無法點選next問題LinuxCentOS虛擬機Oracle
- 【ORACLE21C】Oracle21c 只讀目錄說明Oracle
- 【RMAN】Oracle使用rman將11.2.0.4資料庫遷移至Oracle12c命令參考Oracle資料庫
- 透過搭建恢復目錄實現RMAN異地備份和恢復
- oracle手工建庫後rman無法啟用(RMAN-04015)Oracle
- benchmark 壓測Oracle 11gOracle
- sysbench壓測Oracle 11gOracle
- Oracle 11G 安裝文件Oracle
- Oracle rman duplicate遷移測試Oracle
- Oracle RMAN 表空間恢復Oracle
- Oracle 目錄許可權丟失故障恢復Oracle
- oracle 資料庫徹底清除目錄指令碼Oracle資料庫指令碼
- 【RMAN】Oracle11g透過rman升級到12cOracle
- Oracle VirtualBox 配置宿主機與虛擬機器互訪Oracle虛擬機
- Oracle 11G 修改scan_ipOracle