Professional Documents
Culture Documents
3.1
3.1
3. RMAN Setup
Setup the RMAN environment
Starting RMAN
Connecting to RMAN
SKILLBUILDERS
V 1.2
RMAN Setup
3.2
3.2
3.2
3.2
RMAN Installation
RMAN utility installed with:
Database
parallel support
V 1.2
RMAN Setup
3.3
3.3
3.3
3.3
User RMAN
Create or unlock user RMAN
RMAN needs RECOVERY_CATALOG_OWNER
role system@DAVE>
system@DAVE> alter
alter user
user rman
rman account
account unlock;
unlock;
User
User altered.
altered.
system@DAVE>
system@DAVE> connect
connect rman/rman
rman/rman
Connected.
Connected.
create
create user
user rman
rman identified
identified by
by rman...
rman...
grant
grant connect,
connect, resource,
resource, recovery_catalog_owner
recovery_catalog_owner
to
to rman;
rman;
2003 SkillBuilders, Inc.
The database containing the recovery catalog needs a user called RMAN
(Actually, the user does not have to be called RMAN, but this is obvious and
convenient.)
Some 9i database creation scripts pre-create a user RMAN. If that is the case
in your environment, simply unlock the account. If user RMAN does not exist,
create with and grant the privileges shown above.
V 1.2
RMAN Setup
3.4
3.4
3.4
3.4
Password File
Need to connect to two databases
At least one connection must be remote
Target database login issued by RMAN is
always SYSDBA
Must:
Consider this: the RMAN client program needs to connect to two databases
the target and the recovery catalog. Since it is not possible to connect locally
(i.e. without an Oracle Net connect string) to two databases, one of the
connections must be a remote Oracle Net connection. If the remote connection
in your environment is to the target database, you will need to :
Create a password file on the target database (this is done with the ORAPWD
utility).
Grant SYSDBA privilege to the user you will connect with.
Set the REMOTE_LOGIN_PASSWORDFILE parameter equal to EXCLUSIVE
to support remote SYSDBA logins.
If you receive the following error, it is likely that you do not have a password file
in the remote target database or the user you are attempting to connect with
does not have SYSDBA privilege (which means the user is not in the password
file):
RMAN> connect target system/dave@beatles
RMAN-00571: ================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ==
RMAN-00571: ================================================
ORA-01031: insufficient privileges
V 1.2
RMAN Setup
3.5
3.5
3.5
3.5
Password File
Query contents of password file:
system@TEST>
system@TEST> select
select ** from
from v$pwfile_users;
v$pwfile_users;
USERNAME
SYSDB
USERNAME
SYSDB SYSOP
SYSOP
--------------------------------------------------------------- ----- --------SYS
TRUE
SYS
TRUE TRUE
TRUE
SYSTEM
TRUE
SYSTEM
TRUE FALSE
FALSE
V 1.2
RMAN Setup
3.6
3.6
3.6
3.6
Oracle Net
Remote connections need TNSNAME.ORA
entry
BEATLES
BEATLES ==
Target database
(DESCRIPTION
(DESCRIPTION ==
(ADDRESS_LIST
(ADDRESS_LIST ==
(ADDRESS
(ADDRESS == (PROTOCOL
(PROTOCOL == TCP)(HOST
TCP)(HOST == 10.0.0.50)(PORT
10.0.0.50)(PORT == 1521))
1521))
))
(CONNECT_DATA
(CONNECT_DATA ==
(SERVER
(SERVER == DEDICATED)
DEDICATED)
(SERVICE_NAME
(SERVICE_NAME == test)
test)
))
Must use dedicated
))
connection
Since at least one of the two connections you will need to make will be a
remote connection (using Oracle Net), youll need to define an entry in the
TNSNAMES.ORA configuration file. Modify TNSNAMES.ORA on the machine
you want to make the remote connection from.
Note that a dedicated
connection is required.
You can test the address specified in the TNSNAMES entry with the TNSPING
command (note that TNSPING does not check that the SERVICE_NAME
parameter is correct):
C:\>tnsping beatles
TNS Ping Utility for 32-bit Windows: Version 9.2.0
Copyright (c) 1997 Oracle Corporation.
All rights
V 1.2
RMAN Setup
3.7
3.7
3.7
3.7
Catalog Tablespace
Setup a separate database to hold recovery
catalog
Create a tablespace to hold recovery catalog
system@DAVE>
system@DAVE> create
create tablespace
tablespace rcat
rcat datafile
datafile size
size 50m;
50m;
Tablespace
Tablespace created.
created.
system@DAVE>
system@DAVE> alter
alter user
user rman
rman
22 default
default tablespace
tablespace rcat
rcat
33 quota
quota unlimited
unlimited on
on rcat;
rcat;
User
User altered.
altered.
2003 SkillBuilders, Inc.
Whether you have created a new user called RMAN or just unlocked the user
created by the database creation scripts, youll need to create tablespace and
alter the RMAN user as shown above. 50M of space is most often more than
enough space for a recovery catalog.
Note that I had some issues using the name RECOVERY for this tablespace in
a 9.0.1 environment it later complained that RECOVERY was a reserved
word. Also note that the default tablespace for the pre-created user RMAN is
TOOLS I prefer a separate dedicated tablespace for the recovery catalog.
V 1.2
RMAN Setup
3.8
3.8
3.8
3.8
Create Catalog
Create catalog
Register the target database
Start RMAN, connect to
target and catalog
databases.
C:\>rman
C:\>rman target=system/dave@beatles
target=system/dave@beatles catalog=rman/rman
catalog=rman/rman
RMAN>
RMAN> create
create catalog
catalog tablespace
tablespace rcat;
rcat;
recovery
recovery catalog
catalog created
created
Create a new
catalog
The recovery catalog is a series of tables and views owned by RMAN. (You
can easily see the object that comprise the catalog by logging into RMAN and
executing SELECT object_name from user_objects;) As shown in the
example above, the catalog is created with the RMAN command CREATE
CATALOG.
The RMAN line-mode utility is started from the OS command prompt. The
command shown above starts RMAN and connects to both databases, the
target and the recovery database. RMAN automatically adds AS SYSDBA to
the target database connection attempt.
Note that if you were provided a pre-created RMAN user, there is probably
already a catalog in the TOOLS tablespace. This must be removed before
creating the new catalog in the RCAT tablespace with the DROP CATALOG
command:
RMAN> drop catalog;
recovery catalog owner is RMAN
enter DROP CATALOG command again to confirm catalog removal
RMAN> drop catalog;
recovery catalog dropped
V 1.2
RMAN Setup
3.9
3.9
3.9
3.9
Register Database
Register the target database in the catalog
RMAN>
RMAN> register
register database;
database;
database
database registered
registered in
in recovery
recovery catalog
catalog
starting
full
resync
of
starting full resync of recovery
recovery catalog
catalog
full
full resync
resync complete
complete
rman@DAVE>
rman@DAVE> select
select dbid,
dbid, name
name from
from rc_database;
rc_database;
DBID
DBID NAME
NAME
------------------- ----------------------------------------------------------1808373586
1808373586 TEST
TEST
2003 SkillBuilders, Inc.
RMAN-00571: =======================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS
RMAN-00571: ===========================================
RMAN-03009: failure of register command on default channel at
ORA-04062: timestamp of package "RMAN.DBMS_RCVCAT" has been cha
V 1.2
RMAN Setup
3.10
3.10
3.10
3.10
Startup Options
Start RMAN from the OS command prompt
C:\>rman
C:\>rman target=sys/change_on_install@prod
target=sys/change_on_install@prod
catalog=rman/rman@recovery
catalog=rman/rman@recovery
The RMAN line-mode utility is started from the OS command prompt. The
command:
C:\>rman target=sys/change_on_install@prod catalog=rman/rman@recovery
starts RMAN and connects to both databases, the target and the recovery
database.
Both prod and recovery need to be valid entries in the
tnsnames.ora file. The userid used to connect to the TARGET database
must have SYSDBA privilege. RMAN automatically adds AS SYSDBA to the
target database connection attempt.
Use the LOG (or LOGFILE) option to cause RMAN to write all output to the
specified logfile. Unfortunately, it does not also write the output to the screen.
The CMDFILE option allows you to specify a text file that contains the RMAN
commands. If the last command is EXIT;, then you can create schedulable
batch jobs.
V 1.2
RMAN Setup
3.11
3.11
3.11
3.11
Startup Options
Start RMAN without parameters
More secure
Prevents snooping password with UNIX ps command
C:\>rman
C:\>rman
Recovery
Recovery Manager:
Manager: Release
Release 9.0.1.1.1
9.0.1.1.1 -- Production
Production
(c)
Copyright
2001
Oracle
Corporation.
(c) Copyright 2001 Oracle Corporation. All
All rights
rights re
re
RMAN>
RMAN> connect
connect target
target sys/change_on_install
sys/change_on_install
connected
to
target
connected to target database:
database: PROD
PROD (DBID=4167529595)
(DBID=4167529595)
RMAN>
RMAN> connect
connect catalog
catalog rman/rman@recovery
rman/rman@recovery
connected
to
recovery
connected to recovery catalog
catalog database
database
Connect to catalog DB
before doing ops that
require repository
2003 SkillBuilders, Inc.
We can see in this slide that starting RMAN can be done differently. For
example, RMAN starts without any parameters; connections to the databases
can be done separately with the CONNECT command after entering this RMAN
environment.
This is a more secure connection method because it prevents password
discovery with the Unix ps command (the ps command reports on all active
processes). The output of the following command:
$ ps ef | grep rman
would show the entire RMAN command, passwords and all, if passwords were
used on the initial RMAN command.
Note that you need to connect to the catalog database before performing an
operation that requires the repository. Otherwise, RMAN uses the control file
repository for the remainder of the session; you will need to exit and restart
RMAN to connect to the catalog database.
V 1.2
RMAN Setup
3.12
3.12
3.12
3.12
Lesson Summary
Setup the RMAN environment
Creating
Helpful resources:
Supplied script rman_getting_started.sql. (Also available at
www.skillbuilders.com.)
Oracle9i Recovery Manager Users Guide, Chapters 2,3 and 16
Compatibility issues See Compatibility Matrix on
metalink.oracle.com
V 1.2
RMAN Setup
3.13
3.13
3.13
3.13
This workshop asks that you create a recovery catalog to use in the remaining
exercises. To reduce the time necessary to complete this workshop, we will
create the recovery catalog within the sample database that has been
provided for your use in this class. (In a production environment, we
recommend that you create the recovery catalog in a separate databaseoptimally on a separate machine.)
1. Create a 50Mb tablespace called RCAT to hold the recovery catalog.
2. Create or unlock a user called RMAN (password RMAN). Set the default
tablespace to the tablespace created in step 1.
3. Grant the necessary privileges to the user RMAN.
4. Start the RMAN utility from the OS command prompt. For this step,
consider using the LOG option. Connect to the database that contains
the recovery catalog tablespace with the user RMAN. Optional: Create a
CMDFILE that contains the commands for steps 5 and 6.
5. Create the recovery catalog.
Continued
2003 SkillBuilders, Inc.
V 1.2
RMAN Setup
6.
7.
Start the RMAN utility from the OS command prompt. For this step,
consider using the LOG option. Connect to the database that contains
the recovery catalog tablespace with the user RMAN. Also connect to the
target database. Optional: Create a CMDFILE that contains the
commands for step 8.
8.
9.
Exit RMAN.
3.14
3.14
V 1.2