Tải bản đầy đủ (.docx) (7 trang)

Clone Database Oracle ppsx

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (125.34 KB, 7 trang )

Clone Database
Giới thiệu
Clone DB là một trong những công việc mà DBA phải làm thường xuyên.
Việc clone DB, giúp chúng ta có được 1 một "bản photocopy" của CSDL đang chạy, cho những
mục đích như: Developper, Test, chuyễn DB sang máy khác,
Với cách làm này, chúng ta cũng có thể áp dụng để khôi phục lại DB, khi chỉ chỉ còn bộ
Datafiles!
Mục tiêu của bài
Trong phần bài này, chúng ta sẽ tiến hành Clone DB cùng những yêu cầu sau:
- Đỗi tên DB từ EDU sang ORAVN.
- Đỗi đường dẫn các Datafile từ d:\Oracle\data\edu sang c:\Oracle\data\oravn
Chúng ta sẽ tiến hành các bước clone bằng lệnh, với cách này chúng ta có thể tiến hành được
trên hầu hết các phiền bản Oracle Database.
Trong bày này sẽ sử dụng Oracle9.2 để làm ví dụ minh họa.
Các bước thực hiện
1. Trên CSDL gốc: EDU
Đầu tiên chúng ta vào EDU đang chạy với quyền SYS
Code: Select all
D:\>set oracle_sid=edu
D:\>sqlplus "/ as sysdba"
SQL*Plus: Release 9.2.0.1.0 - Production on Thu Jul 26 14:05:19 2007
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
Connected to:
Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.1.0 - Production
SQL>
-Tạo pfile từ spfile hiện tại:
Code: Select all
SQL> create pfile='d:\pfileedu.ora' from spfile ;
File created.


SQL>
-Tạo bản backup dạng text của control_file
Sau khi tạo xong ta có 1 file dump nằm trong thư mục user_dump_dest. Lưu ý thư mục này có
nhiều files, file vừa tạo là file mới nhất.
Code: Select all
SQL> show parameter user_dump_dest ;
NAME TYPE VALUE


user_dump_dest string
d:\oracle\admin\edu\udump
SQL> alter database backup controlfile to trace ;
Database altered.
SQL>
Trong ví dụ này tôi có được file: D:\oracle\admin\edu\udump\edu_ora_824.trc
- Xem đường dẫn của của tất cả các Datafile hiện có trong Database;
Code: Select all
SQL> SELECT NAME FROM v$datafile ;
NAME

D:\ORACLE\ORADATA\EDU\SYSTEM01.DBF
D:\ORACLE\ORADATA\EDU\UNDOTBS01.DBF
D:\ORACLE\ORADATA\EDU\INDX01.DBF
D:\ORACLE\ORADATA\EDU\TOOLS01.DBF
D:\ORACLE\ORADATA\EDU\USERS01.DBF
D:\ORACLE\ORADATA\EDU\OEM_REPOSITORY.DBF
6 rows selected.
SQL>
-Tiếp theo, chúng ta shutdown database và copy files sang máy mới.
Các file chúng ta sẽ copy qua máy mới bao gồm:

+6 datafiles trên, bỏ vào C:\ORACLE\ORADATA\oravn\
+d:\pfileedu.ora, bỏ vào c:\oracle\ora92\database\
+D:\oracle\admin\edu\udump\edu_ora_824.trc, bỏ vào C:\ORACLE\ORADATA\oravn\
+Password file: D:\oracle\ora92\database\PWDedu.ora, bỏ vào c:\oracle\ora92\database
Nếu không copy password file, khi qua DB mới phải dùng lệnh orapwd để tạo lại.
2. Trên máy đích: ORAVN
- Đầu tiên mở pfile.ora: (nếu bạn dùng notepad mà các tham số không chịu xuống dòng, thì dùng
notepad2 trong mục download)
+sửa tất cả các tên từ EDU sang ORAVN
+sửa tất cả các đường dẫn từ d:\ sang c:\
+kiểm tra tất cả những đường dẫn đến các thư mục trên máy, nếu thư mục nào chưa có trên máy
thì tạo bổ sung.
Đây là file sau khi sửa xong:
Code: Select all
*.aq_tm_processes=1
*.background_dump_dest='c:\oracle\admin\oravn\bdump'
*.compatible='9.2.0.0.0'
*.control_files='c:\oracle\oradata\oravn\control01.ctl','c:\oracle\orada
ta\oravn\control02.ctl','c:\oracle\oradata\oravn\control03.ctl'
*.core_dump_dest='c:\oracle\admin\oravn\cdump'
*.db_block_size=8192
*.db_cache_advice='ON'
*.db_cache_size=25165824
*.db_domain=''
*.db_file_multiblock_read_count=16
*.db_name='oravn'
*.dispatchers='(protocol=TCP)(disp=3)(con=10)'
*.fast_start_mttr_target=300
*.hash_join_enabled=TRUE
*.instance_name='oravn'

