Naptár

május 2024
Hét Ked Sze Csü Pén Szo Vas
<<  < Archív
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31

Friss topikok

2012.09.12. 23:23 tbago

Manuális klónozás NOARCHIVELOG adatbázis, Windowsról Windowsra / Manually cloning a NOARCHIVELOG database from Windows to Windows

Ma adatbázist fogok manuálisan klónozni egy másik hosztra. Adott két virtuális gép (GROUND és TOWER), Win server 2008R2, rajtuk egy-egy Oracle 11.2.0.1.0
GROUNDDB a sample sémákkal telepített alap NOARCHIVELOG adatbázis á'la DBCA. A TOWER gépen csak az Oracle alapszoftver van fent, adatbázis nélkül. /

Today I am going to clone a DB manually to another host. I have two virtual machines (named GROUND and TOWER respectively), Win server 2008R2, with one Oracle 11.2.0.1.0 each.

GROUNDDB is a default NOARCHIVELOG database with sample schemas created with DBCA. On TOWER machine there is only the Oracle base software without any DB.

Létrehoztam egy teszt táblát a SCOTT sémában, a végeredmény szemléletes bemutatásához. / I created a test table in SCOTT schema for the suggestive representation of the end result.

create table scott.teszt1 (id number, mezo varchar2(10));
insert into scott.teszt1 values(1, 'ALMA');
insert into scott.teszt1 values(2, 'KÖRTE');
insert into scott.teszt1 values(3, 'SZILVA');
commit;

Követni fogom az alábbi metalink note -ban jelzett megoldást / I am going to follow the metalink note below

How to Manually Clone a Database to Another Node [ID 562556.1]


1) Prerequisites
----------------

- The copy of the datafiles must be done with the database closed or the database must be in ARCHIVELOG mode.

SQL> select log_mode from v$database;

LOG_MODE
------------
NOARCHIVELOG


1.5 BT) Nézzük meg, hogy használunk-e spfile -t / Check if server is using spfile

SQL> select value from v$parameter where name='spfile';

VALUE
-----------------------------------------------------------------
C:\ORACLE\PRODUCT\11.2.0\DBHOME_1\DATABASE\SPFILEGROUNDDB.ORA

1.6 BT) Készítsünk belőle init.ora -t / Let's make an init.ora file of that.

SQL> create pfile='C:\TEMP\initGROUNDDB.ora' from spfile;

File created.



2) init.ora or spfile and controlfile
----------------------------------------------------
- You need to copy the init.ora or spfile file to the target host
and locate it in ORACLE_HOME\dbs

- Copy the controlfile(s), all the datafiles and all the archivelogs generated, to the target host.

2.5 BT) Ehelyett készítsünk backup controlfile -t trace formátumban, amit megszerkesztünk / Instead, let's create a backup controlfile to trace that I am going to edit:

SQL> alter database backup controlfile to trace as 'C:\TEMP\controlfile_bck2.txt' RESETLOGS;

Database altered.

2.6 BT) Szerkesztés után a controlfile létrehozó script így néz ki / After editing, the trace file looks like this:

STARTUP NOMOUNT
CREATE CONTROLFILE SET DATABASE "TOWERDB" RESETLOGS NOARCHIVELOG
MAXLOGFILES 16
MAXLOGMEMBERS 3
MAXDATAFILES 100
MAXINSTANCES 8
MAXLOGHISTORY 292
LOGFILE
GROUP 1 'c:\app\oracle\oradata\TOWERDB\REDO01.LOG' SIZE 50M BLOCKSIZE 512,
GROUP 2 'c:\app\oracle\oradata\TOWERDB\REDO02.LOG' SIZE 50M BLOCKSIZE 512,
GROUP 3 'c:\app\oracle\oradata\TOWERDB\REDO03.LOG' SIZE 50M BLOCKSIZE 512
DATAFILE
'c:\app\oracle\oradata\TOWERDB\SYSTEM01.DBF',
'c:\app\oracle\oradata\TOWERDB\SYSAUX01.DBF',
'c:\app\oracle\oradata\TOWERDB\UNDOTBS01.DBF',
'c:\app\oracle\oradata\TOWERDB\USERS01.DBF',
'c:\app\oracle\oradata\TOWERDB\EXAMPLE01.DBF'
CHARACTER SET EE8MSWIN1250;
ALTER DATABASE OPEN RESETLOGS;
ALTER TABLESPACE TEMP ADD TEMPFILE 'c:\app\oracle\oradata\TOWERDB\TEMP01.DBF'
SIZE 20971520 REUSE AUTOEXTEND ON NEXT 655360 MAXSIZE 32767M;

2.7 BT) Nézzük, melyik adatfájlokat akarom másolni / Check which datafiles I want to copy


SQL> SELECT FILE#, NAME FROM V$DATAFILE;

FILE#
----------
NAME
----------------------------------------------------------
1
C:\ORACLE\ORADATA\GROUNDDB\SYSTEM01.DBF 2
C:\ORACLE\ORADATA\GROUNDDB\SYSAUX01.DBF 3
C:\ORACLE\ORADATA\GROUNDDB\UNDOTBS01.DBF
FILE#
----------
NAME
---------------------------------------------------------- 4
C:\ORACLE\ORADATA\GROUNDDB\USERS01.DBF 5
C:\ORACLE\ORADATA\GROUNDDB\EXAMPLE01.DBF

