Chuẩn bị kỳ thi số 731 lấy chứng chỉ DBA (Quản trị cơ sở dữ liệu) DB2 9, Phần 6: Tính sẵn sàng cao: Sao lưu và phục hồi pptx

85 403 0
Chuẩn bị kỳ thi số 731 lấy chứng chỉ DBA (Quản trị cơ sở dữ liệu) DB2 9, Phần 6: Tính sẵn sàng cao: Sao lưu và phục hồi pptx

Đ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

Chuẩn bị kỳ thi số 731 lấy chứng chỉ DBA (Quản trị cơ sở dữ liệu) DB2 9, Phần 6: Tính sẵn sàng cao: Sao lưu và phục hồi Sylvia Qi, Kiểm định chức năng, IBM Toronto Lab Рауль Ф. Чонг (Raul F. Chong), Chuyên gia, IBM Toronto Lab,IBM Tóm tắt: Hướng dẫn này bàn về các chủ đề sao lưu và phục hồi cơ sở dữ liệu. Nó giải thích các phương pháp khác nhau về phục hồi cơ sở dữ liệu và ghi lưu lại (ghi log) và làm thế nào để sử dụng các lệnh BACKUP (Sao lưu), RESTORE (Khôi phục lại), ROLLFORWARD (Khôi phục tiếp) và RECOVER (Phục hồi). Nó cũng bao gồm các lệnh DATABASE REBUILD (Xây dựng lại cơ sở dữ liệu) mới. Đây là phần đầu tiên của một cuộc thảo luận với hai phần về tính sẵn sàng cao; Phần 7 trình bày việc nhân bản dữ liệu, chia tách và việc khắc phục sự cố có tính sẵn sàng cao. Đây là hướng dẫn thứ sáu trong một loạt bài gồm bảy hướng dẫn để giúp bạn chuẩn bị cho kỳ thi 731 về Quản trị Cơ sở dữ liệu DB2® 9 cho Linux®, UNIX®, và Windows™. Trước khi bạn bắt đầu Đây là hướng dẫn thứ sáu trong một loạt bài gồm có bảy hướng dẫn mà bạn có thể sử dụng để trợ giúp chuẩn bị cho kỳ thi cấp chứng chỉ về Quản trị Cơ sở dữ liệu DB2 9 cho Linux, UNIX và Windows DB2® 9. Hướng dẫn này, kết hợp với Phần 7, Tính sẵn sàng cao: việc nhân bản dữ liệu, chia tách và việc khắc phục sự cố, trình bày các mục tiêu trong phần này của kỳ thi mang tên "Tính sẵn sàng cao". Về loạt hướng dẫn này Nếu bạn đang chuẩn bị tham dự kỳ thi 731 lấy chứng chỉ DBA DB2, bạn đã đến đúng chỗ một hướng dẫn tự học, giả định thế. Loạt bài gồm bảy hướng dẫn chuẩn bị lấy chứng chỉ DB2 này trình bày các khái niệm chính mà bạn cần phải biết cho kỳ thi này. Hãy làm bài tập ở nhà của bạn ở đây để làm giảm bớt những căng thẳng trong ngày thi. Về hướng dẫn này Hướng dẫn này bàn về các chủ đề sao lưu và phục hồi cơ sở dữ liệu. Nó giải thích các phương pháp khác nhau về phục hồi cơ sở dữ liệu và ghi log và làm thế nào để sử dụng các lệnh BACKUP, RESTORE, ROLLFORWARD và RECOVER. Nó cũng bao gồm các phép DATABASE REBUILD mới. Đây là hướng dẫn thứ sáu trong một loạt bài gồm bảy hướng dẫn để giúp bạn chuẩn bị cho kỳ thi DB2 V9 cho Linux, UNIX và Windows; (Quản trị Cơ sở dữ liệu DB2 9 cho Linux, UNIX và Windows) (kỳ thi 731). Các tài liệu trong hướng dẫn này chủ yếu trình bày các mục tiêu tại Phần 6 của kỳ thi này, "Tính sẵn sàng cao". Bạn có thể xem các mục tiêu này tại: http://www-03.ibm.com/certify/tests/obj731.shtml. Các chủ đề về tính sẵn sàng cao còn lại được trình bày trong Phần 7, Tính sẵn sàng cao: nhân bản dữ liệu có phân tách và khắc phục sự cố có tính sẵn sàng cao (HADR- high availability disaster recovery). Các mục tiêu Sau khi hoàn thành hướng dẫn này, bạn sẽ có thể:  Hiểu được các phương pháp phục hồi có sẵn với DB2.  Hiểu được các bản ghi giao dịch (log giao dịch) và các kiểu bản ghi khác có sẵn.  Hiểu được các kiểu của các phương pháp ghi log có thể được sử dụng  Thực hiện các lệnh BACKUP.  Thực hiện các lệnh RESTORE.  Thực hiện các lệnh ROLLFORWARD.  Thực hiện các lệnh RECOVER.  Thực hiện các lệnh DATABASE REBUILD.  Hiểu biết về các vấn đề tạo lại chỉ mục. Các điều kiện cần trước Để hiểu tài liệu được trình bày trong hướng dẫn này, bạn cần hiểu rõ về:  Môi trường DB2 (các tệp cấu hình của trình quản lý cơ sở dữ liệu, các tệp cấu hình cơ sở dữ liệu, các biến đăng ký DB2, v.v).  Sử dụng bộ xử lý dòng lệnh và các công cụ giao diện đồ họa (GUI) DB2 để gọi các lệnh DB2.  Các đối tượng DB2 khác nhau, chẳng hạn như các vùng bộ đệm, các không gian bảng (tablespaces), các bảng và các chỉ mục.  Các lệnh SQL cơ bản có thể được thực hiện trên một cơ sở dữ liệu (các câu lệnh SQL UPDATE, INSERT, DELETE và SELECT) Bạn cũng nên quen với các thuật ngữ sau đây:  Đối tượng: Bất kỳ thứ gì trong một cơ sở dữ liệu có thể được tạo ra hoặc được thao tác với SQL (ví dụ các bảng, các khung nhìn, các chỉ mục, các gói).  Bảng: Một cấu trúc logic được sử dụng để trình bày dữ liệu dưới dạng một tập các hàng không theo thứ tự với một số cột cố định. Mỗi cột có chứa một tập giá trị, mỗi giá trị có cùng một kiểu dữ liệu (hoặc kiểu con của kiểu dữ liệu của cột); các định nghĩa về các cột tạo nên cấu trúc bảng và các hàng có chứa dữ liệu thực tế của bảng.  Bản ghi: Biểu diễn lưu trữ của một hàng trong một bảng.  Trường: Biểu diễn lưu trữ của một cột trong một bảng.  Giá trị: Một mục dữ liệu cụ thể có thể được tìm thấy tại giao điểm của một hàng và cột trong một bảng cơ sở dữ liệu.  Structured Query Language (SQL-Ngôn ngữ truy vấn có cấu trúc)): Một ngôn ngữ được tiêu chuẩn hóa được sử dụng để định nghĩa các đối tượng và thao tác dữ liệu trong cơ sở dữ liệu quan hệ. (Để biết thêm về SQL, xem hướng dẫn thứ tư trong loạt bài này).  Trình tối ưu hóa DB2: Một thành phần của trình tiền biên dịch (precompiler) SQL có chọn lựa một kế hoạch truy cập cho một câu lệnh SQL của Data Manipulation Language (DML- Ngôn ngữ thao tác dữ liệu) bằng cách mô hình hóa chi phí thực hiện một số kế hoạch truy cập khác nhau và chọn một kế hoạch truy cập có chi phí đánh giá thấp nhất. Để tham dự kỳ thi DBA DB2 9, bạn phải vượt qua kỳ thi 730 về Các khái niệm cơ bản của DB2 9. Chúng tôi khuyên bạn nên tìm hiểu loạt bài hướng dẫn về các khái niệm cơ bản của DB2 trước khi bắt đầu loạt bài này. Mặc dù không phải tất cả các tài liệu được thảo luận trong các loạt hướng dẫn các khái niệm cơ bản là cần thiết để hiểu về các khái niệm được mô tả trong hướng dẫn này, bạn ít nhất nên có một kiến thức cơ bản về:  Các sản phẩm DB2.  Các công cụ DB2.  Các thể hiện DB2.  Các cơ sở dữ liệu.  Các đối tượng cơ sở dữ liệu. Các yêu cầu về hệ thống Bạn không cần một bản sao của DB2 để hoàn thành hướng dẫn này. Tuy nhiên, bạn sẽ thu được nhiều hơn bên ngoài những hướng dẫn, nếu bạn tải phiên bản dùng thử miễn phí IBM DB2 9 để làm việc cùng với hướng dẫn này. Các khái niệm phục hồi cơ sở dữ liệu Các kịch bản phục hồi Bạn không bao giờ biết khi nào có một thiên tai hoặc hỏng hóc lại rơi vào hệ thống của mình. Tốt nhất là phải chuẩn bị và bảo vệ dữ liệu của bạn không chỉ nhờ yếu tố bên ngoài, mà còn với những người dùng nội bộ, những người có thể vô tình làm hỏng cơ sở dữ liệu của bạn bằng các thông tin không chính xác Bạn có sao lưu cơ sở dữ liệu của bạn không? Bạn sẽ có thể phục hồi tất cả các giao dịch đã được thực hiện cho đến giây cuối cùng không? Để giảm thiểu việc mất dữ liệu của bạn, bạn cần phải có một chiến lược phục hồi, đảm bảo rằng nó hoạt động và thực hiện chắc chắn. Một số kịch bản phục hồi mà bạn nên xem xét là: Sự cố mất điện hệ thống Một sự cố hư hỏng nguồn, lỗi phần cứng, lỗi phần mềm có thể làm cho cơ sở dữ liệu của bạn ở trong trạng thái không phù hợp. Giao dịch thất bại Người dùng có thể vô tình làm hỏng cơ sở dữ liệu của bạn bằng cách sửa đổi nó với các dữ liệu sai. Lỗi phương tiện Nếu ổ đĩa của bạn trở nên không sử dụng được, bạn có thể mất tất cả hay một phần dữ liệu. Thiên tai Phòng máy ở đó có đặt hệ thống của bạn có thể bị hư hỏng do cháy, lũ lụt hoặc thiên tai tương tự khác. Các chiến lược phục hồi Để lập kế hoạch chiến lược phục hồi của bạn, bạn nên tự hỏi mình một số câu hỏi:  Dữ liệu của bạn có thể được nạp lại từ các nguồn khác không?  Làm thế nào để bạn không bị mất dữ liệu?  Mất bao nhiêu lâu để bạn có thể phục hồi cơ sở dữ liệu?  Các nguồn tài nguyên lưu trữ nào có sẵn để lưu trữ các bản sao lưu và các tệp log? Các giao dịch Một đơn vị công việc (UOW), cũng được gọi là một giao dịch, bao gồm một hoặc nhiều câu lệnh SQL được kết thúc bằng một câu lệnh COMMIT hoặc ROLLBACK. Tất cả các câu lệnh trong UOW này đang được coi là một đơn vị, để đảm bảo tính nhất quán của dữ liệu. Ví dụ, một khách hàng đang cố gắng để chuyển 100$ từ một tài khoản tiết kiệm đến một tài khoản dùng séc. UOW trong trường hợp này sẽ như sau: DELETE 100 dollars from SAVINGS account INSERT 100 dollars to CHECKING account COMMIT Nếu các câu lệnh này đã không được thực hiện trọn vẹn như một đơn vị, bạn có thể tưởng tượng điều gì sẽ xảy ra khi có một lỗi phần cứng sau câu lệnh DELETE nhưng trước câu lệnh INSERT Khách hàng sẽ mất 100$! Khi các câu lệnh được coi là một đơn vị, tuy nhiên, điều này sẽ không bao giờ xảy ra. DB2 sẽ biết đơn vị này đã không hoàn thành cam kết (COMMIT), và do đó nó sẽ khôi phục ROLLBACK tất cả những thay đổi được các câu lệnh trước thực hiện và trả về các hàng bị ảnh hưởng về trạng thái mà chúng đã có trước khi bắt đầu giao dịch. Không có câu lệnh nào được sử dụng để nhận biết khởi đầu của một giao dịch. Câu lệnh tiếp theo sau một COMMIT hoặc ROLLBACK sẽ bắt đầu một giao dịch mới. Các kiểu phục hồi Chúng ta hãy làm quen với các kiểu của các khái niệm phục hồi. DB2 cho phép các kiểu phục hồi sau: Phục hồi sự cố Bảo vệ một cơ sở dữ liệu khỏi trạng thái không phù hợp bằng cách hủy bỏ (phục hồi) các giao dịch chưa được cam kết. Xem xét lại ví dụ trong bảng trước đó. Nếu đã mất nguồn trước câu lệnh COMMIT, các lệnh DB2 tiếp theo được khởi động lại và cơ sở dữ liệu được truy cập, DB2 đầu tiên sẽ khôi phục ROLLBACK câu lệnh INSERT và sau đó là câu lệnh DELETE. (Thứ tự trong đó các câu lệnh được phục hồi là ngược với thứ tự trong đó chúng được thực hiện ban đầu). Phục hồi phiên bản Cho phép để khôi phục lại một phiên bản trước của một cơ sở dữ liệu bằng cách sử dụng ảnh sao lưu do lệnh BACKUP tạo nên. Cơ sở dữ liệu được khôi phục lại sẽ chứa các thông tin về trạng thái mà nó đã có khi lệnh BACKUP đã được thi hành. Nếu hoạt động nữa được thực hiện trên cơ sở dữ liệu sau khi sao lưu này đã được thực hiện, thông tin này sẽ bị mất. Phục hồi khôi phục tiếp Mở rộng việc phục hồi phiên bản bằng cách sử dụng toàn bộ các bản sao lưu cơ sở dữ liệu cùng với các tệp log. Một bản sao lưu phải được khôi phục lại đầu tiên để được sử dụng như nền; sau đó các log được được sử dụng dựa trên nền này. Thủ tục này sẽ cho phép khôi phục lại của một cơ sở dữ liệu hoặc một vùng các bảng đến một điểm cụ thể. Phục hồi khôi phục tiếp (rollforward) đòi hỏi phải kích hoạt việc ghi lưu trữ. Việc ghi log được thảo luận trong Các kiểu ghi log. Các bản ghi (log) DB2 Các log giao dịch DB2 rất quan trọng cho việc phục hồi. Chúng theo dõi các thay đổi được thực hiện với các đối tượng cơ sở dữ liệu và dữ liệu. Log có thể được lưu trữ trong các tệp hoặc trong các thiết bị thô. Đối với các ví dụ dưới đây, chúng ta sẽ sử dụng các tệp. Để đảm bảo tính nguyên vẹn dữ liệu, DB2 sử dụng một sơ đồ ghi viết-trước, trong đó nó viết vào các log trước khi viết (gửi ra ngoài) các thay đổi vào cơ sở dữ liệu trên đĩa. Hình dưới đây cho thấy sơ đồ này. Trong hình này có bốn câu lệnh SQL đã được thực hiện. Các câu lệnh đã được lưu trữ nhanh trong bộ nhớ tạm và các trang dữ liệu đã được lấy ra từ cơ sở dữ liệu đưa vào vùng đệm. Khi các câu lệnh SQL được thực hiện, trước tiên các thay đổi được ghi lại trong bộ đệm bản ghi và sau đó được viết vào các tệp log. Trong ví dụ này, các phiên bản mới của các trang dữ liệu chưa được gửi ra bên ngoài đến cơ sở dữ liệu. Điều này được thực hiện bình thường khi không gian vùng bộ đệm cần thiết hoặc được thực hiện không đồng bộ vì các lý do hiệu năng. Các tệp log sơ cấp và thứ cấp Các tệp log sơ cấp ngay lập tức được cấp phát trên kết nối cơ sở dữ liệu đầu tiên hoặc vào thời gian kích hoạt cơ sở dữ liệu. Các tệp log thứ cấp được cấp phát động một tệp một lần khi cần thiết. Có một số tham số cấu hình cơ sở dữ liệu liên quan đến việc ghi log. Một số trong chúng là: [...]... trọng cần lưu ý rằng không phải tất cả các kiểu ghi log hỗ trợ tất cả các kiểu phục hồi Việc ghi log vòng tròn chỉ hỗ trợ phục hồi sự cố (crash) và phiên bản, trong khi việc ghi log lưu trữ hỗ trợ tất cả các loại phục hồi: sự cố, phiên bản và phục hồi khôi phục tiếp Các cơ sở dữ liệu có thể phục hồi và không thể phục hồi Các cơ sở dữ liệu có thể phục hồi là các cơ sở dữ liệu có thể được phục hồi bằng... dụng cho tất cả các nền tảng Phục hồi cơ sở dữ liệu và phục hồi không gian bảng Phục hồi cơ sở dữ liệu Phần này bàn về tiện ích RESTORE, nó sử dụng một tệp sao lưu làm đầu vào và một cơ sở dữ liệu mới hoặc hiện có làm đầu ra Mặc dù chúng ta đang thảo luận về phục hồi cơ sở dữ liệu, tiện ích mà chúng ta sẽ sử dụng được gọi là RESTORE (khôi phục lại), không phải là RECOVER (phục hồi) Bắt buộc phải có quyền... việc phục hồi sự cố, phiên bản hoặc phục hồi khôi phục tiếp; do đó, việc ghi lưu trữ cần để được kích hoạt cho các cơ sở dữ liệu này Các cơ sở dữ liệu không thể phục hồi là những cơ sở dữ liệu không hỗ trợ phục hồi khôi phục tiếp; như vậy, chỉ có việc ghi vòng tròn được sử dụng Xem xét lại Cho đến nay chúng ta đã trình bày một số khái niệm về việc ghi và các log cơ sở dữ liệu Hình sau đây tóm tắt một số. .. chúng ta không cho phép những người sử dụng bất kỳ quyền truy cập nào vào đối tượng cơ sở dữ liệu mà chúng ta đang làm việc tại thời điểm đó Chúng ta sẽ sử dụng các thuật ngữ online và offline khá thường xuyên trong phần này Sao lưu cơ sở dữ liệu Một bản sao lưu cơ sở dữ liệu là một bản sao toàn bộ cơ sở dữ liệu của bạn Ngoài các dữ liệu, một bản sao lưu còn chứa thông tin về các không gian bảng (tablespace),... lần cuối sao lưu toàn cơ sở dữ liệu Gia tăng DB2 chỉ sao lưu dữ liệu đã thay đổi kể từ sao lưu thành công cuối cùng, có nghĩa theo sự tăng lên, hay sao lưu gia tăng Hình ảnh sau mô tả sự khác nhau giữa các kiểu này Trong phần trên của hình, nếu đã có một sự cố sau khi sao lưu tăng dần trong ngày thứ Sáu, bạn có thể khôi phục lại bản sao lưu đầy đủ vào Chủ nhật đầu tiên, tiếp theo bản sao lưu tăng... cơ sở dữ liệu  Con số cho biết kiểu sao lưu (0 cho một cơ sở dữ liệu đầy đủ, 3 cho một sao lưu không gian bảng, 4 cho một bản sao từ LOAD)  Tên cá thể  Nút cơ sở dữ liệu (luôn luôn là NODE0000 cho một cơ sở dữ liệu phân vùng đơn)  Số nút danh mục (luôn luôn là CATN0000 cho một cơ sở dữ liệu phân vùng đơn)  Dấu thời gian của bản sao lưu  Số tuần tự của file ảnh Hình dưới đây chỉ ra quy ước đặt... (container), cấu hình cơ sở dữ liệu, tệp kiểm soát log và tệp lược sử phục hồi Lưu ý rằng một bản sao lưu sẽ không lưu các tệp cấu hình của trình quản lý cơ sở dữ liệu hoặc các biến đăng ký Chỉ có tệp cấu hình cơ sở dữ liệu sẽ được sao lưu Để thực hiện một việc sao lưu, bắt buộc phải có quyền SYSADM, SYSCTRL, hoặc SYSMAINT Dưới đây là cú pháp của tiện ích lệnh BACKUP cho kiểu sao lưu này: BACKUP DATABASE... một cơ sở dữ liệu hoặc sao lưu không gian bảng, nhấn chuột phải vào cơ sở dữ liệu bạn muốn sao lưu và chọn Backup Hình tiếp theo chỉ ra trình thủ thuật Backup và các tùy chọn mà bạn cần phải hoàn tất để thực hiện các tiện ích BACKUP Chúng tôi khuyến khích bạn tự cố gắng thử nghiệm Quy ước đặt tên cho các tệp sao lưu Quy ước đặt tên cho tệp sao lưu DB2 có chứa các mục sau đây:  Bí danh của cơ sở dữ. .. gian phục hồi sự cố khi các log hoạt động có thể cần được lấy ra từ trạm lưu trữ Việc ghi log vô hạn là một sản phẩm phụ của việc ghi log lưu trữ Để kích hoạt tính năng ghi log vô hạn: 1 Thi t lập tham số cấu hình cơ sở dữ liệu LOGSECOND là -1 2 Kích hoạt tính năng ghi log lưu trữ Các chủ đề phục hồi khác Các kiểu ghi log và các kiểu phục hồi Bây giờ bạn đã hiểu các kiểu ghi log và các kiểu phục hồi. .. bản sao lưu Vì vậy, một hoạt động sao lưu trực tuyến không đủ cho việc phục hồi và các log tương ứng được thu thập trong hoạt động sao lưu này cũng cần thi t DB2 giúp dễ dàng thu thập log hoạt động hiện tại khi một hoạt động sao lưu kết thúc bằng cách buộc nó đóng (và được lưu trữ) khi việc sao lưu trực tuyến kết thúc Để sao lưu các log như là một phần của bản sao lưu, hãy sử dụng tùy chọn INCLUDE . Chuẩn bị kỳ thi số 731 lấy chứng chỉ DBA (Quản trị cơ sở dữ liệu) DB2 9, Phần 6: Tính sẵn sàng cao: Sao lưu và phục hồi Sylvia Qi, Kiểm định chức năng,. log lưu trữ hỗ trợ tất cả các loại phục hồi: sự cố, phiên bản và phục hồi khôi phục tiếp. Các cơ sở dữ liệu có thể phục hồi và không thể phục hồi Các cơ sở dữ liệu có thể phục hồi là các cơ sở. chuẩn bị cho kỳ thi cấp chứng chỉ về Quản trị Cơ sở dữ liệu DB2 9 cho Linux, UNIX và Windows DB2 9. Hướng dẫn này, kết hợp với Phần 7, Tính sẵn sàng cao: việc nhân bản dữ liệu, chia tách và

Ngày đăng: 07/08/2014, 09:23

Từ khóa liên quan

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

Tài liệu liên quan