Oracle 10G数据库 使用rman备份(裸设备管理)
1检查数据库模式:
oracle@yangzai ~]$uniread sqlplus / as sysdba
[uniread] Loaded history (149 lines)
SQL*Plus: Release 10.2.0.5.0 - Production on Mon
Jan 13 06:25:23 2014
Copyright (c) 1982, 2010, Oracle. All Rights Reserved.
Connected to:
Oracle Database 10g Enterprise Edition Release
10.2.0.5.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real
Application Testing options
SQL>startup
。。。
SQL>archive log list(查看是否在归档模式下)
Database log modeArchive
Mode
Automatic archival Enabled
Archive destination USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence 9
Next log sequence to archive 10
Current log sequence 10
SQL>
若为非归档则修改数据库归档模式
SQL>startup mount
ORA-01081: cannot start already-running
ORACLE - shut it down first
需要关闭数据库
SQL>shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
启动到mount状态
SQL>startup mount
ORACLE instance started.
Total System Global Area 608174080 bytes
Fixed Size 2098240 bytes
Variable Size 155192256 bytes
Database Buffers 444596224 bytes
Redo Buffers 6287360 bytes
Database mounted.
SQL>
更改数据库为归档模式
SQL>alter database archivelog;
Database altered.
SQL>
打开数据库
SQL>alter database open;
Database altered.
SQL>
2连接到target数据库
[oracle@yangzai bdump]$rman target 'ORCL'
catalog rman/rman
Recovery Manager: Release 10.2.0.5.0 - Production
on Mon Jan 13 07:10:34 2014
Copyright (c) 1982, 2007, Oracle. All rights reserved.
target database Password:
connected to target database: ORCL
(DBID=1354749965)
connected to recovery catalog database
RMAN>
1.首先查看一下Oracle的数据文件
SQL>select
name from v$datafile;
NAME
--------------------------------------------------------------------------------
/dev/raw/raw14
/dev/raw/raw16
/dev/raw/raw13
/dev/raw/raw17
/dev/raw/raw18
/dev/raw/raw19
/dev/raw/raw20
/dev/raw/raw21
8 rows selected.
SQL>
2.建立RMAN所需的表空间
添加裸设备/raw/raw22
查看vg状态
[root@yangzai ~]#vgdisplay
--- Volume group ---
VG Name vg_oracle
System ID
Format lvm2
Metadata Areas 5
Metadata Sequence No 70
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 21
Open LV 0
Max PV 0
Cur PV 5
Act PV 5
VG Size 20.46 GB
PE Size 4.00 MB
Total PE 5239
Alloc PE / Size 3102 / 12.12 GB
Free
PE / Size 2137 / 8.35 GB
VG UUID
c7sMGI-Ow5z-OO0F-y47X-7BcE-mqtB-goAsUN
创建lv
[root@yangzai ~]#lvcreate -n rmanup -L 600M vg_oracle
Logical volume "rmanup" created
指定raw22
[root@yangzai ~]#vi
/etc/sysconfig/rawdevices
/dev/raw/raw17
/dev/vg_oracle/users
/dev/raw/raw18
/dev/vg_oracle/user2
/dev/raw/raw19
/dev/vg_oracle/qqqqq
/dev/raw/raw20
/dev/vg_oracle/tianjia1
/dev/raw/raw21
/dev/vg_oracle/qqqtmp
/dev/raw/raw22
/dev/vg_oracle/rmanup
重启裸设备
[root@yangzai ~]#/sbin/service rawdevices restart
Assigning devices:
/dev/raw/raw1 -->
/dev/vg_oracle/control1
/dev/raw/raw1: bound to major 253, minor 0
/dev/raw/raw2 -->
/dev/vg_oracle/control2
/dev/raw/raw2: bound to major 253, minor 11
/dev/raw/raw3 -->
/dev/vg_oracle/control3
/dev/raw/raw3: bound to major 253, minor 12
/dev/raw/raw4 -->
/dev/vg_oracle/example
/dev/raw/raw4: bound to major 253, minor 5
/dev/raw/raw5 -->
/dev/vg_oracle/passwordfile
/dev/raw/raw5: bound to major 253, minor 14
/dev/raw/raw6 -->
/dev/vg_oracle/redo1_1
/dev/raw/raw6: bound to major 253, minor 15
/dev/raw/raw7 -->
/dev/vg_oracle/redo1_2
/dev/raw/raw7: bound to major 253, minor 16
/dev/raw/raw8 -->
/dev/vg_oracle/redo2a
/dev/raw/raw8: bound to major 253, minor 7
/dev/raw/raw9 -->
/dev/vg_oracle/redo2b
/dev/raw/raw9: bound to major 253, minor 8
/dev/raw/raw10 -->
/dev/vg_oracle/redo3a
/dev/raw/raw10: bound to
major 253, minor 9
/dev/raw/raw11 -->
/dev/vg_oracle/redo3b
/dev/raw/raw11: bound to
major 253, minor 10
/dev/raw/raw12 -->
/dev/vg_oracle/lv_spf_spfile
/dev/raw/raw12: bound to
major 253, minor 13
/dev/raw/raw13 -->
/dev/vg_oracle/sysaux
/dev/raw/raw13: bound to
major 253, minor 2
/dev/raw/raw14 -->
/dev/vg_oracle/system
/dev/raw/raw14: bound to
major 253, minor 1
/dev/raw/raw15 -->
/dev/vg_oracle/temp
/dev/raw/raw15: bound to
major 253, minor 4
/dev/raw/raw16 -->
/dev/vg_oracle/undotbs1
/dev/raw/raw16: bound to
major 253, minor 3
/dev/raw/raw17 -->
/dev/vg_oracle/users
/dev/raw/raw17: bound to
major 253, minor 6
/dev/raw/raw18 -->
/dev/vg_oracle/user2
/dev/raw/raw18: bound to
major 253, minor 17
/dev/raw/raw19 -->
/dev/vg_oracle/qqqqq
/dev/raw/raw19: bound to
major 253, minor 18
/dev/raw/raw20 -->
/dev/vg_oracle/tianjia1
/dev/raw/raw20: bound to
major 253, minor 19
/dev/raw/raw21 -->
/dev/vg_oracle/qqqtmp
/dev/raw/raw21: bound to
major 253, minor 20
/dev/raw/raw22 -->
/dev/vg_oracle/rmanup
/dev/raw/raw22: bound to
major 253, minor 21
Done
永久加载裸设备
[root@yangzai ~]#chown
oracle:dba /dev/raw/raw*
[root@yangzai ~]#chmod
660 /dev/raw/raw*
[root@yangzai ~]#vi
/etc/rc.local
#!/bin/sh
#
# This script will be
executed *after* all the other init scripts.
# You can put your own
initialization stuff in here if you don't
# want to do the full Sys V
style init stuff.
touch
/var/lock/subsys/local
chown
oracle:dba /dev/raw/raw*
chmod
660 /dev/raw/raw*
查看裸设备/RAW/RAW22大小
[root@yangzai ~]#blockdev
--getsize /dev/raw/raw22
1228800
登录sql创建表空间
创建数据文件为裸设备/raw/raw22名为ora_backup表空间
SQL>create
tablespace ora_backup datafile'/dev/raw/raw22' size 500M;
Tablespace created.
SQL>
进行查看确认一下
SQL>select
name from v$datafile;
NAME
--------------------------------------------------------------------------------
/dev/raw/raw14
/dev/raw/raw16
/dev/raw/raw13
/dev/raw/raw17
/dev/raw/raw18
/dev/raw/raw19
/dev/raw/raw20
/dev/raw/raw21
/dev/raw/raw22
9 rows selected.
SQL>
3建立RMAN用户以及设定密码和用户表空间
SQL>create
user rman identified by rman default tablespace ora_backup temporary
tablespace temp;
可以加上quota
unlimited on ora_backup命令的意思是rman用户可以使用该表空间的全部空间)
User created.
SQL>
4.给用户授权
SQL>grant
connect,resource,recovery_catalog_owner to rman;
Grant succeeded.
SQL>
看看都给了那些权限
SQL>select
* from dba_sys_privs where grantee='CONNECT';
GRANTEE PRIVILEGE ADM
------------------------------
---------------------------------------- ---
CONNECT
CREATE
SESSION NO
SQL>select
* from dba_sys_privs where grantee='RESOURCE';
GRANTEE PRIVILEGE ADM
------------------------------
---------------------------------------- ---
RESOURCE CREATE TRIGGER NO
RESOURCE CREATE SEQUENCE NO
RESOURCE CREATE TYPE NO
RESOURCE CREATE PROCEDURE NO
RESOURCE CREATE CLUSTER NO
RESOURCE CREATE OPERATOR NO
RESOURCE CREATE INDEXTYPE NO
RESOURCE CREATE TABLE NO
8
rows selected.
SQL>select
* from dba_sys_privs where grantee='RECOVERY_CATALOG_OWNER';
GRANTEE PRIVILEGE ADM
------------------------------
---------------------------------------- ---
RECOVERY_CATALOG_OWNER CREATE SYNONYM NO
RECOVERY_CATALOG_OWNER CREATE CLUSTER NO
RECOVERY_CATALOG_OWNER ALTER SESSION NO
RECOVERY_CATALOG_OWNER CREATE DATABASE LINK NO
RECOVERY_CATALOG_OWNER CREATE PROCEDURE NO
RECOVERY_CATALOG_OWNER CREATE SEQUENCE NO
RECOVERY_CATALOG_OWNER CREATE TABLE NO
RECOVERY_CATALOG_OWNER CREATE SESSION NO
RECOVERY_CATALOG_OWNER CREATE TYPE NO
RECOVERY_CATALOG_OWNER CREATE VIEW NO
RECOVERY_CATALOG_OWNER CREATE TRIGGER NO
11
rows selected.
SQL>
5退出数据库重新.连接到数据库
退出数据库
SQL>exit
Disconnected from Oracle Database
10g Enterprise Edition Release 10.2.0.5.0 - 64bit Production
With the Partitioning, OLAP,
Data Mining and Real Application Testing options
exit
[uniread] Saved history (149
lines)
重连
[oracle@yangzai ~]$rman
target 'orcl' catalog rman/rman
Argument Value Description
-----------------------------------------------------------------------------
target quoted-string connect-string for target database
catalog quoted-string connect-string for recovery catalog
nocatalog none if specified, then no recovery
catalog
cmdfile quoted-string name of input command file
log quoted-string name of output message log file
trace quoted-string name of output debugging message log file
append none if specified, log is opened in
append mode
debug optional-args activate debugging
msgno none show RMAN-nnnn prefix for all
messages
send quoted-string send a command to the media manager
pipe string building block for pipe names
timeout integer number of seconds to wait for pipe
input
checksyntax none check the command file for syntax
errors
-----------------------------------------------------------------------------
Both single and double
quotes (' or ") are accepted for a quoted-string.
Quotes are not required
unless the string contains embedded white-space.
RMAN-00571:
===========================================================
RMAN-00569:
=============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571:
===========================================================
RMAN-00552:
syntax error in command line arguments
RMAN-01009:
syntax error: found "identifier": expecting one of: "append,
at, auxiliary, catalog, cmdfile, clone, checksyntax, debug, log, msglog,
mask, msgno, nocatalog, pipe, rcvcat, script, slaxdebug, send, target,
timeout, trace"
RMAN-01008:
the bad identifier was: targetzhiruicatalog
RMAN-01007:
at line 2 column 1 file: command line arguments
看看rman是否可用
[oracle@yangzai ~]$rman
Recovery Manager: Release
10.2.0.5.0 - Production on Mon Jan 13 03:08:33 2014
Copyright (c) 1982, 2007,
Oracle. All rights reserved.
是可用退出在连接
RMAN>exit
Recovery Manager complete.
数据库名用大写试试
[oracle@yangzai ~]$rman target
'ORCL' catalog rman/rman
[oracle@yangzai ~]$rman
catalog rman/rman(2个命令一样)
Recovery Manager: Release
10.2.0.5.0 - Production on Mon Jan 20 02:15:43 2014
Copyright (c) 1982, 2007,
Oracle. All rights reserved.
connected to recovery
catalog database
RMAN>
Recovery Manager: Release
10.2.0.5.0 - Production on Mon Jan 13 03:10:15 2014
Copyright (c) 1982, 2007,
Oracle. All rights reserved.
target database Password:
connected to target
database: ORCL (DBID=1354749965)
connected to recovery
catalog database
RMAN>
连接成功
6.注册数据库
直接注册
RMAN>register database;
RMAN-00571:
===========================================================
RMAN-00569:
=============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571:
===========================================================
RMAN-03002:
failure of register command at 01/13/2014 03:15:52
RMAN-06428:
recovery catalog is not installed
报错:恢复目录没有安装,需要自己创建
RMAN>
7.建立catalog表空间到ora_backup
RMAN>create
catalog tablespace ora_backup
recovery catalog created
RMAN>
在注册试试
RMAN>register
database;
database registered in
recovery catalog
starting full resync of
recovery catalog
full resync complete
注册成功
RMAN>
通过dbca数据库连接到orcl数据库中catalog目录数据库
配置数据库DBCA实例中的tnsnames.ora文件
添加ORCL实例数据库中的网段。使DBCA实例数据库能连接到ORCL数据库
[oracle@dbca admin]$ cat
tnsnames.ora
# tnsnames.ora Network
Configuration File:
/u01/app/oracle/product/10.2.0/db_1/network/admin/tnsnames.ora
# Generated by Oracle
configuration tools.
ORALOCAL =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST =
192.168.56.188)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SID = dbca)
)
)
ORCL =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST =
192.168.56.187)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SID = orcl)
)
)
重新启动监听
连接测试
[oracle@dbca admin]$rman target sys/oracle@ORALOCAL catalog rman/rman@ORCL
RMAN连接 连接符为@ORALOCAL的RMAN在连接目录数据库为@ORCL连接符的RMAN
这时候使用备份,会将备份集存放在catlog
rman用户下的表空间中。