Oracle tạo database từ datafile sẵn có

Tham khảo links:

https://docs.oracle.com/database/121/NTQRF/create.htm#NTQRF050

http://www.dba-oracle.com/tips_oradim_utility.htm

Sử dụng oradim để tạo database

B1) Tạo file init.ora:

Ta có thể copy từ db đang chạy, nó locate ở ORACLE_BASE\admin\orcl\pfile\init.ora trong đó orcl là sid của database

chú ý chỉnh sửa các tham số đường dẫn như control_files

control_files=(“C:\app\Administrator\oradata\orcl\control01.ctl”, “C:\app\Administrator\fast_recovery_area\orcl\control02.ctl”)
db_recovery_file_dest=”C:\app\Administrator\fast_recovery_area”
db_recovery_file_dest_size=6420m

thông số RAM sga_target, và pga_aggregate_target

B2) Ta chạy oradim:

C:\> oradim -NEW -SID orcl -STARTMODE manual -PFILE “C:\app\username\admin\orcl\pfile\init.ora”

set password cho SYS DBA

C:\> oradim -EDIT -SID OPPRD -SYSPWD q123456

B3) Ta thử chạy database:

SQL> startup nomount;

Thì có thể gặp lỗi:

LRM-00109: could not open parameter file ‘C:\APP\ADMINISTRATOR\PRODUCT\12.1.0\DB
HOME_1\DATABASE\INITORCL.ORA’

Ta có thể copy từ database cũ về và chạy

hoặc dùng lệch startup nomount pfile=”

B4) Chúng ta cần sửa lại đường dẫn datafile nếu cần khi ở máy mới

Lấy danh sách datafiles

SQL> select name from v$datafile;

Dùng lệnh rename

SQL> alter database rename file ” to ”

để chỉnh

và nếu thiếu redo log => https://shrikantrao.wordpress.com/2011/07/14/recover-missing-online-redo-log/

Cần tham khảo cách trên

Việc thay đổi thông tin đường dẫn trong database có thể thực hiện theo cách nhanh hơn là dùng lệch

SQL> alter database backup controlfile to trace

khi đó control file chứa các thông tin của database được lưu tại ví trí được chỉ ra trong file alert.log

Nội dung kiểu như

CREATE CONTROLFILE REUSE DATABASE “ORCL” NORESETLOGS NOARCHIVELOG
MAXLOGFILES 255
MAXLOGMEMBERS 2
MAXDATAFILES 256
MAXINSTANCES 1
MAXLOGHISTORY 1134
LOGFILE
GROUP 1 ‘/oradata/ORCL/redo11.log’ SIZE 20M,
GROUP 2 ‘/oradata/ORCL/redo21.log’ SIZE 20M
DATAFILE
‘/oradata/ORCL/system.dbf’,
‘/oradata/ORCL/undo.dbf’,
‘/oradata/ORCL/data01.dbf’,
‘/oradata/ORCL/index01.dbf’
CHARACTER SET US7ASCII

Do đó ta có thể dễ dàng thự thi các thay đổi về đường dẫn

B5) Sau khi thực hiện tạo database copy datafile từ folder oradata ta nên khôi phục database về thời điểm mới nhất

bằng cách backup database bằng tool rman ở database hiện tại

RMAN> backup database;

tuy nhiên nếu database không chạy ở chế độ archivelog ta cần tắt database và bật lại ở chế độ mount để tiến hành backup.

Trong trường hợp không có file backup

Ta mở db có thể gặp lỗi:

alter database open resetlogs
*
ERROR at line 1:
ORA-01113: file 1 needs media recovery
ORA-01110: data file 1: ‘C:\APP\ADMINISTRATOR\…\SYSTEM01.DBF’

Ta thực hiện lệnh sau

SQL> recover database using backup controlfile until cancel;

Không có file backup nên ta chọn cancel, còn nếu có thì ta cho khôi phục tới thời điểm backup

Sau đó dùng lệnh

SQL> alter database open resetlogs;

Để mở database

Advertisements

Trả lời

Mời bạn điền thông tin vào ô dưới đây hoặc kích vào một biểu tượng để đăng nhập:

WordPress.com Logo

Bạn đang bình luận bằng tài khoản WordPress.com Đăng xuất /  Thay đổi )

Google photo

Bạn đang bình luận bằng tài khoản Google Đăng xuất /  Thay đổi )

Twitter picture

Bạn đang bình luận bằng tài khoản Twitter Đăng xuất /  Thay đổi )

Facebook photo

Bạn đang bình luận bằng tài khoản Facebook Đăng xuất /  Thay đổi )

Connecting to %s