40
Kiến trúc Oracle và các tác vqun trcơ bản 1 HC VIN KTHUT MT MÃ KHOA CÔNG NGHTHÔNG TIN ĐỀ TÀI THC 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 dn: Nguyễn Văn Phác Sinh viên thc hin: - Đỗ Văn Minh Lp: AT6B Hà Ni 12/2012

Kien Truc Oracle Va Cac Tac Vu Quan Tri Co Ban

Embed Size (px)

Citation preview

Page 1: Kien Truc Oracle Va Cac Tac Vu Quan Tri Co Ban

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

Page 2: Kien Truc Oracle Va Cac Tac Vu Quan Tri Co Ban

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

Page 3: Kien Truc Oracle Va Cac Tac Vu Quan Tri Co Ban

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

Page 4: Kien Truc Oracle Va Cac Tac Vu Quan Tri Co Ban

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

Page 5: Kien Truc Oracle Va Cac Tac Vu Quan Tri Co Ban

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.

Page 6: Kien Truc Oracle Va Cac Tac Vu Quan Tri Co Ban

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

Page 7: Kien Truc Oracle Va Cac Tac Vu Quan Tri Co Ban

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

Page 8: Kien Truc Oracle Va Cac Tac Vu Quan Tri Co Ban

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

Page 9: Kien Truc Oracle Va Cac Tac Vu Quan Tri Co Ban

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.

Page 10: Kien Truc Oracle Va Cac Tac Vu Quan Tri Co Ban

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.

Page 11: Kien Truc Oracle Va Cac Tac Vu Quan Tri Co Ban

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.

Page 12: Kien Truc Oracle Va Cac Tac Vu Quan Tri Co Ban

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

Page 13: Kien Truc Oracle Va Cac Tac Vu Quan Tri Co Ban

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

Page 14: Kien Truc Oracle Va Cac Tac Vu Quan Tri Co Ban

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.

Page 15: Kien Truc Oracle Va Cac Tac Vu Quan Tri Co Ban

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.

Page 16: Kien Truc Oracle Va Cac Tac Vu Quan Tri Co Ban

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.

Page 17: Kien Truc Oracle Va Cac Tac Vu Quan Tri Co Ban

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

Page 18: Kien Truc Oracle Va Cac Tac Vu Quan Tri Co Ban

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 .

Page 19: Kien Truc Oracle Va Cac Tac Vu Quan Tri Co Ban

Kiến trúc Oracle và các tác vụ quản trị cơ bản

19

Page 20: Kien Truc Oracle Va Cac Tac Vu Quan Tri Co Ban

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ý

Page 21: Kien Truc Oracle Va Cac Tac Vu Quan Tri Co Ban

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

Page 22: Kien Truc Oracle Va Cac Tac Vu Quan Tri Co Ban

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

Page 23: Kien Truc Oracle Va Cac Tac Vu Quan Tri Co Ban

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.

Page 24: Kien Truc Oracle Va Cac Tac Vu Quan Tri Co Ban

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

Page 25: Kien Truc Oracle Va Cac Tac Vu Quan Tri Co Ban

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

Page 26: Kien Truc Oracle Va Cac Tac Vu Quan Tri Co Ban

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.

Page 27: Kien Truc Oracle Va Cac Tac Vu Quan Tri Co Ban

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

Page 28: Kien Truc Oracle Va Cac Tac Vu Quan Tri Co Ban

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.

Page 29: Kien Truc Oracle Va Cac Tac Vu Quan Tri Co Ban

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.

Page 30: Kien Truc Oracle Va Cac Tac Vu Quan Tri Co Ban

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.

Page 31: Kien Truc Oracle Va Cac Tac Vu Quan Tri Co Ban

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)

Page 32: Kien Truc Oracle Va Cac Tac Vu Quan Tri Co Ban

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.

Page 33: Kien Truc Oracle Va Cac Tac Vu Quan Tri Co Ban

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.

Page 34: Kien Truc Oracle Va Cac Tac Vu Quan Tri Co Ban

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,

Page 35: Kien Truc Oracle Va Cac Tac Vu Quan Tri Co Ban

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

Page 36: Kien Truc Oracle Va Cac Tac Vu Quan Tri Co Ban

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.

Page 37: Kien Truc Oracle Va Cac Tac Vu Quan Tri Co Ban

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 .

Page 38: Kien Truc Oracle Va Cac Tac Vu Quan Tri Co Ban

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.

Page 39: Kien Truc Oracle Va Cac Tac Vu Quan Tri Co Ban

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.

Page 40: Kien Truc Oracle Va Cac Tac Vu Quan Tri Co Ban

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/