Upload
duong-tuan-minh
View
437
Download
9
Embed Size (px)
Citation preview
Kiến trúc Oracle và các tác vụ quản trị cơ bản
1
HỌC VIỆN KỸ THUẬT MẬT MÃ
KHOA CÔNG NGHỆ THÔNG TIN
ĐỀ TÀI THỰC TẬP CƠ SỞ
Đề Tài : Tìm hiều kiến trúc Oracle và các tác vụ quản trị cơ
bản nhằm đảm bảo an toàn cho CSDL
Giảng viên hướng dẫn: Nguyễn Văn Phác
Sinh viên thực hiện:
- Đỗ Văn Minh
Lớp: AT6B
Hà Nội 12/2012
HÀ NỘI 12/2012
Kiến trúc Oracle và các tác vụ quản trị cơ bản
2
HỌC VIỆN KỸ THUẬT MẬT MÃ
KHOA CÔNG NGHỆ THÔNG TIN
ĐỀ TÀI THỰC TẬP CƠ SỞ
Tìm hiều kiến trúc Oracle và các tác vụ quản trị cơ bản nhằm đảm bảo an
toàn cho CSDL
Nhận xét của giảng viên hướng
dẫn:.............................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
Điểm chuyên cần của nhóm………………………………………………..
Điểm chấm kết quả bản in hoàn chỉnh của báo cáo thực
tập...............................................
Kiến trúc Oracle và các tác vụ quản trị cơ bản
3
Mục lục Đề Tài : Tìm hiều kiến trúc Oracle và các tác vụ quản trị cơ bản nhằm đảm bảo an toàn cho CSDL ........ 1
Lời Nói Đầu .................................................................................................................................................. 5
CHƯƠNG I: KIẾN TRÚC CỦA HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU ORACLE ......................................... 6
1.1 LỊCH SỬ PHÁT TRIỂN CỦA ORACLE ......................................................................................... 6
1.1.1 GIỚI THIỆU VỀ ORALCE ......................................................................................................... 6
1.1.2 CÁC PHIÊN BẢN ORALCE ...................................................................................................... 6
1.2 KIẾN TRÚC ORACLE ...................................................................................................................... 8
1.2.1 Oracle Istance .............................................................................................................................. 9
1.2.2 Oracle Dtabase ........................................................................................................................... 11
1.2.3 Kết nối tới Oracle Server : ......................................................................................................... 13
CHƯƠNG II QUẢN TRỊ NGƯỜI DÙNG VÀ BẢO MẬT TRONG ORACLE ..................................... 15
2.1 Phân loại User ................................................................................................................................... 15
2.1.1 Database Administrator ............................................................................................................. 15
2.1.2 Security Oficers ......................................................................................................................... 16
2.1.3 Application Developers ............................................................................................................. 16
2.1.4 Database Users ........................................................................................................................... 16
2.1.5 Network Administrators ............................................................................................................ 16
2.2 Các phương thức xác nhận User ....................................................................................................... 17
2.2.1 xác thực bằng Password ............................................................................................................. 17
2.1.2 xác thực bằng hệ điều hành ........................................................................................................ 17
2.1.3 xác thực qua mạng ..................................................................................................................... 17
2.3. Cài đặt cấu hình User ....................................................................................................................... 18
2.3.1 Profile ........................................................................................................................................ 18
2.3.2 Tablespace mặc định .................................................................................................................. 18
2.3.3 Tablespace tạm ......................................................................................................................... 18
CHƯƠNG III SAO LƯU VÀ PHỤC HỒI DỮ LIỆU ................................................................................ 20
3.1 Khái quát về sao lưu và phục hồi dữ liệu .......................................................................................... 20
3.1.1 khái niệm về sao lưu và phục hồi dữ liệu .................................................................................. 20
3.1.2 Nguyên tắc sao lưu và phục hồi ................................................................................................. 20
3.1.3 chiến lược sao lưu và phục hồi .................................................................................................. 27
3.2 Giải pháp sao lưu RMAN ................................................................................................................ 29
3.2.1 Giới thiệu RMAN ...................................................................................................................... 29
Kiến trúc Oracle và các tác vụ quản trị cơ bản
4
3.2.2 Các cấu hình cơ bản môi trường RMAN ................................................................................... 31
3.2.3 Quản lý RMAN .......................................................................................................................... 34
Chương IV DEMO ..................................................................................................................................... 38
4.1 quản lý User ...................................................................................................................................... 38
4.2 sao lưu và phục hồi ........................................................................................................................... 38
KẾT QUẢ ĐẠT ĐƯỢC VÀ PHƯƠNG HƯỚNG PHÁT TRIỂN CỦA ĐỀ TÀI ..................................... 39
Kiến trúc Oracle và các tác vụ quản trị cơ bản
5
Lời Nói Đầu
Trong khoảng thời gian nhà trường xếp lịch thực tập cơ sở chuyên ngành với các đề tài do sinh
viên tự chọn, nhận thấy bản thân có niềm đam mê và yêu thích đối với bộ môn CSDL cá nhân em đã lựa
chọn đề tài “Tìm hiều kiến trúc Oracle và các tác vụ quản trị cơ bản nhằm đảm bảo an toàn cho CSDL
“ vì thông tin là một phần không thể thiếu của bất kỳ cá nhân hay doanh nghiệp nào. Đối với các doanh
nghiệp tầm cỡ thì thông tin được lưu trữ thành một cơ sở dữ liệu và với xu thế hiện nay, CSDL Oracle
chiếm được nhiều ưu thế và có tương lai phát triển ngày càng mạnh, Oracle ngày càng được sử dụng rộng
rãi bởi các ưu điểm vượt trội của nó như: Tính sẵn sàng, tính bảo mật,có khả năng xử lý một lượng rất lớn
dữ liệu…..
Nhận thấy tầm quan trọng của CSDL nên em đã lựa chọn đề tài này với mong muốn có một cái
nhìn sâu sắc về kiến trúc của Oracle, bên cạnh đó là một số thao tác quản trị cơ bản mà người
DBA(Database Admin) cần phải nắm vững
Về nội dung của đề tài “Tìm hiều kiến trúc Oracle và các tác vụ quản trị cơ bản nhằm đảm bảo an toàn
cho CSDL “ được chia thành 3 chương như sau
Chương 1 kiến trúc của hệ quản trị cơ sở dữ liệu Oracle : đi sâu mô tả kiến trúc tổng thể của
csdl Oracle, cách kết nối tới csdl
Chương 2 quản trị người dùng và bảo mật trong Oracle: nội dung đề cập đến các user trong
csdl, các phương thức xác nhận user và việc cài đặt cấu hình user nhằm đảm bảo an toàn
Chương 3 sao lưu và phục hồi: đề cập đến các loại và hình thức sao lưu, phục hồi trong Oracle,
giới thiệu tiện ích RMAN mà Oracle cung cấp nhằm thực hiện chức năng sao lưu và phục hồi
Vì thời gian làm đề tài thực tập có hạn và đây là lần đầu tiếp xúc với một hệ quản trị csdl lớn, kinh
nghiệm thực tế của bản thân chưa có nên bài báo cáo của em không tránh khỏi những thiếu sót, nhầm lẫn.
em mong nhận được sự nhận xét đánh giá góp ý của các thầy cô.
Em xin gửi lời cảm ơn tới thầy Nguyễn Văn Phác đã tận tình giúp đỡ em trong quá trình thực hiện đề
tài này. Em cũng xin gửi lời cảm ơn tới cô Đoàn Ngọc Uyên đã dạy cho em những kiến thức cơ bản về lý
thuyết cơ sở dữ liệu và MS-SQL để em có đam mê và động lực tìm hiểu sâu hơn về lĩnh vực mà bản thân
quan tâm.
Kiến trúc Oracle và các tác vụ quản trị cơ bản
6
CHƯƠNG I KIẾN TRÚC CỦA HỆ QUẢN TRỊ CƠ SỞ DỮ
LIỆU ORACLE
1.1 LỊCH SỬ PHÁT TRIỂN CỦA ORACLE
1.1.1 GIỚI THIỆU VỀ ORALCE
Cơ sở dữ liệu oracle là một cơ sở dữ liệu mạnh mẽ nhất thế giới. Được thiết
kế để triển khai cho mọi môi trường doanh nghiệp. Việc cài đặt, quản lý rất dễ
dàng, các công cụ để phát triển các ứng dụng một cách hoàn thiện và nhanh chóng.
Cơ sở dữ liệu oracle phù hợp cho mọi loại dữ liệu, các ứng dụng và các môi trường
khác nhau bao gồm cả windows và linux.
Hệ quản trị cơ sở dữ liệu oracle 9i/10g/11g. Đây cóthể nói là một hệ quản trị
csdl hàng đầu trên thế giới. Hơn hai phần ba trong số 500 tập đoàn công ty lớn nhất
thế giới (fortune 500) sử dụng oracle.Ở việt nam hầu hết các đơn vị lớn thuộc các
ngành ngân hàng, kho bạc, thuế, bảo hiểm, bưu điện, hàng không, dầu khí,… đều
sử dụng hệ quản trị csdl oracle.
Những ưu điểm của ORACLE
Độ ổn định và tin cậy cao.
Khả năng xử lý dữ liệu rất lớn, có thể lên đến hàng trăm terabyte mà
vẫn đảm bảo tốc độ xử lý dữ liệu rấtcao.
Khả năng bảo mật cao, oracle đạt độ bảo mật cấp C2 theo tiêu chuẩn
bảo mật của bộ quốc phòng mỹ và công nghệ csdl oracle vốn được
hình thành từ yêu cầu đặt hàng của các cơ quan an ninh FBI và CIA.
Oracle còn là một hệ csdl độc lập với hệ điều hành. Nó cho phép không chỉ
chạy trên các hệ điều hành thương mại windows mà còn cóthể chạy trên các hệ
điều hành mã nguồn mở miễn phí như linux mà không cần phải viết lại PL/SQL
code.Oracle giúp cho các doanh nghiệp sử dụng thông tin chất lượng cao để kết
hợp, đo lường các kết quả và truyền một cách chính xác nhất đến tất cả các thành
viên trong doanh nghiệp.
1.1.2 CÁC PHIÊN BẢN ORALCE
Năm 1977 Thành lập Relational Software Inc. (Larry Ellison, BobMiner, và
Ed Oates).Năm 1978 Phiên bản Oracle v1 đầu tiên, chạy trên hệ điều hành PDP-11
của máy RSX (dòng của hãng DEC), khả năng sử dụng bộ nhớ tối đa là 128
KB.Viết bằng ngôn ngữ Assemblỵ.Oracle V1 chỉ được sử dụng trong nội bộ công
ty, không được phát hành ra bên ngòaị.Năm 1980 Phát hành phiên bản Oracle v2 -
Đây cũng là hệ cơ sở dữ liệu thương mại đầu tiên sử dụng ngôn ngữ SQL.Phiên
Kiến trúc Oracle và các tác vụ quản trị cơ bản
7
bản này vẫn được viết bằng Assembly cho PDP-11, tuy nhiên, nó còn chạy được
trênVax/VMS.
Năm 1982 Phát hành Oracle v3 released, Oracle trở thành DBMS đầu tiên
chạy trên các máy mainframes, minicomputers, và PC's (portable codebase). Phiên
bản Oracle đầu tiên thể làm việc theo "transactional".Oracle v3 được viết bằng C.
Năm 1983 Relational Software Inc. đỗi tên thành Oracle Corporation.
Năm 1984 Phát hành Oracle v4, giới thiệu tính năng "read consistency", có
thể chạy trên nhiều Hệ Điều Hành, và cũng là phiên bản đầu tiên chạy theo mô
hình PC - Server.Năm 1986 Phát hành Oracle v5. Thực sự là CSDL client/server,
hổ trợ cluster trên VAX. CSDL đầu tiên sử dụng truy vấn dữ liệu phân tán
(distributed queries).Năm 1988 Phát hành Oracle v6. Giới thiệu ngôn ngữ
PL/SQL.Oracle cũng giới thiệu sản phẩm ứng dụng sử dụng CSDL Oracle - Oracle
Financial Applications. Năm 1989 Phát hành Oracle v6.2 với tính năng chạy song
song – Oracle Parallel Server. Năm 1992 Phát hành Oracle v7 chạy trên UNIX.
Năm 1993 Phát hành bộ công cụ phát triển ứng dụng - Oraclés Cooperative
Development Environment (CDE).Giới thiệu "Oracle Industries" và "Oracle Media
Server".Năm 1994 Phát hành Oracle v7.1 và Oracle v7 trên máy PC.
Năm 1997 Phát hành Oracle8 , giới thiệu Cơ sở Dữ liệu Hướng Đối Tượng -
object-relational. Năm 1998 Phát hành phiên bản trên Intel Linux. Năm 1999 Phát
hành Oracl8i (i = internet), tích hợp với máy ảo Java – JVM.
Năm 2000 Phát hành Oracl8i Release 2 Ngòai Oracle Database, Oracle còn
phát triển bộ sản phẩm ứng dụng cho doanh nghiệp – ERP. Phát hành Oracl9i
Application Server, đây là một sản phẩm thuộc lớp giữa (midle tier).
Năm 2001 Phát hành Oracl9i Release 1 với tính năng Cluster (RAC) và
Advanced Analytic Service. Năm 2002 Phát hành Oracl9i Release 2.
Năm 2004 Phát hành Oracle10g Release 1 (g = grid).Năm 2005 Phát hành
Oracle10g Release 2.
Năm 2009 ra mắt Database 11g Release 2.Trong phiên bản mới này, công
nghệ (RAC) cung cấp tính năng cấu hình động trên cụm máy chủ (grid plug and
play) và khả năng hợp nhóm các máy chủ, cho phép các doanh nghiệp giảm thiểu
Kiến trúc Oracle và các tác vụ quản trị cơ bản
8
chi phí máy chủ bằng cách sắp xếp hợp lý việc triển khai và quản lý lưới cơ sở dữ
liệu hợp nhất.
Oracle RAC one Node, một tính năng mới trong CSDL Oracle cũng
được giới thiệu. Oracle RAC one Node là giải pháp cho phép khách
hàng dễ dàng hợp nhất các môi trường cơ sở dữ liệu trên cùng một
nền tảng điện toán lưới với tính dự phòng và sẵn sàng cao được cung
cấp bởi Oracle Real Application Clusters.
công nghệ ASM (Oracle Automatic Storage Management - khả năng
tự động quản lý vùng lưu trữ) được mở rộng để hỗ trợ lưu trữ trên hệ
thống tệp tin (Cluster File System) nhằm giúp khách hàng giảm chi
phí quản lý lưu trữ.
1.2 KIẾN TRÚC ORACLE
Hình 1.1 các thành phần của hệ quản trị cơ sở dữ liệu Orlace
Kiến trúc Oracle và các tác vụ quản trị cơ bản
9
1.2.1 Oracle Istance
1.2.1.1 Kiến trúc bộ nhớ memory structures System Global Area – SGA
Là vùng bộ nhớ chia sẻ được sử dụng để lưu trữ dữ liệu và các thông tin
điều khiển của Oracle server . SGA được cấp phát trong bộ nhớ máy tính mà
Oracle server đang hoạt động trên đó. Các User kết nối tới Oracle sẽ chia sẻ các
dữ liệu có trong SGA. Việc mở rộng không gian nhớ trong SGA sẽ làm nâng cao
hiệu suất của hệ thống, lưu trữ được nhiều dữ liệu trong hệ thông hơn đồng thời
giảm được thời gian truy xuất đĩa.
SGA bao gồm vài cấu trúc bộ nhớ chính
Share pool : là một phần của SGA lưu các cấu trúc bộ nhớ chia sẻ.
Database buffer cache : lưu trữ các dữ liệu sử dụng gần nhất.
Redolog buffer: được sử dụng cho việc dò tìm lại các thay đổi trong CSDL
và được thực hiện bởi các tiến trình nền .
1.2.1.2 Kiến trúc PGA (program global are )
Hình 1.2 kiến trúc PGA
- Là bộ nhớ dành riêng cho người dùng kết nối tới một CSDL Oracle.
- Được cấp phát khi một tiến trình được tạo ra.
- Thu hồi khi tiến trình kết thúc.
Kiến trúc Oracle và các tác vụ quản trị cơ bản
10
- Chỉ được dùng cho duy nhất 1 tiến trình.
1.2.1.3 Kiến trúc xử lý( Process Structure)
Bao gồm
– sever process.
– user process.
– background process( DBWn, CKPT, LGWR, SMON,PMON).
1.2.1.4 Kiến trúc lưu trữ CSDL ( Database Storage Architeture )
Những file cấu tạo nên một CSDL Oracle bao gồm
- Control files: bao gồm thông tin về csdl( csdl gì, thông tin cấu trúc vật lý của
csdl…). Nhưng file này có tính quyết định tới csdl. Nếu không có chúng thì
ta không thể truy cập tới file dữ liệu trong database. Ngoài ra nó còn chứa
metadata liên quan đến sao lưu dữ liệu.
- Data files : bao gồm người dùng hoặc ứng dụng dữ liệu của CSDL.
- Online redo log file: cho phép phục hồi Instance của CSDL. Nếu sever csdl
xảy ra xự cố và không còn bất kì file dữ liệu nào thì Instance có thể được
khôi phục với thông tin của những online redo log file này.
- Parameter files : được dung để định nghĩa Instance được cấu hình như thế
nào khi khởi động.
- Password file: cho các user sử dụng vai trò sysdba, sysoper và sysasm để
điều khiển kết nối tới Instance và quản trị các tác vụ.
- Backup file: được dùng cho khôi phục CSDL. Dùng khi xảy ra sự cố vật lý
hoặc lỗi do người dùng thay đổi hoặc xỏa file nguyên bản.
- Archived redo log files: bao gồm một lịch sử đang diễn ra của sự thay đổi dữ
liệu phát sinh bởi Instance . sử dụng những file này và file backup của csdl
ta có thể khôi phục data file đã mất.
- Trace files: mỗi sever và tiến trình nền có thể ghi tới một trace file phụ. Khi
xảy ra lỗi bên trong một tiến trình thì tiến trình sẽ đưa thông tin lỗi tới trace
file đó.. một vài thông tin được ghi tới trace file có tác dụng cho những
người quản trị CSDL. Trái lại những thông khác là dành cho dịch vụ hỗ trợ
của Oracle.
- Alert log file: chúng là những trace file đặc biệt.
Kiến trúc Oracle và các tác vụ quản trị cơ bản
11
1.2.2 Oracle Dtabase
Hình 1.3cấu trúc oracle database
Oracle database là tập hợp các dữ liệu được xem như một đơn vị thành phần
có nhiệm vụ lưu trữ và trả về các thông tin liên quan.
1.2.2.1 cấu trúc vật lý
Cấu trúc vật lý của database bao gồm
Datafile.
Redo Log File.
Control File.
Datafile :
CSDL có thể có một hay nhiều datafile. Các datafile này chưa toàn bộ dữ
liệu trong CSDL .Các dữ liệu thuộc cấu trúc logic của CSDL như table hay index
đều được lưu trữ dưới dạng vật lý trong các datafile của CSDL.
Kiến trúc Oracle và các tác vụ quản trị cơ bản
12
Redo Log File:
Có chức năng là ghi lại tất cả các thay đổi với dữ liệu trong CSDL. Chính vì
thế nó được sử dụng để bảo vệ CSDL khỏi các hỏng hóc do sự cố. một CSDL đều
có ít nhất từ 2 redo log file trở lên.
Control File:
Controlfile là một file thông tin dạng nhị phân nó được sử dụng cho việc
khởi tạo và vận hành database một cách hiệu quả. Mỗi khi Instance được MOUNT
với một Oracle database. Các thông tin trong controlfile sẽ được đọc ra từ đó xác
định các datafile và các online redo log files.
Control file chứa các thông tin quy định cấu trúc vật lý của CSDL như
Tên CSDL.
Tên và nơi lưu trữ các datafile hay redo log file.
Mốc thời gian tạo lập CSDL.
1.2.1.2 cấu trúc logic
Cấu trúc Logic của database bao gồm
Databases.
Tablespaces.
Datafiles.
Hình 1.4 Quan hệ giữa database,tabespaces và datafiles
Kiến trúc Oracle và các tác vụ quản trị cơ bản
13
Một số điểm cần quan tâm
Mỗi datafile có thể phân chia về mặt logic thành một hay nhiều tablespace
Mỗi tablespace về mặt vật lý có thể được tạo nên bởi một hoặc nhiều datafile
Kích thước của một tabllespace bằng tổng kích thươc của các datafile tạo
nên nó.
Kích thước của database cũng có thể được xác định bằng tổng kích thước
của tablespace tạo nên nó.
1.2.3 Kết nối tới Oracle Server :
Hình 1.5 các cách kết nối tới CSDL Oralce
Một User có thể kết nối tới Oracle Server thông qua một trong ba cách sau:
Kết nối trực tiếp: User sẽ logon trực tiếp trên hệ thống đang chạy Oracle
Instance và sử dụng các ứng dụng, công cụ để thao tác lên cơ sở dữ liệu của
hệ thống này.
Kết nối hai lớp: User sử dụng ứng dụng, công cụ từ một máy trạm nào đó và
kết nối tới Oracle Server (mô hình Client-Server). Trong mô hình này chúng
Kiến trúc Oracle và các tác vụ quản trị cơ bản
14
ta có 2 thành phần là: Front-End (client) và Back-End (Server) được kết nối
thông qua mạng.
Kết nối ba lớp: User sẽ truy xuất tới một máy chủ ứng dụng (Application
Server) trung gian bằng các công cụ (như Web Browser chẳn hạn) từ một
máy trạm (Client). Sau đó máy chủ ứng dụng trung gian này sẽ thay mặt
Client tương tác với máy chủ cơ sỡ dữ liệu (Database Server).
Quá trình kết nối tới Database Instance:
Hình 1.6 quá trình kết nối tới database instance
Về User process và Server process: Về mặt lý thuyết thì User không thể thao
tác trực tiếp tiếp trên cơ sỡ dữ liệu được. Mà User sẽ tạo ra các yêu cầu (gọi là
User process), các yêu cầu này sẽ được gửi tới Server và Server sẽ thực hiện các
yêu cầu này (Server Process) để tác động lên cơ sỡ dữ liệu.
Ở cơ sở dữ liệu Oracle, việc kết nối tới một Database Instance có hai khai niệm
mà chúng ta cần biết đó là Connection và Session.
Connection: Là quá trình giao tiếp giữa một User Process và một Instance.
Con đường liên lạc này có thể được thiết lập như một trong ba cách kết nối
tới Oracle Server mà mình đã nói ở trên. Có nghĩa là một hệ thống có thể
vừa chạy cả User Process và Oracle Database, hoặc có thể tách ra, kết nối
thông qua một mạng.
Session: Là một kết nối cụ thể từ một User tới một Instance thông qua User
Process. Ví dụ khi một User sử dụng SQL*Plus đăng nhập vào Oracle
Server, nếu quá trình đăng nhập thất bại thì sẽ không có chuyện gì xãy ra.
Nếu User đăng nhập thành công, thì một Session (phiên làm việc) sẽ được
thiết lập từ đây. Session sẽ tồn tại cho tới khi User ngắt kết nối khỏi hệ
thống.
Kiến trúc Oracle và các tác vụ quản trị cơ bản
15
Các bước kết nối đến DataBase
Để kết nối tới database trước tiên . cần phải tạo liên kết đến oracle sever. Liên
kết tới oracle sever được tạo theo các bước sau
- User sử dụng công cụ SQL*Plus hay các công cụ khác của Oracle để khởi
tạo tiến trình. Trong mô hình client-sever các ứng dụng này nằm trên máy
client.
- Uer thực hiện login vào Oracle sever thông qua các khai báo username và
password và tên liên kết tới database . các ứng dụng Tool sẽ tạo một tiến
trình để kết nối tới Oracle sever qua các tham số này . tiến trình này là tiến
trình phục vụ sẽ giao tiếp với Oracle sever thay cho tiến trình của user chạy
trên máy client.
CHƯƠNG II QUẢN TRỊ NGƯỜI DÙNG VÀ BẢO MẬT
TRONG ORACLE
2.1 Phân loại User
2.1.1 Database Administrator
Do hệ thống Oracle database có thể là rất lớn và có nhiều useser cùng tham
gia vào hệ thống. khi đó sẽ có một hay một số người chịu trách nhiệm quản lý hệ
thống. những người có vai trò như vậy gọi là Database Administrator (DBA). Mỗi
một database cần ít nhất 1 người để thực hiện công việc quản trị.
Một DBA có trách nhiệm thực hiện các công việc
cài đặt và nâng cấp Oracle server và các công cụ ứng dụng khác.
phân phối hệ thống lưu trữ và lên kế hoạch lưu trữ cho hệ thống cơ sở dữ
liệu trong tương lai. Tạo những cấu trúc lưu trữ cơ bản như tablespace phục
vụ cho việc phát triển và hoạt động của các ứng dụng.
tạo các đối tượng trong database như tables, views, indexes sử dụng cho các
ứng dụng được thiết kế.
thay đổi cấu trúc database khi cần thiết tùy theo các thông tin của các
Application.
quản lý các Users và đảm bảo bảo mật hệ thống.
đảm bảo tương thích về bản quyền, phiên bản với hệ thống Oralce.
điều khiển và quản trị các user access truy xuất tới database.
quản lý và tối ưu hóa các truy xuất tới database.
Kiến trúc Oracle và các tác vụ quản trị cơ bản
16
lên kế hoạch sao lưu và phục hồi các thông tin có trong database.
lưu trữ các archive data.
sao lưu và khôi phục database.
cập nhật các công nghệ mới áp dụng vào CSDL.
2.1.2 Security Oficers
Trong một số trường hợp, hệ thống đòi hỏi chế độ bảo mật cao. Khi đó cần
đến một hay một nhóm người chuyên thực hiện công tác bảo vệ database gọi là
security officers. Security officer có thể kết nối đến database, điều khiển và quản lý
truy cập database của các users và bảo mật hệ thống.
2.1.3 Application Developers
Application Developers là người thiết kế và viếc các ứng dụng database. có
trách nhiệm thực hiện công việc .
thiết kế và phát triển ứng dụng database.
thiết kế cấu trúc database cho từng ứng dụng.
đánh giá yêu cầu lưu trữ cho ứng dụng.
quy định các hình thức thay đổi cấu trúc database của ứng dụng.
thiết lập biện pháp bảo mật cho ứng dụng được phát triển.
2.1.4 Database Users
Database users tương tác với database thông qua các ứng dụng và các tiện
ích. Một user thường thực hiện những công việc.
truy nhập, sử đổi và xóa hủy các dữ liệu được phép.
tạo các báo cáo đối với dữ liệu.
2.1.5 Network Administrators
Đối với database Oracle hoạt động trên môi trường mạng. khi đó cần có một
user thực hiện công việc quản trị mạng.User này có trách nhiệm đảm bảo các ứng
dụng hoạt động tốt trên môi trường mạng.Công việc của Netword Administrators.
Nâng cấp, cài đặt và troubleshoots mạng kết nối, mạng thiết bị phần cứng và
phần mềm.
Phát triển và tiêu chuẩn hệ thống tài liệu cho các thiết bị máy tính và mạng.
Đề xuất và sắp lịch sửa chữa, bảo trì mạng LAN / WAN.
Kiến trúc Oracle và các tác vụ quản trị cơ bản
17
2.2 Các phương thức xác nhận User
Hình 2.1 các phương thức xác nhận User
2.2.1 xác thực bằng Password
Oracle sẽ hỏi người dùng về tên truy cập và mật khẩu. nếu khớp với số liệu
được lưu trong hệ thống bảo mật của CSDL thì User đó được quyền truy cập và
gán cho các quyền tương ứng.
2.1.2 xác thực bằng hệ điều hành
Đối với một số HĐH nếu User của HĐH trùng tên với user của CSDL thì
khi user đăng nhập vào hđh user cũng đã đồng thời được đăng nhập vào csdl. DBA
cần cài đặt một tài khoản có tên là OSP$ username cho user của hđh có tên là
username khi đăng nhập vào csdl user sẽ không phải nhập password mà thay vào
đó là một dấu slash.
2.1.3 xác thực qua mạng
Kiến trúc Oracle và các tác vụ quản trị cơ bản
18
Hình 2.2 phương thức xác nhận User bằng SSL
User sẽ truy xuất tới một máy chủ ứng dụng (Application Server) trung gian
bằng các công cụ (như Web Browser chẳn hạn) từ một máy trạm (Client). Sau đó
máy chủ ứng dụng trung gian này sẽ thay mặt Client tương tác với máy chủ cơ sở
dữ liệu (Database Server).
2.3. Cài đặt cấu hình User
Hình 2.2 bảo mật và người dùng
2.3.1 Profile
Là tập các giới hạn về tài nguyên của CSDL với Profile DBA có thể thiết kế
được các giới hạn cho các user trong một session.DBA gán các tên tương ứng với
một giới hạn tài nguyên xác định cho các profile và tùy theo yêu cầu của User.
DBA gán từng profile cho từng user.
2.3.2 Tablespace mặc định
Có thể coi tablespace là một thư mục gốc của một user nghĩa là nếu ta thực
hiện lệnh CREAT một đối tượng nào đó mà không chỉ định rõ tablespace thì đối
tượng vừa tạo sẽ nằm trong tablespace mặc định của user đang đang nhập.
2.3.3 Tablespace tạm
Chức năng là tạo một vùng lưu trữ tạm cho việc thực hiện các lệnh SQL có
vùng lưu trữ lớn như các lệnh GROUP BY, ORRDER BY.. khi đó Oracle sẽ chiếm
lấy các extent lien tục trong tablespace tạm để thực hiện các sắp xếp và kết nối cần
thiết sau khi hoàn thành Oracle sẽ giải phóng ngay segment đã dùng .
Kiến trúc Oracle và các tác vụ quản trị cơ bản
19
Kiến trúc Oracle và các tác vụ quản trị cơ bản
20
CHƯƠNG III SAO LƯU VÀ PHỤC HỒI DỮ LIỆU
3.1 Khái quát về sao lưu và phục hồi dữ liệu
3.1.1 khái niệm về sao lưu và phục hồi dữ liệu
Backup là việc tạo ra các bản sao của dữ liệu gốc, cất giữ ở một nơi an toàn.
Và lấy ra sử dụng (restore) khi hệ thống gặp sự cố.
Sao lưu (backup) và khôi phục (restore) dữ liệu, là kỹ thuật thường được sử
dụng nhằm bảo đảm an toàn dữ liệu phòng trường hợp CSDL bị hỏng.Trong quá
trình thực hiện quản trị CSDL thì một số nguyên nhân sau đây ta phải sử dụng đến
kỹ thuật sao lưu và khôi phục dữ liệu:
Ổ đĩa bị hỏng (chứa các tập tin CSDL).
Lỗi ứng dụng.
Lỗi do người dung.
Server bị hỏng.
Nguyên nhân bên ngoài (thiên nhiên, hỏa hoạn, mất cắp,...).
Bị vô tình hay cố ý làm thông tin sai lệch.
Bị hack…..
3.1.2 Nguyên tắc sao lưu và phục hồi
Tùy theo yêu cầu sao lưu CSDL mà ta có các loại sao lưu như sau
Sao lưu vật lý và sao lưu logic.
Sao lưu toàn bộ và sao lưu từng phần.
Sao lưu online và sao lưu offline.
Sao lưu nhất quán và sao lưu không nhất quán.
Sao lưu nóng và sao lưu lạnh.
Oracle cung cấp 3 loại phục hồi dữ liệu cơ bản
Instace Recovery.
Crash Recovery.
Media Recovery.
* sao lưu vật lý
Kiến trúc Oracle và các tác vụ quản trị cơ bản
21
Là sao lưu các file CSDL vật lý, các datafile và các control file . Nếu CSDL
đang hoạt động trong chế độ ARCHIVELOG thì CSDL cũng tạo ra các archived
redo log ta có thể sao lưu các datafile , control file các archived redolog.
Sao lưu vật lý chia thành 2 loại : image copy và image backup trong một định dạng
proprietary ( độc quyền)
+ Image copy là một bản sao chính xác của một datafile, control file hoặc
một archived log. Có thể tạo image copy của các file vật lý bằng các tiện ích
của hệ điều hành hoặc bằng câu lệnh COPY trong RMAN. Và có thể phục
hồi mà không cần thực hiện thêm tiến trình nào bằng cách sử dụng các tiện
ích hệ điều hành hoặc là câu lệnh RESTORE trong RMAN.
+ Image backup là tạo ra một tập các bộ sao lưu(backupset) và các bộ sao
lưu này là đối tượng vật lý chứa một hoặc nhiều phần sao lưu( backup piece
).
Backup piece là một file vật lý trong định dạng độc quyền của ORalce.
Image backup tạo ra một bộ sao lưu cho mỗi kích cỡ của các khối tablespace . kích
thước chuẩn của bộ sao lưu là 8K. ngoài ra có thể tạo thêm 4 kích thước phi chuẩn
nữa phụ thuộc vào thời điểm khởi tạo tablespace. Bộ sao lưu là một không gian lưu
trữ vật lý mà quan hệ giữa các khối dữ liệu và đơn vị lưu trữ ổ đĩa phải tuân theo
quy luật nhất định mà Oralce đề ra.RMAN sao chép các khối thuộc tablespace
cùng kích cỡ vào cùng một bộ sao lưu.
* sao lưu logic
Là sao lưu các đối tượng CSDL như: bảng, thủ tục được lưu,…sao lưu logic
là xuất các lược đồ đối tượng và một file nhị phân. Sử dụng các tiện ích Import và
Export để di chuyển dữ liệu Oracle trong và ngoài của lược đồ Oracle.
* Sao lưu toàn bộ
Là sao lưu control file hiện tại và tất cả các datafile của CSDL. Sao lưu toàn
bộ là dạng sao lưu phổ biến nhất.
Sao lưu toàn bộ không yêu cầu vận hành CSDL trong chế độ lưu trữ cụ thể.
Tuy nhiên trước khi thực hiện sao lưu toàn bộ thì người dùng phải có kiến thức
Kiến trúc Oracle và các tác vụ quản trị cơ bản
22
liên quan đến việc thực hiện sao lưu CSDL trong chế độ ARCHIVELOG và
NOARCHIVELOG.
Hình sau miêu tả các tùy chọn cấu hình hợp lệ cho chế độ sao lưu
Hình 2.3 Các tùy chọn trong sao lưu toàn bộ
Sao lưu toàn bộ có thể là sao lưu nhất quán hoặc sao lưu không nhất quán.
Dù sao lưu là nhất quán hay không thì cũng chỉ ra rằng người dùng cần áp dụng
các redo log sau khi khôi phục bản sao lưu đó.
có thể thực hiện việc sao lưu toàn bộ bằng các phương pháp sau
Sử dụng tiện ích của hệ điều hành tạo ra các bản copy cho từng datafile riêng
lẻ cũng như controlfile hiện thời của CSDL.
Dùng lệnh RMAN BACKUP DATABASE.
Chạy lệnh RMAN COPY DATAFILE dựa vào chuỗi datafile trong CSDL
và chạy lệnh COPY CURENT CONTROLFILE dựa vào controlfile hiện
thời của CSDL.
* Sao lưu từng phần
Whole database backup
NoArchived Log
Open, inconsistent(not vaild)
Close
consistent inconsitent(not
vaild)
Archived Log
Open, inconsistent
Close
consistent inconsistent
Kiến trúc Oracle và các tác vụ quản trị cơ bản
23
+ sao lưu tablespace
Sao lưu tablespace là sao lưu các datafile mà tạo thành tablespace. Ví dụ :
nếu một tablespace của người dùng chứa các datafile 2,3,4 thì khi sao lưu phải sao
lưu đủ 3 file này.
Sao lưu tablespace online hay offline chỉ hợp lệ nếu CSDL hoạt động trong
chế độ ARCHIVEGLOG. Bởi vì người dùng phải thực hiện lại các thay đổi đối với
tablespace để tablespace được phục hồi phù hợp với các tablespace khác trong
CSDL.
Thời điểm duy nhất sao lưu tablespace hợp lệ với CSDL trong chế độ
NOARCHIVELOG khi tablespace hiện tại là tablespace chỉ đọc hoặc tablespace
offline-normal . các trường hợp này là ngoại lệ bởi vì các tablespace này không có
bất kì một thay đổi nào nên khi phục hồi lại chúng người dùng không cần phải thực
hiện lại các thay đổi.
+Sao lưu datafile
Sao lưu datafile là sao lưu một datafile riêng lẻ. sao lưu datafile không phổ biến
như sao lưu tablespace và hợp lệ khi CSDL hoạt động trong chế độ
ARCHIVELOG . nếu CSDL đang hoạt động trong chế độ NOARCHIVELOG thì
sao chép datafile là hợp lệ nếu
Tất cả các datafile trong tablespace đã được sao lưu. Và không thể khôi phục
CSDL trừ khi tất cả các datafile được sao lưu.
Các datafile là Read-only hoặc offline-normal.
Có thể thực hiện sao lưu dataifle riêng lẻ bằng các cách như
Sử dụng tiện ích của hệ điều hành.
Dùng câu lệnh RMAN BACKUP DATAFILE.
Dùng RMAN COPY DATAFILE để tạo bản sao datafile.
+sao lưu controlfile
Sao lưu control file là một khía cạnh quan trọng trong sao lưu và phục hồi
bởi nếu một control file không truy cập được thì ta sẽ không thể mount hoặc mở
CSDL.
Kiến trúc Oracle và các tác vụ quản trị cơ bản
24
Nếu sự dụng RMAN để sao lưu và phục hồi. và sau đó chạy lệnh
CONFIGURE CONTROLFILE AUTOBACKUP thì RMAN sẽ tự động sao lưu
control file. Bởi vì sao lưu tự động sử dụng filename mặc định,RMAN có thể khôi
phục bản sao lưu này thậm chí nếu RMAN không có sẵn. do đó tính năng này rất
hữu ích để khôi phục lại các thể hiện trong trường hợp gặp sự cố.
Có thể thực hiện sao lưu thủ công các control file theo các cách sau:
RMAN BACKUP CURRENT CONTROLFILE tạo ra một bản sao lưu
RMAN sao lưu control file của CSDL và lệnh COPY CURRENT
CONTROLFILE tạo một image copy control file của CSDL.
Câu lệnh ALTER DATABSE BACKUP CONTROLFILE tạo ra một bản
sao lưu nhị phân của control file.
Câu lệnh ALTER DATABASE BACKUP CONTROLFILE TO TRACE
xuất nội dung của control file ra một file SQL script. Có thể sử dụng script
này tạo một control file mới.
+ sao lưu achived redo log
Các Archived redo log rất quan trọng để khôi phục một bản sao lưu không
nhất quán. Cách duy nhất để phục hồi một bản sao lưu không nhất quán mà không
sử dụng các Archived Log là sử dụng sao lưu dự phòng tang(Incremental
backup)RMAN. Để có thể khôi phục lại một bản sao lưu thông qua bản sao ghi log
gần nhất, mỗi bản ghi được tạo ra giữa hai điểm phải sẵn sàng để sử dụng(
available). Nói cách khác không thể khôi phục từ bản ghi 100 đến 200 nếu bản ghi
160 bị mất nếu bản ghi 160 bị mất phải ngừng khôi phục tại bản ghi 159 và mở
CSDL với tùy chọn RESETLOGS.
Bởi vì Archived redo log rất quan trọng nên cần phải sao lưu thường xuyên.
*sao lưu nhất quán
Là sao lưu của một hoặc nhiều các file CSDL, thực hiện khi CSDL đã đóng
lại bằng lệnh shutdown clean. Không giống như sao lưu không nhất quán, sao lưu
toàn bộ nhất quán không yêu cầu hồi phục sau khi nó được khôi phục. cho dù thực
hiện sao lưu nhất quán hay không nhất quán đều phụ thuộc một số nhân tố. nếu
CSDL phải luôn mở và sẵn sàng đáp ứng bất cứ lúc nào thì sao lưu không nhất
quán là lựa chọn duy nhất. nếu thời gian sử dụng tối thiểu theo định kỳ thì người
Kiến trúc Oracle và các tác vụ quản trị cơ bản
25
dùng có thể quyết định sao lưu nhất quán của toàn bộ CSDL một cách định kỳ và
bổ sung chúng với bản sao lưu online của các tablespace thường sử dụng.
Cách duy nhất để tạo bản sao lưu toàn bộ CSDL một cách nhất quán là
shutdown CSDL với các tùy chọn NORMAL, IMMEDIATE hoặc
TRANSACTIONAL và thực hiện sao lưu khi mà CSDL được đóng lại.
* sao lưu không nhất quán
Sao lưu không nhất quán là sao lưu của một hay nhiều các file CSDL mà
người dùng thực hiện trong khi CSDL vẫn đang hoạt động hoặc sau khi CSDL
được shutdown một cách bất thường.
Sao lưu không nhất quán là sao lưu mà trong đó tất cả các datafile đọc/ghi và
các control file chưa được checkpoint SCN giống nhau. Ví dụ, một datafile header
read/write có thể chứa một SCN 100 trong khi các datafile header read/write khác
có thể chứa SCN 95 hoặc 90. Oralce không thể mở CSDL cho tới khi tất cả các
header SCN này nhất quán với nhau, có nghĩa là cho tới khi tất cả các thay đổi
được ghi lại trong các online redo log được áp dụng cho các datafile trên đĩa.
Nếu CSDL chạy 24/7 thì không có sự lựa chọn khác là phải thực hiện sao
lưu không nhất quán cho toàn bộ CSDL. Ví dụ sao lưu một tablespace offline trong
một CSDL đang mở là không nhất quán với các tablespace khác bởi vì các phần
trong CSDL đang được sửa đổi và ghi vào đĩa trong khi sao lưu tablespace đang
được xử lý. Các datafile header của các datafile online và datafile offline có thể
chứa SCN không nhất quán. Người dùng phải chạy CSDL trong chế độ
ARCHIVELOG để thực hiện sao lưu trực tuyến các datafile online.
Nếu CSDL hoạt động trong chế độ ARCHIVELOG, người dùng có thể xây
dựng sao lưu toàn bộ CSDL bằng cách sử dụng sao lưu các datafile online tại các
thời điểm khác nhau.
* sao lưu online
Người dùng có thể sao lưu tất cả các datafile hoặc các datafile được chỉ ra
trong tablespace online của CSDL đang mở nhưng chỉ với CSDL hoạt động trong
chế độ ARCHIVELOG. Trong trường hợp này, oracle có thể ghi các thay đổi lên
Kiến trúc Oracle và các tác vụ quản trị cơ bản
26
các datafile online trong khi quá trình sao lưu cũng đang được thực hiện. sao lưu
các datafile online được gọi là một sao lưu online.
Khi sao lưu một datafile riêng lẻ hoặc một tablespace online với tiện ích của
hệ điều hành, người dùng phải xử dụng một phương pháp khác để xử lý các future
block. Đầu tiên người dùng phải đặt tablespace online vào chế độ sao lưu bằng câu
lệnh TABLESPACE BEGIN BACKUP. Kết quả là Oralce ngừng việc ghi các
checkpoint vào các datafile của tablespace. Sau đó phải đặt tablespace vào chế độ
sao lưu được người dùng quản lý các datafile trong tablespace online,tablespace
read/write . sau khi sao lưu online hoàn thành , oracle chuyển file header tới điểm
kiểm tra CSDL hiện tại.
*sao lưu offline
Sao lưu offline được thực hiện trong khi các tablespace và datafile là offline.
Người dùng có thể đưa tablespace vào trạng thái offline bằng câu lệnh ALERT
TBALESPACE OFFLINE với các tùy chọn: NORMAL, IMMEDIATE,
TEMPORARY. Thực thi sao lưu offline với tùy chọn NORMAL phải chắc chắn
rằng sau khi quá trình sao lưu hoàn tất người dùng không phải thực hiện phục hồi
để đưa các tablespace hoặc datafile trở lại trạng thái online. Bằng cách này, người
dùng có thể thực hiện những sao lưu cần thiết trên các datafile và tablespace mà
không phải shutdown CSDL hoặc thực hiện phục hồi.
* Nguyên tắc phục hồi
Oracle cung cấp 3 loại phục hồi cơ bản đó là
Instance Recovery.
Crash Recovery.
Media Recovery.
Crash Recovery được sử dụng để phục hồi từ một lỗi khi CSDL của một thể
hiện đơn bị phá hủy hoặc CSDL của tất cả các thể hiện trong Oracle Real
Application Cluster bị phá hủy. Instance Recovery được đề cập trong trường hợp
thể hiện đó đang hoạt động(thể hiện còn sống sót trong khi các thể hiện khác đã
chết) được dùng để khôi phục thể hiện bị lỗi trong CSDL.
Kiến trúc Oracle và các tác vụ quản trị cơ bản
27
Mục tiêu của Instance Recovery và Crash Recovery là để khôi phục những thay
đổi khối dữ liệu nằm ở trong bộ nhớ cache của thể hiện không hoạt động và để
đóng redo thread mà đã được mở ra trước đó. Instance Recovery và Crash
Recovery chỉ sử dụng các online redo log file và các online datafile hiện tại. Oracle
khôi phục lại các redo thread của các thể hiện không hoạt động.
Instance Recovery và Crash Recovery có những đặc điểm chung sau
Thực hiện lại những thay đổi sử dụng các datafile online hiện tại.
Chỉ sử dụng các online redo log và không bao giờ yêu cầu sử dụng Archived
log.
Số lần phục hồi được quản lý bởi số lượng các thể hiện không hoạt động số
lượng redo được tạo ra trong mỗi redo thread không hoạt động kể từ lần
checkpoint cuối cùng và bởi các yếu tố được cấu hình bởi người dùng như
số lượng, kích thước của các redo log file, tần suất checkpoint và cài đặt
phục hồi song song.
Oracle thực hiện việc phục hồi tự động trên 2 thời điểm
Tại lần đầu tiên mở CSDL, sau khi một thể hiện CSDL đơn bị phá hủy hoặc
tất cả các thể hiện của CSDL Oracle Real Application bị phá hủy(Crash
Recovery).
Khi một vài thể hiện của Oracle Real Application Cluster cấu hình bị
lỗi(Instance Recovery). Việc phục hồi được thực hiện một cách tự động
bằng các thể hiện đang hoạt động trong cấu hình.
* Media Recovery được chia làm hai loại
Datafile Media Recovery: được sử dụng để phục hồi những datafile hoặc
control file hiện tại bị mất hoặc hư hại.
Block media Recovery: là kỹ thuật khôi phục và phục hồi các khối dữ liệu
riêng lẻ trong khi tất cả những file CSDL còn online và sẵn dung.
3.1.3 chiến lược sao lưu và phục hồi
Trước khi tạo một CSDL Oracle người dùng phải quyết định làm thế nào để
bảo vệ CSDL chống lại các nguy cơ dẫn đến hư hại CSDL. Nếu người dùng không
phát triển kế hoạch sao lưu trước khi tạo một CSDL thì người dùng có thể không
Kiến trúc Oracle và các tác vụ quản trị cơ bản
28
thực hiện được phục hồi nếu lỗi ổ đĩa phá hủy các datafile , các online redo logfile
hoặc các control file.
Quy tắc vàng của sao lưu và phục hồi
Một bộ các file cần thiết để phục hồi từ lỗi của bất kỳ file CSDL Oracle –
datafile, control file, hoặc online redo log được gọi là Redundancy set.
Redudancy set bao gồm
Bản sao lưu cuối cùng của control file và của các datafile.
Tất cả archived redo log được tạo sau khi bản sao lưu cuối cùng
được đưa ra.
Bản sao của online redo log file được tảo ra bởi việc nhân bản, ánh
xạ hề điều hành, hoặc cả hai.
Các file cấu hình như file sever parameter, tnsname.ora, và
listener.ora.
Quy tắc vàng của việc sao lưu và phục hồi là các thiết lập của ổ đĩa hoặc
media khác chứa sự thiết lập dư thừa( redundancy) nên đặt trên các ổ đĩa riêng biệt
chứa datafile , online redo log và control file. Chiến lược này đảm bảo ổ đĩa lỗi mà
chứa đĩa có datafile bị hỏng cũng không là nguyên nhân mất các bản sao lưu hay
các redo log cần thiết để phục hồi lại database. Do đó ở mức tối thiểu CSDL cần 2
ổ đĩa: một đễ giữ các file dự phòng ( Redudancy set) một đẽ giữ các file CDSL.
Người dùng có thể ứng dụng cho một hệ thống theo nguyên tắc vàng nhiều
cách khác nhau. Oracle khuyến cáo nên làm theo các hướng dẫn sau:
Nhân bản online redo log file và control file hiện tại ở mức Oracle, không
chỉ ở mức hệ điều hành hoặc ở mức phần cứng. Nhân bản ở mức Oralce có thuận
lợi là nếu lỗi I/O thì chỉ làm hỏng một trong số các bản copy.
Sử dụng hệ điều hành hoặc ánh xạ phần cứng máy tính ít nhất cho control
file, vì Oracle không cung cấp hỗ trợ đầy đủ cho nhân bản các control file
Giữ ít nhất một bản sao lưu dự phòng đầy đủ bao gồm bản sao lưu gần đây
nhất trên đĩa cứng.
Kiến trúc Oracle và các tác vụ quản trị cơ bản
29
Nếu bản sao lưu dự phòng được tạo ra bằng phân chia ánh xạ cục bộ, nó
không tốt như một bản sao lưu được tạo ra thông qua hệ điều hành hoặc lệnh
RMAN bởi vì nó dựa vào ánh xạ hệ thống con cho cả các file quan trọng và một
bản sao lưu dự phòng. Các file sao lưu cuối cùng vào băng, là bản sao lưu dự
phòng. Do đó giữ các Archived log là cần thiết để phục hồi các bản sao lưu này.
Nếu CSDL được lưu trữ trên thiết bị dự phòng RAID thì nên đặt bộ sao lưu
dự phòng trên một tập các thiết bị mà không phải trên cùng một thiết bị RAID.
Nếu giữ bộ sao lưu dự phòng trên băng thì duy trì ít nhất hai bản sao của dữ
liệu, bởi vì các băng có thể bị lỗi. Ngoài ra, nếu có nhiều bản sao lưu của cùng một
dữ liệu, thì xem xét việc giữ các bản sao lưu ở các thời điểm khác nhau. Bằng cách
này, nếu một bản sao lưu hoặc việc phân chia ánh xạ( split mirror) được thực hiện
khi CSDL đã bị lỗi, thì người dùng có một bản sao lưu cũ hơn khi CSDL không bị
lỗi.
3.2 Giải pháp sao lưu RMAN
3.2.1 Giới thiệu RMAN
RMAN (Recovery Manager )là công cụ sao lưu do Oralce cung cấp được
tích hợp sẵn trong CSDL dùng để thực hiện một loạt cách hành động sao lưu và
phục hồi, bao gồm cả việc duy trì các dữ liệu lịch sử về việc sao lưu.Giải pháp này
được sử dụng bởi nó cung cấp một giao diện chung cho các tác vụ sao lưu trên các
hệ điều hành khác nhau và cung cấp một số kỹ thuật sao lưu dành riêng cho Oracle.
Kiến trúc Oracle và các tác vụ quản trị cơ bản
30
Hình 3. 1 môi trường RMAN
RMAN có thể truy cập bằng dòng lệnh
% rman
RMAN> CONNECT TARGET SYS@prod
target database Password: password
connected to target database: PROD (DBID=39525561)
Hoặc qua Oracle Enterprise Manager.
Kiến trúc Oracle và các tác vụ quản trị cơ bản
31
Hình 3.2cấu trúc lệnh RMAN
3.2.2 Các cấu hình cơ bản môi trường RMAN
Để đơn giản hóa việc sử dụng liên tục của RMAN. Ta có thể thiết lập các cài
đặt cấu hình cho CSDL. Các thiết lập này kiểm soát nhiều khía cạnh của RMAN.
Ví dụ: ta có thể cấu hình chính sách duy trì sao lưu, nơi lưu trữ mặc định cho sao
lưu, thiết bị mặc định sao lưu tới ( Tapes).
Ta có thể dùng lệnh. SHOW hoặc CONFIGURE để xem và cấu hình các
thay đổi RMAN.
Để xem cấu hình mặc định của RMAN ta có thể dùng lệnh SHOW ALL.
Đối với hầu hết các thông số cần thiết để sao lưu. RMAN cung cấp cấu hình
mặc định hợp lý cho phép sao lưu dự phòng và phục hồi dữ liệu cơ bản. Khi lựa
chọn chiến lược sao lưu bằng RMAN thì sẽ có hiệu quả cao hơn nếu ta biết cấu
hình những chọn khác.
+Cấu hình thiết bị mặc định cho sao lưu đĩa hoặc băng (Tapes)
Kiến trúc Oracle và các tác vụ quản trị cơ bản
32
Hình 3.3 cấu hình thay đổi đích sao lưu
Mặc định RMAN cấu hình sử dụng đĩa nhưng trong thực tế ta thường sử
dụng Tapse để sao lưu nên ta cần cấu hình lại đích đến để sao lưu.
Lệnh Ý nghĩa
CONFIGURE DEFAULT DEVICE
TYPE TO DISK
cài đĩa làm thiết bị sao lưu mặc định
CONFIGURE DEFAULT DEVICE
TYPE TO sbt
cài Tapse làm thiết bị sao lưu mặc
định
Bảng 3.1 cấu hình thiết bị sao lưu
+ cấu hình mặc định cho kiểu sao lưu: Backup sets hoặc Copies
RMAN có thể lưu trữ dữ liệu sao lưu trong một cấu trúc logic được gọi là
Backup sets, đó là đơn vị nhỏ nhất của một sao lưu RMAN. Một thiết lập sao lưu
có chứa các dữ liệu từ một hoặc nhiều datafiles, redo log file, archived redo log.
Backup sets được tạo ra và truy cập thông qua RMAN, Lệnh BACKUP có thể tạo
Backup sets hoặc image copies. Đối với đĩa ta có thể cấu hình RMAN tạo ra
Backup sets hoặc image copies.
Kiến trúc Oracle và các tác vụ quản trị cơ bản
33
Ta sử dụng lệnh CONFIGURE DEVICE TYPE DISK BACKUP TYPE TO
để đặt kiểu sao lưu mặc định.
RMAN có thể tạo file backup sets có nén. Ta có thể cấu hình RMAN để sử
dụng kiểu backup có nén làm mặc định bằng cách sử dụng lệnh COMPRESSED.
Ví dụ: cấu hình kiểu backup cho Disk
CONFIGURE DEVICE TYPE DISK BACKUP TYPE TO COPY; # image
copies
CONFIGURE DEVICE TYPE DISK BACKUP TYPE TO BACKUPSET; #
uncompressed
Ví dụ: cấu hình nén dữ liệu cho kiểu backup sets
CONFIGURE DEVICE TYPE DISK BACKUP TYPE TO COMPRESSED
BACKUPSET;
CONFIGURE DEVICE TYPE sbt BACKUP TYPE TO COMPRESSED
BACKUPSET;
+ cấu hình kênh
Một kênh RMAN là một phiên kết nối tới CSDL. RMAN sử dụng kênh này
để thực hiện các tác vụ.
Sử dụng lệnh CONFIGURE CHANNEL để cấu hình tùy chọn kênh cho đĩa
hoặc băng. Nếu sử dụng lệnh này để thiết lập kênh chung cho một thiết bị thì mọi
cài đặt trước đó được loại bỏ, ngay cả khi các thiết lập trước đó không hề mâu
thuẫn.
Mặc định RMAN sẽ cấp phát một kênh đĩa cho tất cả các hoạt động, ta có
thể phải xác định các tùy chọn khác nhau như vị trí đích đến sao lưu...
Ví dụ: cấu hình vị trí sao lưu đích đến khác vị trí mặc định CONFIGURE
CHANNEL DEVICE TYPE DISK FORMAT '/disk1/ora_df%t_s%s_s%p';
+ cấu hình control file và sever parameter file tự động backup
Ta có thể cấu hình để control file và parameter file tự động backup. Quá
trình tự động sao lưu sẽ xảy ra khi có một bản ghi sao lưu được thêm vào.
Kiến trúc Oracle và các tác vụ quản trị cơ bản
34
Nếu CSDL chạy trong chế độ ARCHIVELOG và một sao lưu tự động xảy ra
khi cấu trúc Metadata của CSDL trong control file thay đổi thì RMAN có thể khôi
phục lại CSDL ngay cả khi control file, recovery catalog và parameter file bị mất.
Bởi vì tên tập tin trong quá trình backup tự động theo một định danh nhất
định nên RMAN có thể tìm kiếm nó mà không cần truy cập vào kho lưu trữ và sau
đó khôi phục lại các tập tin parameter file. Sau khi ta khởi động Instace với các
paarameter file được phục hồi, RMAN có thể khôi phục controlfile từ quá trình sao
lưu tự động, sau khi mount các control file RMAN có thể khôi phục lại các datafile
và tìm kiếm archived redo logs.
Ta có thể kích hoạt tính năng sao lưu tự động bằng lệnh
CONFIGURE CONTROLFILE AUTOBACKUP ON;
Và tắt tính năng bằng lệnh
CONFIGURE CONTROLFILE AUTOBACKUP OFF;
3.2.3 Quản lý RMAN
3.2.3.1 báo cáo quá trình hoạt động của RMAN
Mục đích:
Ta nên xem các báo cáo định kỳ cho biết những gì đã được sao lưu, những
tập tin nào chưa được sao lưu để có thể lên kế hoạch sao lưu các file thiếu, file lỗi
một cách hợp lý. Mặt khác ta cũng cần phải có một cái nhìn tổng quan về không
gian lưu trữ để đưa ra các phương án bổ sung nếu cần thiết.
RMAN luôn lưu trữ các báo cáo của Metadata trong control file của CSDL
mà trên đó nó thực hiện các hoạt động.
Để xem quá trình hoạt động của RMAN ta sử dụng các lệnh trong bảng dưới
Nội dung danh sách Câu lệnh Ý nghĩa
Backup sets and
proxy copies
LIST BACKUP Ta có thể xem tất cả các
bộ backup, ảnh sao lưu, và
các chính sách sao lưu của
CSDL, datafile,
Kiến trúc Oracle và các tác vụ quản trị cơ bản
35
tablespace, control file or
sever parameter file.
Image copies LIST COPY Hiển thị bản sao lưu của
tất cả file CSDL và
archived redo log
Archived redo log
files
LIST ARCHIVELOG Đưa ra danh sách Archive
redo log file hoặc chỉ định
các tập tin lưu trữ đăng
nhập cá nhân thông qua
SCN, thời gian hoặc một
chuỗi các dãy số
Database
incarnations
LIST INCARNATION Liệt kê tất cả các thể hiện
của CSDL, một thể hiện
của CSDL mới được tao ra
khi ta mở tùy chọn
RESETLOGS
Databases in a Data
Guard environment
LIST DB_UNIQUE_NAME CSDL trong môi trường
Data Guard được phân
biệt bằng cách thiết lập
tham số khởi tạo của nó
Backups and copies
for a primary or
standby database in
a Data Guard
environment
LIST . . . FOR
DB_UNIQUE_NAME
Liệt kê tất cả các bản sao
lưu và ảnh sao lưu của một
CSDL trong môi trường
Data Guard
Restore points LIST RESTORE POINT Liệt kê các điểm hồi phục
mà RMAN biết tới
Kiến trúc Oracle và các tác vụ quản trị cơ bản
36
Names of stored
scripts
LIST SCRIPS NAME Đưa ra danh sách catalog
script được tạo ra bởi lệnh
CREAT SCRIPT hoặc
REPLACE SCRIPT
Failures for use
with Data Recovery
Advisor
LIST FAILURE Ánh xạ thời tùy chọn thay
đổi
Bảng 3. 2 danh sách các đối tượng liên quan đến sao lưu và phục hồi
Ta sử dụng cấu trúc lệnh V$ để xem truy vấn dữ liệu Metadata
3.2.3.2 duy trì sao lưu RMAN và lưu trữ các bản ghi
Các công việc để quản lý RMAN và các khu vực liên quan đến vấn đề bảo trì
CSDL đó là :
Duy trì kiểm soát control file.
Duy trì khu vực phục hồi nhanh.
Cập nhật báo cáo RMAN.
Xóa sao lưu RMAN và Achived redo logs.
Hủy một CSDL.
3.2.3.3. duy trì một Recovery Catalog
Một Recovery Catalog là một lược đồ CSDL sử dụng bởi RMAN để lưu trữ dữ
liệu về một hoặc nhiều CSDL Oracle. Thông thường ta lưu trữ catalog trong một
CSDL chuyên dụng. Một Recovery Catalog có các lợi ích như:
Tạo ra sự nhất quán cho lưu trữ RMAN được lưu trữ trong control file của
CSDL. Các recovery catalog giống như một kho lưu trữ thứ cấp. Nếu
control file và tất cả các file backup bị mất thì Metadata vẫn còn trong
Recovery Catalog .
Một Recovery Catalog tập trung tất cả Metadata cho CDSL. Lưu trữ các
Metadata ở một nơi duy nhất sẽ làm cho việc quản trị các báo cáo và tác vụ
dễ dàng hơn.
Kiến trúc Oracle và các tác vụ quản trị cơ bản
37
Một Recovery Catalog có thể lưu trữ lịch sử Metadata lâu hơn control file,
khả năng này rất hữu ích trong trường hợp ta phải phục hồi CSDL dữ liệu về
xa hơn so với thời gian trong control file.
Một số tình năng của RMAN chỉ có khi sử dụng Recovery Catalog .
Kiến trúc Oracle và các tác vụ quản trị cơ bản
38
Chương IV DEMO
4.1 quản lý User
Tạo mới một User với cơ chế xác nhận bởi DataBase.
Thay đổi thuộc tính của User đó.
Hủy User.
4.2 sao lưu và phục hồi
Tạo bản sao lưu dự phòng.
Tạo một sự cố nhỏ với csdl.
Khôi phục lại CDSL mà CSDL vẫn đang hoạt động.
Kiến trúc Oracle và các tác vụ quản trị cơ bản
39
KẾT QUẢ ĐẠT ĐƯỢC VÀ PHƯƠNG HƯỚNG PHÁT TRIỂN
CỦA ĐỀ TÀI
Kết quả:
Đã có thêm nhiều kiến thức về DBMS Oracle. Có cái nhìn tổng quát về kiến
trúc Oracle, Bảo mật trong Oracle về phương diện người dùng, sao lưu và phục hồi
đảm bảo an toàn cho hệ thống. nâng cao sự hiểu biết của bản thân về một lĩnh vực
chuyên sâu nhất định
Định hướng được hướng đi của bản thân trong việc tìm hiểu chuyên sâu
thêm về Oracle như các thao tác quản trị duy trì redo log file, data file,undo data..
Mục tiêu:
Tiếp tục tìm hiểu chuyên sâu về Oracle, các hệ thống triển khai trong thực tế
(RAC). Tìm hiểu các cơ chế mã hóa dữ liệu trong Oralce.
Tìm hiểu thêm về HĐH mã nguồn mở như Linux, Centos để có thể triển
khai Oracle trên các HĐH đó nhằm nâng cao tính sẵn sàng của hệ thống.
Triển khai một CSDL thực tế có quy mô nhỏ với mục đích kiểm thử và duy
trì cho CDSL đó hoạt động ổn định.
Kiến trúc Oracle và các tác vụ quản trị cơ bản
40
TÀI LIỆU THAM KHẢO
Kiến trúc và quản trị người dùng
“kiến trúc và quản trị CSDL Oracle “ do trung tâm điện toán-công ty điện
lực 2 biên dịch
Sao lưu và phục hồi
http://docs.oravn.com/B28359_01/backup.111/b28270/toc.htm
ngoài ra tham khảo thêm trong bộ giáo trình chuẩn của Oracle
http://docs.oravn.com/B28359_01/index.htm
và các website
http://khanh.com.vn/post/2011/08/14/Kien-truc-Oracle-Database-
Server.aspx
http://www.oravn.com/