Lưu Trữ các dữ liệu thuộc cấu trúc logic của database như tables hay indexes Mỗi datafile chỉ có thể được sử dụng trong một database.. Oracle cho phép sử dụng cùng một lúc nhiều r
Trang 2NỘI DUNG TRÌNH BÀY
Giới Thiệu Vấn Đề
Backup
Restore
Recovery Tổng Quan Oracle Database
Trang 3GIỚI THIỆU VẤN ĐỀ
Tại Sao Phải Backup và Restore
Dữ Liệu ?
Trang 4TỔNG QUAN VỀ ORACLE DATABASE
Cấu Trúc Vật Lý
Cấu Trúc Luận Lý Khái Niệm
Chế Độ Log trong Oracle Database
Trang 5KHÁI NIỆM DATABASE
Oracle database được xác định bởi tên một tên duy nhất và được
quy định trong tham số DB_NAME của parameter file.
Trang 6MÔ HÌNH ORACLE SERVER
Trang 7Cấu Trúc Vật Lý Oracle Database
Trang 8DATA FILES
Chứa toàn bộ dữ liệu trong database
Lưu Trữ các dữ liệu thuộc cấu trúc logic của database
như tables hay indexes
Mỗi datafile chỉ có thể được sử dụng trong một database.
Một số tính chất cho phép tự động mở rộng kích thước mỗi khi database hết chỗ lưu trữ dữ liệu.
Một hay nhiều datafiles tạo nên một đơn vị lưu trữ logic của database gọi là tablespace.
Trang 9REDO LOG FILES
Ghi lại tất cả các thay đổi đối với dữ liệu trong
database
Oracle cho phép sử dụng cùng một lúc nhiều redo log gọi
là multiplexed redo log để cùng lưu trữ các bản sao của redo log trên các ổ đĩa khác nhau
Các thông tin trong redo log file chỉ được sử dụng để khôi phục lại database trong trường hợp hệ thống gặp sự cố
và không cho phép viết trực tiếp dữ liệu trong database lên các datafiles trong database
Trang 10CONTROL FILES
định cấu trúc vật lý của database :
• Tên của database.
• Tên và nơi lưu trữ các datafiles hay redo log files.
• Time stamp (mốc thời gian) tạo lập database,
Mỗi khi nào một instance của Oracle database được mở,
control file của nó sẽ được sử dụng để xác định data files và các redo log files đi kèm
Trang 11Cấu Trúc Luận Lý Oracle Database
Trang 12DATA BLOCKS, SEGMENTS
nhất, các dữ liệu của Oracle database được lưu trữ trong các data blocks
Một data block tương ứng với một số lượng nhất định các bytes vật lý của database trong không gian đĩa cứng
Kích thước của một data block được chỉ ra cho mỗi Oracle database ngay khi database được tạo lập.
Database sử dụng, cấp phát và giải phóng vùng không
gian lưu trữ thông qua các Oracle data blocks
các vùng không gian trong database Một segment là một tập
Trang 13SCHEMA , EXTENTS
database Là mức phân chia cao hơn nữa về mặt logic các
vùng không gian trong database Một segment là một tập hợp các extents được cấp phát cho một cấu trúc logic
chiếu trực tiếp tới dữ liệu trong database Schema objects bao gồm các cấu trúc như tables, views, sequences, stored
procedures, synonyms, indexes, clusters, và database links
không gian trong database Một extent bao gồm một số data blocks liên tiếp nhau, cùng được lưu trữ tại một thiết bị lưu giữ
Trang 14 Tablespace là một nhóm các thành phần trong Database có
quan hệ logic với nhau Một Database có thể phân nhỏ thành nhiều Tablespace
Trang 15 Mỗi tablespace có thể được tạo nên, về mặt vật lý,
bởi một hoặc nhiều datafiles
Kích thước của một tablespace bằng tổng kích thước của các datafiles của nó Ví dụ: trong hình vẽ ở trên
SYSTEM tablespace có kích thước là 2 MB còn
USERS tablespace có kích thước là 4 MB
Kích thước của database cũng có thể xác định được bằng tổng kích thước của các tablespaces của nó
Trang 16CHẾ ĐỘ LOG CỦA ORACLE DATABASE
log files sẽ bị ghi đè mỗi khi online redo log file đã
ghi đầy và xảy ra log switches
Trang 17CHẾ ĐỘ LOG CỦA ORACLE DATABASE
Chế Độ ARCHIVELOG : các online redo log
files khi đầy không bị ghi đè mà sẽ được lưu giữ lại
để phục vụ việc phục hồi dữ liệu.
Trang 18Khái Niệm Thành Phần Backup
Hình Thức Backup Cold Backup ( Offline Backup )
Hot Backup ( Online Backup )
Trang 19KHÁI NIỆM BACKUP
Backup là bản copy dữ liệu từ 1 database bao gồm
thành phần quan trọng của Database như datafiles,
control files và archived redo logs files (nếu databse
chạy trong chế độ archived)
Chức Năng : Tái tạo dữ liệu bị mất
Kiểu File Backup :
Image copy : Là một bản copy chính xác bit-for-bit của
database
Backup set : Là một định dạng độc quyền chứa một hay
nhiều file Physical gọi là các Backup Piece Nó có thể chứa nhiều hơn một file Database
Trang 20THÀNH PHẦN BACKUP
Physical backup (Lưu Trữ Vật Lý) : là bản
copy của các file physical database Có thể
tạo Physical backup từ tiện ích RMAN hay
bằng tiện ích của Hệ Điều Hành
=> Là mối quan tâm chính trong chiến lược
Backup và Recover
Logical backups (Lưu Trữ Luận Lý) : chứa
dữ liệu Luận Lý ( như các table, các stored
Trang 21PHÂN LOẠI BACKUP
HOT BACKUP
COLD BACKUP
Cách Thức Backup
Recovery Manager (RMAN)
User-managed backup and recovery
Trang 22 Điều Kiện : Databse phải shutdown datafiles
trong trạng thái transaction-consistent state Toàn bộ
Trang 23COLD BACKUP VỚI ENTERPRISE MANAGER
Trang 24COLD BACKUP VỚI ENTERPRISE MANAGER
Chọn Schedule Customized Backup
Chọn Whole Database Điền đúng và đầy đủ Usename, Password trong phần Host Credentials.
Backup Type: chọn Full BackUp.
Backup Mode: chọn Offline BackUp
Advanced section:
Also back up all archived logs on disk: Không chọn nếu bạn
thực thi Offline BackUp
Delete all archived logs from disk after they are successfully backup : không nên chọn
Use proxy copy supported by media management software
to perform a backup : không chọn.
Delete obsolete backups : không chọn
Maximum Files per Backup Set : không thiết lập giá trị
Trang 25HOT BACKUP
Đặc Điểm : được thực thi trong lúc database mở Online
redo logs file chứa những thay đổi gồm những dữ liệu chưa
được ghi vào datafiles
Online redo log lúc backup phải lưu trữ và sao lưu những
thay đổi cùng với datafile để duy trì những thay đổi này
Phải recovery lại sau khi restore
Ưu điểm của backup không nhất quán là ta có thể backup
database trong khi database mở để cập nhật
Trang 26HOT BACKUP VỚI ENTERPRISE MANAGER
Trang 27HOT BACKUP VỚI ENTERPRISE MANAGER
Chọn Schedule Customized Backup
Chọn Whole Database Điền đúng và đầy đủ Usename, Password trong phần Host Credentials.
Backup Type: chọn Full BackUp.
Backup Mode: chọn Online backup nếu database thiết lập trong
chế độ Archivelog để có thể back up toàn bộ dữ liệu
Use proxy copy supported by media management software
to perform a backup : không chọn.
Delete obsolete backups : không chọn
Maximum Files per Backup Set : không thiết lập giá trị
Tiếp tục Click Next đến khi finished
Trang 28HOT BACKUP VỚI RMAN
Recovery Manager(RMAN) là một thành phần trong
Oracle Database 10g được sử dụng để thực thi các tiến trình sao lưu
và phục hồi dữ liệu cho phép khả năng điều khiển việc lưu trữ Vật
Lý (physical database backups) nhiều hơn.
Ưu Điểm :
Bạn có thể dùng bộ công cụ RMAN dể quản lý giống như dùng với GUI interface của Enterprise Managerment
Cú pháp đơn giản với tập lệnh mạnh mẽ và nhất quán
=> RMAN là công cụ được Oracle đầu tư và hướng người dùng sử dụng bắt đầu từ phiên bản Oracle 8
Trang 29CƠ CHẾ HOẠT ĐỘNG RMAN
Trang 30CÁCH KHỞI ĐỘNG RMAN
% rman TARGET [/ CATALOG]cat_usr/pwd@cat_str
nhập với quyền SYSDBA.
• Ví Dụ : Kết nối RMAN với cat_usr là sys, pwd là vudinhdung, cat_str là orcl
rman target system/sysorcl@orcl
Trang 31CẤU TRÚC BACKUP VỚI RMAN
Cấu Trúc Lệnh RMAN :
BACKUP [ (
(FULL | INCREMENTAL LEVEL [=] integer)
| [ (FULL | INCREMENTAL LEVEL [=] integer) ]
AS (COPY | BACKUPSET)
| AS (COPY | BACKUPSET) (FULL | INCREMENTAL LEVEL [=] integer) )
] [backupOperand [backupOperand] ]
backupSpec [backupSpec]
[PLUS ARCHIVELOG [backupSpecOperand [backupSpecOperand] ]];
Trang 32LƯU Ý KHI BACKUP VỚI RMAN
Khi thực thi một backup sử dụng RMAN, phải chỉ rõ:
Loại backup sẽ được thực thi : FULL hay INCREMENTAL ?
Backup cái gì :
DATABASE,DATAFILE,TABLESPACE,ARCHIVELOG, CURRENT CONTROLFILE hay SPFILE ?
Backup sẽ được lưu trữ dưới dạng nào : AS COPY hay AS
BACKUPSET ?
Tên và đường dẫn của các backup piece(FORMAT)
Những data file hay archive redo log nào sẽ bị bỏ qua trong backup set(SKIP)
Dung lượng nhỏ nhất của backup set(MAXSETSIZE)
Có xóa các input file khi tạo thành công backup set hay
Trang 33NGUYÊN TẮC BACKUP VỚI RMAN
Các nguyên tắc khi thực hiện
Database đích phải được mount tới RMAN để kết nối
Những backup của online redo logs không được hỗ trợ
Nếu database đích ở chế độ NOARCHIVELOG,backup
chỉ có thể tiếp nhận những “clean” tablespace và data file
Sao lưu database được tiếp nhận chỉ khi database đã hoàn
toàn shutdown trước và restart lại trong chế độ mount
Nếu database đích ở chế độ ARCHIVELOG,chỉ “current” data file có thể được back up
Nếu một recovery catalog được sử dụng thì recovery
catalog database phải được mở
Trang 34CÁC KIẾU BACKUP TRONG RMAN
Trang 35BACKUP SETS
Khi backup một database để tiết kiệm thời gian ta có thể chia nhỏ tiến
trình thành nhiều kênh chạy song song.
Ví Dụ : RMAN> RUN {
2> ALLOCATE CHANNEL c1 DEVICE TYPE sbt;
3> ALLOCATE CHANNEL c2 DEVICE TYPE sbt;
4> ALLOCATE CHANNEL c3 DEVICE TYPE sbt;
5> BACKUP 6> INCREMENTAL LEVEL = 0 7> FORMAT '/disk1/backup/df_%d_%s_%p.bak' 8> (DATAFILE 1,4,5 CHANNEL c1)
9> (DATAFILE 2,3,9 CHANNEL c2) 10> (DATAFILE 6,7,8 CHANNEL c3);
11> ALTER SYSTEM ARCHIVE LOG CURRENT;}
Ngoài ra để tiết kiệm dung lượng ổ đĩa ta có thể compress backup set.
Ví Dụ : RMAN> BACKUP AS
2> COMPRESSED BACKUPSET 3> DATABASE;
Trang 36CÁC KIẾU BACKUP TRONG RMAN
RMAN> BACKUP AS COPY 4> ARCHIVELOG LIKE 'arch_1060.arc'
Trang 37CÁC LOẠI HÌNH BACKUP VỚI RMAN
Tablespace backups : Backup các data file trong tablespace.Chỉ hợp lệ nếu database
đang trong chế độ ARCHIVELOG
Trang 38CÁC LOẠI HÌNH BACKUP VỚI RMAN
Data file backups : Backup một data
file riêng lẻ Hợp lệ nếu database đang trong
chế độ ARCHIVELOG.Chỉ hợp lệ ở chế độ
NOARCHIVELOG khi:
Mỗi data file trong tablespace đã được
backup.Bạn không được phép restore
database nếu còn data file chưa được
backup.
Trang 39CÁC LOẠI HÌNH BACKUP VỚI RMAN
backup và recovery database.Không có control file bạn không thể mount hay open database.Có 2 cách thực hiện là : tự động hoặc bằng tay
Trang 40CÁC LOẠI HÌNH BACKUP VỚI RMAN
Archive redo log backups : Rất cần thiết để
phục hồi 1 inconsistent backup.Cách duy nhất để phục hồi một inconsistent backup mà không cần archive log là sử dụng
incremental backup.Để phục hồi 1 backup từ đầu đến log gần
đây nhất mỗi log giữa điểm đầu và cuối phải có hiệu lực.Để
backup archive redo log sử dụng lệnh:
BACKUP ARCHIVELOG
Hoặc
BACKUP PLUS ARCHIVELOG
Whole database backups : Backup tất cả data
file trong database và control file.Hợp lệ ở cả 2 chế độ
ARCHIVELOG và NOARCHIVELOG.Sử dụng lệnh :
Trang 41WHOLE DATABASE BACKUPS
Trang 42CÁC LOẠI HÌNH BACKUP VỚI RMAN
Incremental backups :
Full backups : Khác whole database backups ở chỗ bao
gồm toàn bộ các block,chỉ bỏ qua các block không bao giờ được sử dụng
Incremental backups :
• Differential: Được thiết lập mặc định trong
incremental backups,backup tất cả các block thay đổi kể
từ lần incremental backup gần đây nhất tại level 0 hoặc 1
• Cumulative: backup tất cả các block thay đổi kể từ
lần incremental backup gần đây nhất tại level 0
Khai báo :
Trang 43INCREMENTAL BACKUP
Ví Dụ :
Để thực thi một incremental backup tại level 0,ta sử
dụng lệnh sau
BACKUP INCREMENTAL LEVEL 0 DATABASE;
Để thực thi một differential backup tại level 0,ta sử
dụng lệnh sau
BACKUP INCREMENTAL LEVEL 1 DATABASE;
Để thực thi một cumulative backup tại level 0,ta sử
dụng lệnh sau :
BACKUP INCREMENTAL LEVEL 1
CUMULATIVE DATABASE;
Trang 44VÍ DỤ VỀ RMAN BACKUP
Ví Dụ :
Vào Run -> gõ cmd -> gõ “ cd C:\”
Gỏ C:\sqlplus/nolog
Gỏ sql> conn/as sysdba đưa database vào chế độ Archivelog : sql>
alter database archivelog;
Sau đó từ C:\ gõ rman rồi enter
rman> connect target sys/sys@oravn as sysdba
rman> backup database;
rman> backup current controlfile; để backup theo nơi lưu trữ của mình chỉ định thì bổ sung lệnh
rman> configure channel device type disk format ‘E:\backup\_%U’;
lệnh này là backup dữ liệu datafile
rman> configure controlfile autobackup format for device type disk to
Trang 45copy những file vật lý có sẵn từ bản Backup
Restore từ consistent backup : Có thể mở database ngay
lúc backup
Restore từ inconsistent backup : Có thể mở database cho
tới khi mọi thay đổi ghi vào redo logs được commit và ghi vào datafiles Việc ghi nhận những thay đổi từ redo log vào datafiles được restore từ inconsistent backup được gọi là
Media Recovery
Trang 46 Khái Niệm : Recovery là tiến trình update dữ
liệu cùng với những thay đổi được restore từ bản
Back Up, điển hình sử dụng redo log file.
Phân loại
Media recovery
Flash Recovery Area
RMAN Repository
Trang 47MEDIA RECOVERY
Media recovery cần :
Một control file
Datafiles(restored from backup)
Online và archived redo logs chứa những thay đổi kể từ
thời điểm datafiles được back up
Ứng Dụng : Phần lớn, Media recovery được sử dụng để
khôi phục từ media failure, như là mất 1 file hoặc disk, hoặc 1 lỗi user như là việc xóa nội dung cúa 1 table
Có 2 hình thức media recovery :
Complete recovery
Point-in-time recovery
Trang 48MÔ HÌNH MEDIA RECOVERY
Trang 49HÌNH THỨC MEDIA RECOVERY
Complete recovery :
Datafiles được restore từ back up; tất cả những thay đổi lưu ở online và archived redo log được ghi vào datafiles Database được trở về trạng
thái của nó tại thời điểm failure, và được mở cùng với không có
commit thay đổi nào bị mất
Point-in-time recovery
Toàn bộ database được trả về thời điểm do ta chọn trong quá khứ
Trong khi phục hồi, mỗi sự thay đổi giữa thời điểm backup và thời điểm ta chọn sẽ được ghi vào datafiles.
Point-in-time recovery có thể trả database về trạng thái của nó bất cứ
thời điểm nào giữa thời điểm backup và thời điểm có sự thay đổi gần nhất trong archived redo log Tất cả những thay đổi sau thời điểm ta chọn sẽ bị loại bỏ.
Point-in-time recovery cũng có thể được gọi là incomplete recovery
Trang 50FLASH RECOVERY AREA
Để đơn giản hóa việc quản lý sao lưu và phục hồi các tập tin liên quan, Oracle cho phép bạn tạo ra một khu vực phục hồi
flash cho cơ sở dữ liệu của bạn Bạn phải chỉ định sau đây:
Một địa điểm, mà thường là một thư mục trên đĩa
Một hạn ngạch đĩa tối đa đối với diện tích thu hồi flash
Một chính sách lưu giữ để xác định mục tiêu thu hồi cơ sở dữ liệu của bạn
Ưu Điểm :
Trực tiếp liên quan đến hoạt động sao lưu, bao gồm lưu trữ của redo
log, để lưu trữ các tập tin được tạo ra trong khu vực phục hồi flash
Một khu vực phục hồi lưu trữ flash đơn giản hóa nhiệm vụ quản lý sao lưu
Trang 51FLASH RECOVERY AREA VỚI ENTERPRISE
MANAGER
Trên máy chủ, tạo ra một thư mục để chứa các khu vực phục
hồi flash
Trang database home, click Maintenance.
Trong phần Recovery Backup /, chọn Recovery Settings
Các trang Settings Recovery xuất hiện
Trong phần Flash Recovery, nhập đường dẫn đến vị trí flash
khu vực phục hồi (đường dẫn đến thư mục trên đĩa bạn đã tạo trong bước 1), Hãy chắc chắn rằng những thay đổi Apply để
SPFILE hộp duy nhất là không được chọn, sau đó nhấp vào
Apply để lưu các thiết lập của bạn
Click Tương thích với Flash Recovery Area để điều hướng
đến trang Recovery Settings, trong đó có một Flash Recovery Area
Trang 52RMAN REPONSITORY
RMAN duy trì một bản ghi của tất cả các file cơ sở
dữ liệu, sao lưu và phục hồi các tập tin, và lịch sử
sao lưu cơ sở dữ liệu của bạn Bản ghi này được
gọi là kho RMAN
Oracle sử dụng các bản ghi trong kho để
chọn sao lưu trên đĩa và băng cần thiết để
hoàn thành việc phục hồi