2.8 BT) Nézzük a redo logokat, amiket akarok másolni / Check the redo logs I want to copy

SQL> select member from v$logfile;

MEMBER
----------------------------------------------------------------------
C:\ORACLE\ORADATA\GROUNDDB\REDO03.LOG
C:\ORACLE\ORADATA\GROUNDDB\REDO02.LOG
C:\ORACLE\ORADATA\GROUNDDB\REDO01.LOG

2.9 BT) Másolás előtt konzisztens leállás / Consistent shutdown before copying

SQL> shu immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL>

2.10 BT) Most a másolás, ezeket fogom vinni az új hostra / now the copy, and transfer these files to the target host

EXAMPLE01.DBF
REDO01.LOG
REDO02.LOG
REDO03.LOG
SYSAUX01.DBF
SYSTEM01.DBF
UNDOTBS01.DBF
USERS01.DBF
CONTROLFILE_BCK2.TXT
initGROUNDDB.ora -- ezt fogjom átnevezni, és megszerkeszteni / this is what I am going to rename and edit


3 BT) Átnevezés és szerkesztés után így néz ki az init.ora / init.ora looks like this after rename and editing

c:\app\oracle\product\11.2.0\dbhome_1\database\initTOWERDB.ora

towerdb.__db_cache_size=520093696
towerdb.__java_pool_size=16777216
towerdb.__large_pool_size=16777216
towerdb.__oracle_base='C:\app\oracle'#ORACLE_BASE set from environment
towerdb.__pga_aggregate_target=100663296
towerdb.__sga_target=973078528
towerdb.__shared_io_pool_size=0
towerdb.__shared_pool_size=385875968
towerdb.__streams_pool_size=16777216
*.audit_file_dest='C:\app\oracle\admin\TOWERDB\adump'
*.audit_trail='db'
*.compatible='11.2.0.0.0'
*.control_files=''
*.db_block_size=8192
*.db_domain=''
*.db_name='TOWERDB'
*.db_recovery_file_dest='C:\app\oracle\flash_recovery_area'
*.db_recovery_file_dest_size=4102029312
*.diagnostic_dest='C:\app\oracle'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=TOWERDBXDB)'
*.memory_max_target=1073741824
*.memory_target=1073741824
*.nls_language='HUNGARIAN'
*.nls_territory='HUNGARY'
*.open_cursors=300
*.processes=150
*.remote_login_passwordfile='EXCLUSIVE'
*.undo_tablespace='UNDOTBS1'


4) Állítsunk be password fájlt az új adatbázison / Set up a password file for the duplicated database
orapwd file=$ORACLE_HOME/dbs/orapw$ORACLE_SID password=<...>

C:\>orapwd file=c:\app\oracle\product\11.2.0\dbhome_1\database\orapwTOWERDB password=oracle entries=10

5) Windowsban oradim -el hozzuk létre az új service -t / If Windows Platform, create a new NT service for the duplicate database using oradim.

C:> oradim -new -sid TOWERDB -intpwd oracle -maxusers 10 -startmode manual -pfile 'c:\app\oracle\product\11.2.0\dbhome_1\database\initTOWERDB.ora'

6) Set the oracle environment
-------------------------

C:\> set ORACLE_SID=TOWERDB
C:\> sqlplus / as sysdba
SQL*Plus: Release 11.2.0.1.0 Production on Sze Szept. 12 22:37:52 2012
Copyright (c) 1982, 2010, Oracle. All rights reserved.
Connected to an idle instance.
SQL>

7) Futtassuk a control file backup scriptet, ami a 2.6 -ban lett létrehozva / Let's run the controlfile backup script created in 2.6 section

SQL> @c:\temp\CONTROLFILE_BCK2.TXT
ORACLE instance started.

Total System Global Area 1068937216 bytes
Fixed Size 2182592 bytes
Variable Size 536871488 bytes
Database Buffers 524288000 bytes
Redo Buffers 5595136 bytes
Control file created.
Database altered.
Tablespace altered.
SQL>

8) Ellenőrizzük, hogy átjött-e SCOTT táblája / Test if we have Scott's table created in the source database

SQL> select * from scott.teszt1;

ID MEZO
---------- ----------
1 ALMA
2 KORTE
3 SZILVA

SQL>

9) Windowson regeditből autostart -osra állíthatjuk, ha azt akarjuk, hogy az instance automatikusan induljon / In Windows platforms, if you want that the database will start automatically then edit the registry:

regedit
go to HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOMEX
change the key : ORA_<SID>_AUTOSTART=TRUE

Szólj hozzá!

Címkék: adatbázis oracle dba noarchivelog


Ez az "oracle" hirdetesi felulet pillanatnyilag INGYEN kiado :)Miert? Mert ha a google.hu-ba beirod hogy "oracle dba" eleg elokelo helyen vagyok! altalaban 1. :P kuldj mailt ide: orclblog [at] gmail.com

A bejegyzés trackback címe:

https://oracle.blog.hu/api/trackback/id/tr134773748

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben és az adatvédelmi tájékoztatóban.

Nincsenek hozzászólások.
süti beállítások módosítása