ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ --- Đặng Minh Chính NGHIÊN CỨU GIẢI PHÁP TỰ ĐỘNG SAO LƯU VÀ KHÔI PHỤC DỮ LIỆU TRONG HỆ THỐNG THÔNG TIN ĐIỆN TỬ Ngành: Công nghệ thôn
Trang 1ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
-
Đặng Minh Chính
NGHIÊN CỨU
GIẢI PHÁP TỰ ĐỘNG SAO LƯU VÀ KHÔI PHỤC DỮ LIỆU
TRONG HỆ THỐNG THÔNG TIN ĐIỆN TỬ
Ngành: Công nghệ thông tin
Mã số: 1.01.10
LUẬN VĂN THẠC SỸ
NGƯỜI HƯỚNG DẪN KHOA HỌC:
PGS.TS Vũ Duy Lợi
Trang 2MỤC LỤC
MỤC LỤC……… 2
LỜI CAM ĐOAN……… 3
DANH MỤC BẢNG BIỂU……… 4
DANH MỤC KÝ HIỆU……… 5
MỞ ĐẦU……… 7
Chương 1: GIỚI THIỆU CHUNG 10
1.1 Sự cần thiết về sao lưu, khôi phục dữ liệu……… 10
1.2 Các hệ thống lưu trữ dữ liệu 12 1.2.1 Hệ thống lưu trữ DAS ……… 12
1.2.2 Hệ thống lưu trữ NAS ……… 14
1.2.3 Hệ thống lưu trữ SAN ……… 15
1.2.4 So sánh các hệ thống lưu trữ ……… 16
1.3 Ứng dụng sao lưu, khôi phục dữ liệu trong hệ thống thông tin điện tử của các cơ quan Đảng … 17
1.3.1 Các phần mềm ứng dụng dùng chung……… 17
1.3.2 Những hạn chế tồn tại ……… 19
1.3.3 Hướng giải quyết hạn chế tồn tại……… 19
Chương 2: CÁC PHƯƠNG PHÁP SAO LƯU, KHÔI PHỤC CƠ SỞ DỮ LIỆU ……… 20
2.1 Khái niệm cơ bản……… 20
2.1.1 Định nghĩa sao lưu, khôi phục dữ liệu ……… 20
2.1.2 Phân loại các kiểu sao lưu, khôi phục phục dữ liệu ……….…… 22
2.1.3 Tiêu chí đánh giá dịch vụ sao lưu, khôi phục dữ liệu … ………… 24
2.2 Các phương pháp sao lưu, khôi phục cơ sở dữ liệu ……… 26
2.2.1 Sao lưu, khôi phục cơ sở dữ liệu mức hệ điều hành……… 26
Trang 32.2.3 Sao lưu, khôi phục cơ sở dữ liệu mức ứng dụng……… 29
2.3 Đánh giá các phương pháp sao lưu, khôi phục cơ sở dữ liệu……… 31
Chương 3: ĐỀ XUẤT GIẢI PHÁP SAO LƯU, KHÔI PHỤC CÁC CƠ SỞ DỮ LIỆU……… 33
3.1 Mục đích, yêu cầu……… 34
3.2 Kiến trúc hệ thống, nguyên tắc hoạt động……… 35
3.2.1 Kiến trúc hệ thống ……… 35
3.2.2 Nguyên tắc hoạt động……… 38
3.3 Xây dựng và thử nghiệm hệ thống……… 39
3.3.1 Thiết kế chi tiết chương trình ……… 39
3.3.2 Nguyên tắc hoạt động ……… 41
3.3.3 Thử nghiệm chương trình ……… 42
KẾT LUẬN……… 47
TÀI LIỆU THAM KHẢO ……… 50
PHỤ LỤC……… 52
A Cài đặt và cách sử dụng chương trình……… 52
B Mã nguồn chương trình……… 53
C Cơ chế chạy tự động cron trong Linux……… 69
D Cơ chế chạy tự động Scheduled Tasks trong Windows……… 70
Trang 4LỜI CAM ĐOAN
Tôi luôn tâm niệm với bản thân rằng “Mình phải luôn luôn học tập và nghiên cứu để nâng cao kiến thức và trình độ chuyên môn nhằm mục đích trở thành con người hữu ích cho xã hội, cho đất nước” Chính vì vậy, tôi đã theo đuổi khoá học sau đại học cũng như lựa chọn và thực hiện luận văn này Tôi
tự tin và tự hào khi khẳng định rằng kết quả mình có được trong suốt quá trình học tập và nghiên cứu ở trường cũng như trong luận văn tốt nghiệp Thạc
sỹ của mình là kết quả của một quá trình học tập, công tác, nghiên cứu và thực hiện hoàn toàn nghiêm túc, trung thực của bản thân
Trong luận văn, tôi có tham khảo đến một số tài liệu của một số tác giả khác Chúng được liệt kê tại phần Tài liệu tham khảo ở cuối luận văn
Tôi xin cam đoan và chịu trách nhiệm về nội dung và sự trung thực trong luận văn tốt nghiệp Thạc sỹ của mình
Học viên Đặng Minh Chính
Trang 5DANH MỤC BẢNG BIỂU
Hình 1 Mô hình hệ thống lưu trữ DAS (Direct Access Storage) 12 Hình 2 Mô hình NAS (Network Attached Storage) 14
Hình 4 So sách các phương pháp sao lưu dữ liệu 16
Hình 9 Tiêu chí đánh giá dịch vụ khôi phục thảm hoạ 25 Hình 10 Sao lưu cơ sở dữ liệu mức hệ điều hành 26 Hình 11 Sao lưu, khôi phục cơ sở dữ liệu mức hệ quản trị cơ sở dữ liệu 28 Hình 12 Sao lưu, khôi phục cơ sở dữ liệu mức ứng dụng 30 Hình 13 Đánh giá các phương pháp sao lưu, khôi phục dữ liệu 32
Hình 15 Mô hình các chức năng cơ bản của chương trình 38 Hình 16 Giao diện của chương trình sao lưu dữ liệu 43 Hình 17 Bảng kết quả thời gian sao lưu dữ liệu 43 Hình 18 Giao diện của chương trình khôi phục dữ liệu 44 Hình 19 Bảng kết quả chương trình khôi phục dữ liệu 44 Hình 20 Màn hình các ứng dụng chạy trong chế độ crontab 68 Hình 21 Màn hình chọn tệp chạy tự động trong Scheduled Tasks 70 Hình 22 Màn hình chọn thời gian chạy ứng dụng trong Scheduled Tasks 70 Hình 23 Màn hình kết thúc quá trình đặt lịch chạy trong Scheduled Tasks 71
Trang 6DANH MỤC CÁC KÝ HIỆU
STT Ký hiệu Chú giải cho ký hiệu sử dụng
1 API Giao diện lập trình ứng dụng
3 Backup offline Sao lưu không trực tuyến
4 Backup online Sao lưu trực tuyến
5 2 consistent Tính nhất quán
6 3 Cron Cơ chế chạy tự động trong Linux
7 Control File Tệp điều khiển
9 Database Cơ sở dữ liệu
10 Database Access Libraries Thư viện truy xuất cơ sở dữ liệu
11 DMS Hệ thống quản trị tài liệu
13 Database need to backup Cơ sở dữ liệu cần sao lưu
15 Full Backup Sao lưu toàn bộ
16 Incremnental Backup Sao lưu gia tăng
19 J2EE Công nghệ phát triển các ứng dụng web,
chạy trên máy ảo Java
20 Java Complier Bộ dịch java
21 Modul Là một đoạn chương trình có khả năng
thực hiện một chức năng cụ thể
Trang 722 5 Transaction log Tệp ghi lại nhật ký các giao dịch
23 6 Pure java Hoàn toàn bằng java
26 Router Thiết bị định tuyến
27 Recovery Point Objective Thời gian khôi phục
30 Scheduled Tasks Cơ chế chạy tự động trong Windows
32 Type of database Loại cơ sở dữ liệu
33 9 Table space Không gian bảng
34 1
1 Time out Thời gian chờ, thời gian tạm ngƣng
35 1
36 1
4 WFS Hệ thống quản lý luồng công việc
Trang 8MỞ ĐẦU
1 Tính cấp thiết của luận văn
Thực hiện chỉ thị 58-CT/TW về đẩy mạnh ứng dụng và phát triển công nghệ thông tin phục vụ sự nghiệp công nghiệp hóa, hiện đại hóa và Đề án 06 tin học hoá hoạt động của các các cơ quan Đảng giai đoạn 2006 – 2010 nhằm xây dựng các hệ thống thông tin điện tử của các cấp uỷ Đảng đảm bảo cung cấp thông tin và trao đổi thông tin từ Trung ương xuống các địa phương Các ứng dụng dùng chung trong hệ thống các cơ quan Đảng được xây dựng trên
hệ thống mã nguồn mở, cài đặt trên nền hệ điều hành Linux, cơ sở dữ liệu Posgresql, MySQl, MicroSoft SQL Webserver là Tomcat, Application Server
là Jboss
Đây là hệ thống thông tin điện tử phục vụ sự lãnh đạo, chỉ đạo, điều hành của các cấp uỷ Đảng, nơi chứa các thông tin quan trọng của Đảng Do vậy, cần đảm bảo hệ thống này hoạt động liên tục và an toàn Các ứng dụng hiện nay đang được sao lưu, khôi phục một cách cục bộ Mỗi ứng dụng sử dụng một chương trình sao lưu riêng, việc sao lưu tương đối phức tạp, đòi hỏi người quản trị mạng phải có kiến thức nhất định về cơ sở dữ liệu mình quản
lý Việc xây dựng giải pháp sao lưu và khôi phục các cơ sở dữ liệu một cách tập trung, tự động là rất quan trọng và rất cần thiết
2 Mục đích của luận văn
- Nghiên cứu tổng quan về các giải pháp sao lưu, khôi phục dữ liệu
- Nghiên cứu đề xuất giải pháp tự động sao lưu và khôi phục các cơ sở
dữ liệu (hệ thống và ứng dụng) một cách tập trung, phù hợp với kiến trúc của
Trang 93 Đối tượng nghiên cứu
Đối tượng nghiên cứu của luận văn là hệ thống các cơ sở dữ liệu trong mạng diện rộng của các cơ quan Đảng
4 Phạm vi nghiên cứu
Luận văn nghiên cứu một cách tương đối có hệ thống về nguyên tắc, cơ chế hoạt động của các phương pháp sao lưu, khôi phục dữ liệu cơ bản Nghiên cứu cơ chế các phần mềm sao lưu, khôi phục của các hãng chuyên sao lưu khôi phục trên thế giới, đánh giá ưu nhược điểm, từ đó đưa ra giải pháp và xây dựng công cụ giúp sao lưu, khôi phục dữ liệu tự động trong các hệ thống thông tin điện tử
5 Phương pháp nghiên cứu
Luận văn kết hợp giữa mô hình nghiên cứu lí thuyết và ứng dụng minh họa để kiểm chứng Nói chính xác hơn là, từ những nghiên cứu lí thuyết và giải pháp lí thuyết, đánh giá ưu nhược điểm của các giải pháp về sao lưu, khôi phục, luận văn xây dựng một chương trình cho phép sao lưu, khôi phục dữ liệu một cách tập trung với nhiều tính năng vượt trội
Hệ thống được kiểm nghiệm trên một số cơ sở dữ liệu dùng chung trong các cơ quan Đảng
6 Ý nghĩa khoa học và thực tiễn của luận văn
Luận văn không chỉ nghiên cứu một cách khoa học, nguyên lý các cách thức sao lưu, khôi phục dữ liệu, đánh giá các giải pháp đang có trên thị trường, phân tích ưu nhược điểm của các giải pháp đó, mà còn đề xuất một giải pháp cũng dựa trên các nguyên tắc cơ bản về sao lưu, khôi phục dữ liệu nhưng được cải tiến một số nhược điểm mà các giải pháp trước đó gặp phải
Trang 10của mình Nó đóng góp một phần quan trọng trong việc đảm bảo an toàn dữ liệu và đảm bảo hoạt động liên tục của các hệ thống thông tin điện tử đang hoạt động trong mạng diện rộng của Đảng
7 Kết cấu luận văn
Ngoài phần Mở đầu và phần Kết luận, luận văn gồm có 3 chương sau:
Chương 1: Giới thiệu tổng quan về sự cần thiết sao lưu, khôi phục
dữ liệu và hiện trạng thực hiện các hệ thống thông tin điện tử trong các cơ quan Đảng
Chương 2 Nghiên cứu các giải pháp sao lưu, khôi phục dữ liệu,
đánh giá ưu nhược điểm của từng giải pháp
Chương 3: Đề xuất giải pháp sao lưu, khôi phục các cơ sở dữ liệu
áp dụng cho các hệ thống thông tin điện tử trong các cơ quan Đảng
Trang 11TÀI LIỆU THAM KHẢO
Tiếng Việt
1 Phan Đình Diệu [1999], Lý Thuyết Mật Mã và An Toàn Thông Tin
2 Nguyễn Văn Vị [2004], Phân tích thiết kế Hệ thống thông tin
3 Vũ Duy Lợi và Lê Trung Nghĩa [2006], Mô hình kiến trúc hệ thống công nghệ thông tin trong các cơ quan Đảng
4 Nguyễn Kim Anh [2004], Nguyên lý của các hệ cơ sở dữ liệu
5 Trần Tuấn Hƣng, Tạp chí bưu chính viễn thông số 6/2007, Tạo bản sao dữ liệu
6 Nguyễn Ngọc Tuấn - Hồng Phúc [2005], Phát triển cơ sở dữ liệu Java Oracle
7 Hoàng Ngọc Ân [1998], Lập trình Java thế nào, Nhà xuất bản thống kê
8 Website, cộng đồng java Việt Nam, http://www.javavietnam.org
Tiếng Anh
9 Beety Jo Armstead and Stephen Prahst [1995], Implementation of a Campuswide Distributed Mass Storage Service
10 Luis-Felipe Cabrera, Ribert Ress and Wayne Hineman [1995], Applying
Dabase Technology in the ADSM Mass Storage System
11 Subhash Bhalla and Stuart E Madnick [2003], Asyschronous Backup and
Initialization of a Database Server for Replicated Database Systems
12 Brett McLaughlin [2007], Building Java Enterprise Applications Vol 1
Trang 1213 Wei-Dong Zhu, Monti Abrahams, Doris Ming Ming Ngai, Sandi Pond,
Hernán Schiavi, Ed Stonesifer and Vanessa Stonesifer [2005], Content Manager OnDemand Backup, Recovery and High Availability
14 Lou Marco [2007], EJB & JSP - Java On The Edge, Unlimited Edition
15 Cay S Horstmann, Gary Cornell [2007], Core Java 2-Volume I Fundamentals, 7th Edition
16 Derek C.Ashmore [2004], J2EE Architects Handbook
17 Elmasri and Navathe, P.[2001], “Fundamentals of database systems”
18 QuickSpec HP, Corp [2004], HP StorageWork Enterprise Virtual Array
8000
19 Rogers Cadenhead - Laura Lemay [2007], Teach Yourself Java6 in 21 Days
20 Elmasri and Navathe, P.[2001], “Fundamentals of database systems”,
International edition, Third edition
21 Maurice Naftalin and Philip Wadler [2006], Java Generics and Collections
22 Ravi Kumar Khattar, Introduction to Storage Area Network, pp.52-61