(LUẬN VĂN THẠC SĨ) 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ử Luận văn ThS Công nghệ thông tin 1 01 10

72 3 0
(LUẬN VĂN THẠC SĨ) 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ử Luận văn ThS Công nghệ thông tin 1 01 10

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

ĐẠ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: Mã số: Cơng nghệ thông tin 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 Hà Nội - 2007 TIEU LUAN MOI download : skknchat@gmail.com MỤC LỤC MỤC LỤC………………………………………………………………………………… LỜI CAM ĐOAN………………………………………………………………………… DANH MỤC BẢNG BIỂU……………………………………………………………… DANH MỤC KÝ HIỆU………………………………………………………………… MỞ ĐẦU…………………………………………………………………………………… Chƣơng 1: GIỚI THIỆU CHUNG 10 1.1 Sự cần thiết lƣu, khôi phục liệu…………………………………… 10 1.2 Các hệ thống lƣu trữ 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 hệ thống lƣu trữ …………………………………………… 16 1.3 Ứng dụng lƣu, khôi phục liệu hệ thống thông tin điện tử 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 …………………………………………………… 19 1.3.3 Hƣớng giải 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 bản………………………………………………………………… 20 2.1.1 Định nghĩa lƣu, khôi phục liệu ………………………………… 20 2.1.2 Phân loại kiểu lƣu, khôi phục phục liệu …………….…… 22 2.1.3 Tiêu chí đánh giá dịch vụ lƣu, khôi phục liệu … ………… 24 2.2 Các phƣơng pháp lƣu, khôi phục sở liệu ……………………… 26 2.2.1 Sao lƣu, khôi phục sở liệu mức hệ điều hành………………… 26 2.2.2 Sao lƣu, khôi phục sở liệu mức hệ quản trị sở liệu…… 28 TIEU LUAN MOI download : skknchat@gmail.com 2.2.3 Sao lƣu, khôi phục sở liệu mức ứng dụng…………………… 29 2.3 Đánh giá phƣơng pháp lƣu, khôi phục sở 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 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 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 Linux………………………………………… 69 D Cơ chế chạy tự động Scheduled Tasks Windows…………………… 70 TIEU LUAN MOI download : skknchat@gmail.com DANH MỤC BẢNG BIỂU Hình Mơ hình hệ thống lưu trữ DAS (Direct Access Storage) 12 Hình Mơ hình NAS (Network Attached Storage) 14 Hình Mơ hình SAN (Storage Area Network) 15 Hình So sách phương pháp lưu liệu 16 Hình Kiến trúc phần mềm EDocMan 18 Hình Mơ hình tiến trình lưu liệu 20 Hình Mơ hình tiến trình khơi phục liệu 21 Hình So sánh giải pháp lưu trữ liệu 23 Hình Tiêu chí đánh giá dịch vụ khơi phục thảm hoạ 25 Hình 10 Sao lưu sở liệu mức hệ điều hành 26 Hình 11 Sao lưu, khôi phục sở liệu mức hệ quản trị sở liệu 28 Hình 12 Sao lưu, khơi phục sở liệu mức ứng dụng 30 Hình 13 Đánh giá phương pháp lưu, khôi phục liệu 32 Hình 14 Mơ hình kiến trúc tổng thể hệ thống 35 Hình 15 Mơ hình chức chương trình 38 Hình 16 Giao diện chương trình lưu liệu 43 Hình 17 Bảng kết thời gian lưu liệu 43 Hình 18 Giao diện chương trình khơi phục liệu 44 Hình 19 Bảng kết chương trình khơi phục liệu 44 Hình 20 Màn hình ứng dụng chạy chế độ crontab 68 Hình 21 Màn hình chọn tệp chạy tự động Scheduled Tasks 70 Hình 22 Màn hình chọn thời gian chạy ứng dụng Scheduled Tasks 70 Hình 23 Màn hình kết thúc trình đặt lịch chạy Scheduled Tasks 71 TIEU LUAN MOI download : skknchat@gmail.com DANH MỤC CÁC KÝ HIỆU STT Ký hiệu Chú giải cho ký hiệu sử dụng API Giao diện lập trình ứng dụng 1backup Sao lưu Backup offline Sao lưu không trực tuyến Backup online Sao lưu trực tuyến 2consistent Tính quán 3Cron Cơ chế chạy tự động Linux Control File Tệp điều khiển Client Máy trạm Database Cơ sở liệu 10 Database Access Libraries Thư viện truy xuất sở liệu 11 DMS Hệ thống quản trị tài liệu 12 Download Tải xuống 13 Database need to backup Cơ sở liệu cần lưu 14.4file tệp 15 Full Backup Sao lưu toàn 16 Incremnental Backup Sao lưu gia tăng 17 Instance Thực thể 18 Ip Giao thức Internet 19 J2EE 20 Java Complier 21 Modul Công nghệ phát triển ứng dụng web, chạy máy ảo Java Bộ dịch java Là đoạn chương trình có khả thực chức cụ thể TIEU LUAN MOI download : skknchat@gmail.com (LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10 22.5Transaction log Tệp ghi lại nhật ký giao dịch 23.6Pure java Hoàn toàn java 24.7Request Yêu cầu 25.8Response Phản hồi 26 Router Thiết bị định tuyến 27 Recovery Point Objective Thời gian khôi phục 28 Storge Lưu trữ 29 Server Máy chủ 30 Scheduled Tasks Cơ chế chạy tự động Windows 31 Swich Thiết bị chuyển mạch 32 Type of database Loại sở liệu 33.9Table space Không gian bảng 34.1 Time out Thời gian chờ, thời gian tạm ngưng 35.1 UMS Hệ thống quản lý người dùng 36.1 WFS Hệ thống quản lý luồng công việc (LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10 TIEU LUAN MOI download : skknchat@gmail.com (LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10 MỞ ĐẦU Tính cấp thiết luận văn Thực thị 58-CT/TW đẩy mạnh ứng dụng phát triển công nghệ thông tin phục vụ nghiệp công nghiệp hóa, đại hóa Đề án 06 tin học hoá hoạt động các quan Đảng giai đoạn 2006 – 2010 nhằm xây dựng hệ thống thông tin điện tử cấp uỷ Đảng đảm bảo cung cấp thông tin trao đổi thông tin từ Trung ương xuống địa phương Các ứng dụng dùng chung hệ thống quan Đảng xây dựng hệ thống mã nguồn mở, cài đặt hệ điều hành Linux, sở liệu Posgresql, MySQl, MicroSoft SQL Webserver Tomcat, Application Server Jboss Đây hệ thống thông tin điện tử phục vụ lãnh đạo, đạo, điều hành cấp uỷ Đảng, nơi chứa thông tin quan trọng Đảng Do vậy, cần đảm bảo hệ thống hoạt động liên tục an toàn Các ứng dụng lưu, khôi phục cách cục Mỗi ứng dụng sử dụng chương trình lưu riêng, việc 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 sở liệu quản lý Việc xây dựng giải pháp lưu khôi phục sở liệu cách tập trung, tự động quan trọng cần thiết Mục đích luận văn - Nghiên cứu tổng quan giải pháp lưu, khôi phục liệu - Nghiên cứu đề xuất giải pháp tự động lưu khôi phục sở liệu (hệ thống ứng dụng) cách tập trung, phù hợp với kiến trúc hệ thống thông tin điện tử (LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10 TIEU LUAN MOI download : skknchat@gmail.com (LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10 Đối tượng nghiên cứu Đối tượng nghiên cứu luận văn hệ thống sở liệu mạng diện rộng quan Đảng Phạm vi nghiên cứu Luận văn nghiên cứu cách tương đối có hệ thống nguyên tắc, chế hoạt động phương pháp lưu, khôi phục liệu Nghiên cứu chế phần mềm lưu, khôi phục hãng chuyên lưu khôi phục giới, đánh giá ưu nhược điểm, từ đưa giải pháp xây dựng công cụ giúp lưu, khôi phục liệu tự động hệ thống thông tin điện tử Phương pháp nghiên cứu Luận văn kết hợp mơ hình nghiên cứu lí thuyết ứng dụng minh họa để kiểm chứng Nói xác là, từ nghiên cứu lí thuyết giải pháp lí thuyết, đánh giá ưu nhược điểm giải pháp lưu, khôi phục, luận văn xây dựng chương trình cho phép lưu, khơi phục liệu cách tập trung với nhiều tính vượt trội Hệ thống kiểm nghiệm số sở liệu dùng chung quan Đảng Ý nghĩa khoa học thực tiễn luận văn Luận văn không nghiên cứu cách khoa học, nguyên lý cách thức lưu, khôi phục liệu, đánh giá giải pháp có thị trường, phân tích ưu nhược điểm giải pháp đó, mà đề xuất giải pháp dựa nguyên tắc lưu, khôi phục liệu cải tiến số nhược điểm mà giải pháp trước gặp phải Như vậy, luận văn đạt ý nghĩa khoa học khẳng định tính thực tiễn (LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10 TIEU LUAN MOI download : skknchat@gmail.com (LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10 Nó đóng góp phần quan trọng việc đảm bảo an toàn liệu đảm bảo hoạt động liên tục hệ thống thông tin điện tử hoạt động mạng diện rộng Đảng Kết cấu luận văn Ngoài phần Mở đầu phần Kết luận, luận văn gồm có chương sau: Chương 1: Giới thiệu tổng quan cần thiết lưu, khôi phục liệu trạng thực hệ thống thông tin điện tử quan Đảng Chương Nghiên cứu giải pháp lưu, khôi phục liệu, đánh giá ưu nhược điểm giải pháp Chương 3: Đề xuất giải pháp lưu, khôi phục sở liệu áp dụng cho hệ thống thông tin điện tử quan Đảng (LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10 TIEU LUAN MOI download : skknchat@gmail.com (LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10 Chƣơng 1: GIỚI THIỆU CHUNG 1.1 Sự cần thiết lưu, khôi phục liệu Trong thời đại ngày nay, thông tin đóng vai trị quan trọng hầu hết quan, tổ chức Xét khía cạnh công nghệ, hoạt động quan, tổ chức trình xử lý, trao đổi liệu lưu trữ thông tin Việc lưu, khôi phục liệu để đảm bảo hệ thống hoạt động liên tục, thông suốt ngày quan tâm cao đầu tư thỏa đáng Có nhiều nguyên nhân làm hỏng hóc mát liệu như: tệp chẳng may bị xố, trục trặc phần cứng, thơng tin liên quan nằm tệp khơng cịn truy cập Một quản trị viên giỏi phải đảm bảo cho người dùng tham khảo tệp “đã mất” Muốn vậy, quản trị mạng phải lưu liệu kịp thời Tương lai quan bạn tương lai bạn quan tuỳ thuộc vào việc người dùng truy cập tệp lưu Tại thời điểm nóng bỏng thế, thân bạn người khác có hội nhận thức giá trị thời gian công sức để chép liệu cách đặn, chặt chẽ theo thời điểm đầy đủ Việc lưu tệp không hấp dẫn, quản trị viên không am tường tiến trình lưu Trong trình thực lưu liệu xảy lỗi hệ thống, nghĩa liệu bị khơng lưu đầy đủ, xác Các nguyên nhân chủ yếu gây lỗi hệ thống là: - Lỗi người: Một nguyên nhân phổ biến làm hỏng hệ thống người Ví dụ người q trình sử (LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10 10 TIEU LUAN MOI download : skknchat@gmail.com (LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10 //s1.executeUpdate("DROP TABLE config"); out.println("Da xoa xong"); s1.executeUpdate("CREATE TABLE config(tablename text,name text)"); out.println("Da tao xong"); s.executeQuery("select tablename from pg_tables where schemaname = 'public'"); ResultSet rs = s.getResultSet(); while (rs.next()) { t0 ="CREATE TABLE "; t1=""; t5=""; t4=""; t2 = rs.getString("tablename"); t3=""; out.println("COPY "+ t2 +" TO '"+ Path[0] +"/" + t2+"'"); s1.executeUpdate("COPY "+ t2 +" TO '"+ Path[0] +"/" + t2+"'"); //Doan moi them 13/06/2007 s2.executeQuery(" select column_name, data_type,character_maximum_length,is_nullable from (LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10 58 TIEU LUAN MOI download : skknchat@gmail.com (LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10 information_schema.columns where table_name = '" + t2 +"' order by ordinal_position"); ResultSet rs2 = s2.getResultSet(); while (rs2.next()) { t1 = rs2.getString("column_name") + " " + rs2.getString("data_type"); t4= rs2.getString("character_maximum_length"); if (t4 == null) t1= t1+","; else t1= t1+"("+t4+"),"; t5= t5 + t1; } // out.println(t5); s3.executeQuery("select constraint_name, table_name,column_name from information_schema.key_column_usage where table_name = '"+ t2+"'"); ResultSet rs3 = s3.getResultSet(); while (rs3.next()) (LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10 59 TIEU LUAN MOI download : skknchat@gmail.com (LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10 { t3 rs3.getString("constraint_name")+" = "CONSTRAINT PRIMARY KEY " + ("+ rs3.getString("column_name"); } if (t3 !="") chuoi = t0 + t2+" (" + t5+ t3 +"))"; else chuoi = t0+t2+" (" + t5.substring(0,(t5.length()-1)) + ")"; out.println(chuoi); String tr = "INSERT INTO config VALUES ('" + chuoi + "' , '"+ rs.getString("tablename")+"')"; //String tr = "INSERT INTO config VALUES ('" + chuoi + "')"; out.println(tr); s4.executeUpdate(tr); //Ket thuc doan moi them } rs.close(); s.close(); out.print("Success"); } (LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10 60 TIEU LUAN MOI download : skknchat@gmail.com (LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10 catch (Exception e) { out.print("Loi ket noi"); } //ket thuc doan moi them } public String getServletInfo() { return "Welcome Servlet"; } } * Mã nguồn chương trình khơi phục liệu: import java.sql.*; import java.sql.Connection; import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class restore extends HttpServlet { public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { res.setContentType("text/html"); ServletOutputStream out = res.getOutputStream(); (LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10 61 TIEU LUAN MOI download : skknchat@gmail.com (LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10 out.println(""); out.println("Welcome"); out.println(""); String[] Ip = req.getParameterValues("Ip"); if(Ip != null && Ip[0].length() > 0) { out.println(""); out.println(Ip[0]); } else { out.println(""); out.println("Ip is null"); out.println(""); } String[] Database = req.getParameterValues("Database"); if(Database != null && Database[0].length() > 0) { out.println(""); out.println(Database[0]); } else { out.println(""); out.println("Database is null"); out.println(""); (LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10 62 TIEU LUAN MOI download : skknchat@gmail.com (LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10 } String[] UserName = req.getParameterValues("UserName"); if(UserName != null && UserName[0].length() > 0) { out.println(""); out.println(UserName[0]); } else { out.println(""); out.println("UserName is null"); out.println(""); } String[] Password = req.getParameterValues("Password"); if(Password != null && Password[0] != null && Password[0].length() > 0) { out.println(""); out.println(Password[0]); } else { out.println(""); out.println("Password is null"); out.println(""); (LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10 63 TIEU LUAN MOI download : skknchat@gmail.com (LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10 } String[] Path = req.getParameterValues("Path"); if(Path[0] != null && Path[0] != null && Path[0].length() > 0) { out.println(""); out.println(Path[0]); } else { out.println(""); out.println("Path[0] is null"); out.println(""); } //doan moi them try { Connection conn = null; String url="jdbc:postgresql://" + Ip[0]+ "/"+ Database[0]; Class.forName("org.postgresql.Driver"); conn = DriverManager.getConnection(url,UserName[0],Password[0]); Statement s = conn.createStatement(); Statement s1 = conn.createStatement(); Statement s2 = conn.createStatement(); (LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10 64 TIEU LUAN MOI download : skknchat@gmail.com (LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10 Statement s3 = conn.createStatement(); Statement s4 = conn.createStatement(); out.println("Da ket noi cong CSDL"); String t0,t1,t2,t3,t4,t5,chuoi; chuoi=""; s1.executeUpdate("CREATE TABLE config(tablename text,name text)"); s.executeQuery("select tablename from pg_tables where schemaname = 'public'"); ResultSet rs = s.getResultSet(); while (rs.next()) { t0 ="CREATE TABLE "; t1=""; t5=""; t4=""; t2 = rs.getString("tablename"); t3=""; out.println("COPY "+ t2 +" TO '"+ Path[0] +"/" + t2+"'"); s1.executeUpdate("COPY "+ t2 +" TO '"+ Path[0] +"/" + t2+"'"); //Doan moi them 13/06/2007 s2.executeQuery("select column_name, data_type,character_maximum_length,is_nullable from (LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10 65 TIEU LUAN MOI download : skknchat@gmail.com (LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10 information_schema.columns where table_name = '" + t2 +"' order by ordinal_position"); ResultSet rs2 = s2.getResultSet(); while (rs2.next()) { t1 = rs2.getString("column_name") + " " + rs2.getString("data_type"); t4= rs2.getString("character_maximum_length"); if (t4 == null) t1= t1+","; else t1= t1+"("+t4+"),"; t5= t5 + t1; } s3.executeQuery("select constraint_name, table_name,column_name from information_schema.key_column_usage where table_name = '"+ t2+"'"); ResultSet rs3 = s3.getResultSet(); while (rs3.next()) { (LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10 66 TIEU LUAN MOI download : skknchat@gmail.com (LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10 t3 = "CONSTRAINT " + rs3.getString("constraint_name")+" PRIMARY KEY ("+ rs3.getString("column_name"); } if (t3 !="") chuoi = t0 + t2+" (" + t5+ t3 +"))"; else chuoi = t0+t2+" (" + t5.substring(0,(t5.length()-1)) + ")"; out.println(chuoi); String tr = "INSERT INTO config VALUES ('" + chuoi + "' , '"+ rs.getString("tablename")+"')"; //String tr = "INSERT INTO config VALUES ('" + chuoi + "')"; out.println(tr); s4.executeUpdate(tr); //Ket thuc doan moi them } rs.close(); s.close(); out.print("Success"); (LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10 67 TIEU LUAN MOI download : skknchat@gmail.com (LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10 } catch (Exception e) { out.print("Loi ket noi"); } //ket thuc doan moi them } public String getServletInfo() { return "Welcome Servlet"; } } C Chạy tự động ứng dụng Linux Để chạy tự động ứng dụng có sẵn Linux ta sử dụng chế cron Chương trình có trách nhiệm chayh cron gọi crond Mỗi phút Crond đọc file có chứa câu lệnh để thực Các file gọi crontabs File crontabs người dùng lưu giữ var/spool/cron/ Các file không cho phép soạn thảo trực tiếp người dùng người dùng root cần thiết phải sử dụng công cụ soạn thảo crontab (LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10 68 TIEU LUAN MOI download : skknchat@gmail.com (LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10 Hình 20 Màn hình ứng dụng chạy chế độ crontab Để chạy chương trình tự động Linux bạn dùng crontab Các công việc file đặt tệp thư mục : /var/spool/cron/crontabs Sử dụng crontab - l để biết công việc người dùng Nếu chưa có dùng lệnh crontab -e để tạo cơng việc Cú pháp dịng crontab : Phút(0-59) Giờ(0-23) Ngày (1-31) Tháng(1-12) Ngảy tuần (0-6) câu lệnh D Chạy tự động ứng dụng Windows Để chạy tự động ứng dụng Windows theo thời gian định trước bạn thực nhờ chế Scheduled Tasks Cách thức thực sau: Start-> Setting-> Control Panel ->Scheduled Tasks-> Add new Scheduled Tasks-> Next (LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10 69 TIEU LUAN MOI download : skknchat@gmail.com (LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10 Hình 21 Màn hình chọn tệp chạy tự động Scheduled Tasks Kích chuột vào nút Browse -> Chọn file cần chạy(ví dụ backup.bat) Tiếp tục chọn thời gian chạy chương trình Hình 22 Màn hình chọn thời gian chạy ứng dụng Scheduled Tasks (LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10 70 TIEU LUAN MOI download : skknchat@gmail.com (LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10 Hình 23 Màn hình kết thúc trình đặt lịch chạy Scheduled Tasks Kích chuột vào nút Finsh để kết thúc trình đặt lịch chạy tự động chương trình (LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10 71 TIEU LUAN MOI download : skknchat@gmail.com (LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10 (LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Nghien.cuu.giai.phap.tu.dong.sao.luu.va.khoi.phuc.du.lieu.trong.he.thong.thong.tin.dien.tu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10

Ngày đăng: 17/12/2023, 01:51

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan