May 17, 2026, 11:40 PM

This commit is contained in:
Paweł Domański
2026-05-18 06:40:19 +00:00
commit 64944cf004
896 changed files with 310709 additions and 0 deletions
@@ -0,0 +1,26 @@
run
{
ALLOCATE CHANNEL ch11 TYPE DISK;
BACKUP AS COMPRESSED BACKUPSET skip inaccessible
FORMAT '/backup/%T_D_%d_DBID_%I_%u_s%s_p%p.bck'
DATABASE
CURRENT CONTROLFILE
FORMAT '/backup/%T_C_%d_DBID_%I_%u.bck'
SPFILE
FORMAT '/backup/%T_S_%d_DBID_%I_%u.bck'
PLUS ARCHIVELOG
FORMAT '/backup/%T_A_%d_DBID_%I_%u_s%s_p%p.bck';
RELEASE CHANNEL ch11;
}
set lines 250 pages 9999
col opname form a40
col operation form a20
col status form a30
alter session set nls_date_format = "YYYY-MM-DD HH24:MI:SS";
 
SELECT sysdate, OPNAME, SID, SERIAL#, CONTEXT, SOFAR, TOTALWORK, start_time, last_update_time, ROUND(SOFAR/TOTALWORK*100,2) "%_COMPLETE" FROM gV$SESSION_LONGOPS WHERE OPNAME LIKE 'RMAN%' AND OPNAME NOT LIKE '%aggregate%' AND TOTALWORK != 0 AND SOFAR <> TOTALWORK;
@@ -0,0 +1,18 @@
$ rman target / nocatalog
spool log to /tmp/backup.teta.log
run
{
ALLOCATE CHANNEL ch11 TYPE DISK;
BACKUP AS COMPRESSED BACKUPSET skip inaccessible
FORMAT '/backup_teta/%T_D_%d_DBID_%I_%u_s%s_p%p.bck'
DATABASE
CURRENT CONTROLFILE
FORMAT '/backup_teta/%T_C_%d_DBID_%I_%u.bck'
SPFILE
FORMAT '/backup_teta/%T_S_%d_DBID_%I_%u.bck'
PLUS ARCHIVELOG
FORMAT '/backup_teta/%T_A_%d_DBID_%I_%u_s%s_p%p.bck';
RELEASE CHANNEL ch11;
}
@@ -0,0 +1,127 @@
CLONING RMAN FROM A BACKUP IN 10G
[oracle@boss ~]$ cd rmanbackup/
[oracle@boss rmanbackup]$ ls
01nsnp5o_1_1 02nsnp5r_1_1 03nsnp6k_1_1 control_filebkc-1965345038-20121213-01
[oracle@boss rmanbackup]$ vi control_filebkc-1965345038-20121213-01
Now go down and copy the pfile from the backup piece.
Copy the pfile from the backup piece and past it inthe clone db.
[oracle@boss ~]$ mkdir db6
[oracle@boss ~]$ cd db6
[oracle@boss db6]$ mkdir admin oradata
[oracle@boss db6]$ cd admin/
[oracle@boss admin]$ mkdir pfile bdump cdump udump create
[oracle@boss admin]$ cd pfile/
[oracle@boss pfile]$ vi initdb6.ora
[oracle@boss pfile]$ cd ../../oradata/
[oracle@boss oradata]$ mkdir data log ctrl arch
[oracle@boss oradata]$
[oracle@boss oradata]$ ls
arch ctrl data log
[oracle@boss oradata]$
Open the pfile add the db_unique_name=db6.
Change the db_name as same as the source db
background_dump_dest='/home/oracle/db6/admin/bdump/'
compatible='10.2.0'
control_files='/home/oracle/db6/oradata/ctrl/control1.ctrl'
core_dump_dest='/home/oracle/db6/admin/cdump/'
db_name='db2'-- snap db
db_unique_name=db6-- clone db
pga_aggregate_target=500m
sga_target=800m
undo_management='auto'
undo_tablespace='undo'
user_dump_dest='/home/oracle/db6/admin/udump/'
[oracle@boss ~]$ export ORACLE_SID=db6
[oracle@boss ~]$ sqlplus / as sysdba
SQL*Plus: Release 10.2.0.4.0 - Production on Thu Dec 13 20:33:39 2012
Copyright (c) 1982, 2007, Oracle. All Rights Reserved.
Connected to an idle instance.
SQL> startup pfile='/home/oracle/db6/admin/pfile/initdb6.ora' nomount;
ORACLE instance started.
Total System Global Area 838860800 bytes
Fixed Size 1270244 bytes
Variable Size 213913116 bytes
Database Buffers 620756992 bytes
Redo Buffers 2920448 bytes
SQL>
[oracle@boss ~]$ export ORACLE_SID=db6
[oracle@boss ~]$ rman target /
Recovery Manager: Release 10.2.0.4.0 - Production on Thu Dec 13 20:49:35 2012
Copyright (c) 1982, 2007, Oracle. All rights reserved.
connected to target database: db2 (not mounted)
RMAN> set dbid=1965345038
executing command: SET DBID
RMAN> restore controlfile from '/home/oracle/rmanbackup/control_filebkc-1965345038-20121213-01';
Starting restore at 13-DEC-12
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=35 devtype=DISK
channel ORA_DISK_1: restoring control file
channel ORA_DISK_1: restore complete, elapsed time:00:00:01
output filename=/home/oracle/db6/oradata/ctrl/control1.ctrl
Finished restore at 13-DEC-12
RMAN> alter database mount;
database mounted
released channel: ORA_DISK_1
RMAN> run
2> {
3> set newname for datafile 1 to '/home/oracle/db6/oradata/data/system.dbf';
4> set newname for datafile 2 to '/home/oracle/db6/oradata/data/undo.dbf';
5> set newname for datafile 3 to '/home/oracle/db6/oradata/data/sysaux.dbf';
6> sql"alter database rename file ''/home/oracle/db2/oradata/log/log1.log'' to
''/home/oracle/db6/oradata/log/log1.log''";
7> sql"alter database rename file ''/home/oracle/db2/oradata/log/log2.log''to
''/home/oracle/db6/oradata/log/log2.log''";
8> restore database;
9> switch datafile all;
10> recover database;
11> }
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
Starting restore at 13-DEC-12
using channel ORA_DISK_1
channel ORA_DISK_1: starting datafile backupset restore
channel ORA_DISK_1: specifying datafile(s) to restore from backup set
restoring datafile 00001 to /home/oracle/db6/oradata/data/system.dbf
restoring datafile 00002 to /home/oracle/db6/oradata/data/undo.dbf
restoring datafile 00003 to /home/oracle/db6/oradata/data/sysaux.dbf
channel ORA_DISK_1: reading from backup piece
/u01/app/oracle/product/10.2.0/db_1/dbs/0anspjtv_1_1
channel ORA_DISK_1: restored backup piece 1
piece handle=/u01/app/oracle/product/10.2.0/db_1/dbs/0anspjtv_1_1
tag=TAG20121213T202119
channel ORA_DISK_1: restore complete, elapsed time:00:01:16
Finished restore at 13-DEC-12
datafile 1 switched to datafile copy
input datafile copy recid=4 stamp=801956019
filename=/home/oracle/db6/oradata/data/system.dbf
datafile 2 switched to datafile copy
input datafile copy recid=5 stamp=801956019
filename=/home/oracle/db6/oradata/data/undo.dbf
datafile 3 switched to datafile copy
input datafile copy recid=6 stamp=801956019
filename=/home/oracle/db6/oradata/data/sysaux.dbf
Starting recover at 13-DEC-12
using channel ORA_DISK_1
starting media recovery
archive log thread 1 sequence 3 is already on disk as file
/home/oracle/db2/oradata/log/log1.log
archive log filename=/home/oracle/db2/oradata/log/log1.log thread=1 sequence=3
media recovery complete, elapsed time: 00:00:06
Finished recover at 13-DEC-12
RMAN> alter database open resetlogs;
database opened
RMAN>exit
@@ -0,0 +1,44 @@
TTITLE LEFT '% Completed. Aggregate is the overall progress:'
SET LINE 132
SELECT opname, round(sofar/totalwork*100) "% Complete"
FROM gv$session_longops
WHERE opname LIKE 'RMAN%'
AND totalwork != 0
AND sofar <> totalwork
ORDER BY 1;
TTITLE LEFT 'Channels waiting:'
COL client_info FORMAT A15 TRUNC
COL event FORMAT A20 TRUNC
COL state FORMAT A7
COL wait FORMAT 999.90 HEAD "Min waiting"
SELECT s.sid, p.spid, s.client_info, status, event, state, seconds_in_wait/60 wait
FROM gv$process p, gv$session s
WHERE p.addr = s.paddr
AND client_info LIKE 'rman%';
TTITLE LEFT 'Files currently being written to:'
COL filename FORMAT a50
SELECT filename, bytes, io_count
FROM v$backup_async_io
WHERE status='IN PROGRESS'
/
TTITLE OFF
SET HEAD OFF
SELECT 'Throughput: '||
ROUND(SUM(v.value/1024/1024),1) || ' Meg so far @ ' ||
ROUND(SUM(v.value /1024/1024)/NVL((SELECT MIN(elapsed_seconds)
FROM v$session_longops
WHERE opname LIKE 'RMAN: aggregate input'
AND sofar != TOTALWORK
AND elapsed_seconds IS NOT NULL
),SUM(v.value /1024/1024)),2) || ' Meg/sec'
FROM gv$sesstat v, v$statname n, gv$session s
WHERE v.statistic# = n.statistic#
AND n.name = 'physical write total bytes'
AND v.sid = s.sid
AND v.inst_id = s.inst_id
AND s.program LIKE 'rman@%'
GROUP BY n.name
/
SET HEAD ON
@@ -0,0 +1,5 @@
run
{
set archivelog destination to '/tetap/arch/RFC-543';
restore archivelog from logseq=70108 until logseq=70125;
}