*.java_pool_size=0
*.job_queue_processes=10
*.large_pool_size=8388608
*.log_archive_dest='c:\oracle\ora92\database\archive'
*.log_archive_start=TRUE
*.open_cursors=300
*.pga_aggregate_target=25165824
*.processes=150
*.query_rewrite_enabled='FALSE'
*.remote_login_passwordfile='EXCLUSIVE'
*.service_names='oravn'
*.shared_pool_size=50331648
*.sort_area_size=524288
*.star_transformation_enabled='FALSE'
*.timed_statistics=TRUE
*.undo_management='AUTO'
*.undo_retention=10800
*.undo_tablespace='UNDOTBS1'
*.user_dump_dest='c:\oracle\admin\oravn\udump'
- Chuẩn bị script để tạo lại control file:
Mở file dump của control file C:\ORACLE\ORADATA\oravn\edu_ora_824.trc
dò từ cuối file trở lên, copy dòng lệnh tạo controlfile đầu tiên mà bạn gặp.
Code: Select all
CREATE CONTROLFILE REUSE DATABASE "EDU" RESETLOGS ARCHIVELOG
SET STANDBY TO MAXIMIZE PERFORMANCE
MAXLOGFILES 5
MAXLOGMEMBERS 3
MAXDATAFILES 100
MAXINSTANCES 1
MAXLOGHISTORY 226

LOGFILE
GROUP 1 'D:\ORACLE\ORADATA\EDU\REDO01.LOG' SIZE 20M,
GROUP 2 'D:\ORACLE\ORADATA\EDU\REDO02.LOG' SIZE 20M,
GROUP 3 'D:\ORACLE\ORADATA\EDU\REDO03.LOG' SIZE 20M
STANDBY LOGFILE
DATAFILE
'D:\ORACLE\ORADATA\EDU\SYSTEM01.DBF',
'D:\ORACLE\ORADATA\EDU\UNDOTBS01.DBF',
'D:\ORACLE\ORADATA\EDU\INDX01.DBF',
'D:\ORACLE\ORADATA\EDU\TOOLS01.DBF',
'D:\ORACLE\ORADATA\EDU\USERS01.DBF',
'D:\ORACLE\ORADATA\EDU\OEM_REPOSITORY.DBF'
CHARACTER SET WE8MSWIN1252
;
Chúng sẽ sửa câu lệnh trên lại:
+ thay REUSE DATABASE "EDU" = SET DATABASE "ORAVN"
+ đổi tất cả đường dẫn sang ổ C:\
Kết quả chúng ta có được:
Code: Select all
CREATE CONTROLFILE SET DATABASE "ORAVN" RESETLOGS ARCHIVELOG
SET STANDBY TO MAXIMIZE PERFORMANCE
MAXLOGFILES 5
MAXLOGMEMBERS 3
MAXDATAFILES 100
MAXINSTANCES 1
MAXLOGHISTORY 226
LOGFILE
GROUP 1 'C:\ORACLE\ORADATA\ORAVN\REDO01.LOG' SIZE 20M,
GROUP 2 'C:\ORACLE\ORADATA\ORAVN\REDO02.LOG' SIZE 20M,
GROUP 3 'C:\ORACLE\ORADATA\ORAVN\REDO03.LOG' SIZE 20M

