1. Trang chủ
  2. » Công Nghệ Thông Tin

Clone Database Oracle ppsx

7 255 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 7
Dung lượng 19,63 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

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:\Or

Trang 1

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

Trang 2

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\

Trang 3

+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

Trang 4

*.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

Trang 5

'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'

Trang 6

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>

Trang 7

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.

Ngày đăng: 07/07/2014, 01:20

TỪ KHÓA LIÊN QUAN

w