STANDBY LOGFILE
DATAFILE
'C:\ORACLE\ORADATA\ORAVN\SYSTEM01.DBF',
'C:\ORACLE\ORADATA\ORAVN\UNDOTBS01.DBF',
'C:\ORACLE\ORADATA\ORAVN\INDX01.DBF',
'C:\ORACLE\ORADATA\ORAVN\TOOLS01.DBF',
'C:\ORACLE\ORADATA\ORAVN\USERS01.DBF',
'C:\ORACLE\ORADATA\ORAVN\OEM_REPOSITORY.DBF'
CHARACTER SET WE8MSWIN1252
;
- Tạo SID: mở cửa sổ command line
Code: Select all
C:\>oradim -new -sid oravn
- Khởi động DB ở nomount mode
- Tạo lại control file bằng câu lệnh đã sửa ở trên
Code: Select all
C:\>sqlplus "/ as sysdba"
SQL*Plus: Release 9.2.0.1.0 - Production on Thu Jul 26 20:36:45 2007
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
Connected to an idle instance.
SQL> startup pfile='C:\oracle\ora92\database\pfileedu.ora' nomount ;
ORACLE instance started.
Total System Global Area 101784276 bytes
Fixed Size 453332 bytes
Variable Size 75497472 bytes
Database Buffers 25165824 bytes
Redo Buffers 667648 bytes
SQL>
SQL> CREATE CONTROLFILE SET DATABASE "ORAVN" RESETLOGS ARCHIVELO
2 SET STANDBY TO MAXIMIZE PERFORMANCE

3 MAXLOGFILES 5
4 MAXLOGMEMBERS 3
5 MAXDATAFILES 100
6 MAXINSTANCES 1
7 MAXLOGHISTORY 226
8 LOGFILE
9 GROUP 1 'C:\ORACLE\ORADATA\ORAVN\REDO01.LOG' SIZE 20M,
10 GROUP 2 'C:\ORACLE\ORADATA\ORAVN\REDO02.LOG' SIZE 20M,
11 GROUP 3 'C:\ORACLE\ORADATA\ORAVN\REDO03.LOG' SIZE 20M
12 STANDBY LOGFILE
13 DATAFILE
14 'C:\ORACLE\ORADATA\ORAVN\SYSTEM01.DBF',
15 'C:\ORACLE\ORADATA\ORAVN\UNDOTBS01.DBF',
16 'C:\ORACLE\ORADATA\ORAVN\INDX01.DBF',
17 'C:\ORACLE\ORADATA\ORAVN\TOOLS01.DBF',
18 'C:\ORACLE\ORADATA\ORAVN\USERS01.DBF',
19 'C:\ORACLE\ORADATA\ORAVN\OEM_REPOSITORY.DBF'
20 CHARACTER SET WE8MSWIN1252
21 ;
Control file created.
SQL>
-Open Database: do chúng ta tạo lại controlfile, nên phải Open với tham số resetlogs !
Code: Select all
SQL> alter database open resetlogs ;
Database altered.
SQL>
-Tạo lại Tempfile cho Temporary Tablespace:
Code: Select all
SQL> ALTER TABLESPACE TEMP ADD TEMPFILE
'c:\ORACLE\ORADATA\oravn\TEMP11.DBF' size 10M ;

Tablespace altered.
SQL>
-Tạo Spfile cho các lần khởi động sau, hoàn thành công việc Clone DB.
Code: Select all
SQL> create spfile from pfile='C:\oracle\ora92\database\pfileedu.ora' ;
File created.
SQL> shutdown;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup ;
ORACLE instance started.
Total System Global Area 101784276 bytes
Fixed Size 453332 bytes
Variable Size 75497472 bytes
Database Buffers 25165824 bytes
Redo Buffers 667648 bytes
Database mounted.
Database opened.
SQL> select name from v$database ;
NAME

ORAVN
SQL>
Như vậy, chúng ta đã tạo lại được DB tên ORAVN trên máy mới từ những Datafile của EDU trên
máy củ!
Chúc các bạn thành công.

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×