Thông tin tài liệu:
Khôi phục SQL Server từ Transaction Log Backup là một phần công việc cần thực hiện trong quá trình nâng cấp và vận hành máy chủ SQL. Và phần công việc còn lại là tiến trình restore được thực hiện mỗi khi máy chủ SQL có lỗi phát sinh. Một trong những tình huống này có thể liên quan tới quá trình restore từ file Transaction Log (Bản ghi giao tác) Backups.Transaction Log (có tên gọi khác là Database Log hay Binary Log) là một lược sử hành động được hệ thống quản lý cơ sở dữ liệu thực thi...
Nội dung trích xuất từ tài liệu:
Khôi phục SQL Server từ Transaction LogKhôi phục SQL Server từ Transaction LogNguồn : 3c.com.vn Khôi phục SQL Server từ Transaction Log Backup là một phần công việc cần thực hiện trong quá trình nâng cấp và vận hành máy chủ SQL. Và phần công việc còn lại là tiến trình restore được thực hiện mỗi khi máy chủ SQL có lỗi phát sinh. Một trong những tình huống này có thể liên quan tới quá trình restore từ file Transaction Log (Bản ghi giao tác) Backups. Transaction Log (có tên gọi khác là Database Log hay Binary Log) là một lược sử hành động được hệ thống quản lý cơ sở dữ liệu thực thiđể đảm bảo thuộc tính ACID (atomicity, consistency, isolation, durability) khi hệ thốngbị lỗi.Có một rắc rối với Transaction Log Backups đó là yêu cầu restore từ nhiều file hơn là chỉtừ một file full backup. Để khôi phục thành công cơ sở dữ liệu, bạn phải sử dụng mọi fileTransaction Log Backups đã được tạo và chúng phải được khôi phục theo trật tự khi tạo.Nếu một file Transaction Log Backup nào đó bị lỗi, bạn sẽ không thể thực hiện khôi phụcbất kì file Transaction Log Backup nào sau file lỗi đó. Chúng cần được khôi phục theothứ tự và bạn không thể bỏ qua bất kì file nào.Trên đây là 5 bước cơ bản cần thực hiện khi tiến hành restore một cơ sở dữ liệu SQL từTransaction Log.Bước 1: Backup phần hoạt động của Transaction LogTrong trường hợp máy chủ SQL bị lỗi và bạn cần phải restore sang một máy chủ khác,trước tiên bạn cần backup phần hoạt động của Transaction Log để lưu lại những giao tácđang sử dụng vẫn chưa được backup vào một Transaction Log Backup hiện có. Để tạoTransaction Log Backup cuối này bạn hãy sử dụng lệnh có cú pháp tương tự như sau:BACKUP LOG NorthwindTO DISK= C:SQLBackupNorth.bakWITH NO_TRUNCATETrong đó C:SQLBackupNorth.bak là địa chỉ lưu file Transaction Log Backup.Lệnh này sẽ tạo một Transaction Log Backup khác sẽ được sử dụng trong tiến trìnhrestore.Bước 2: Xác định dữ liệu cần restoreNếu bạn chưa biết những thông tin quan trọng nào trong cơ sở dữ liệu cần phải restore thìbạn hãy thực hiện truy vấn những bản biểu của máy chủ SQL trong msdb, những bảngnày sẽ hiển thị mọi file backup trên máy chủ, bao gồm những file backup được tạo bằngMaintenance Plans, wizard trong Enterprise Manager, những lệnh T-SQL và những côngcụ nhóm ba khác sử dụng tính năng SQL Server được tích hợp để tạo file backup.Trong msdb sẽ chứa những loại bảng sau: backupfile - Chứa một bản ghi cho mỗi dữ liệu hay file Log đã được backup. • backupmediafamily - Chứa một bản ghi cho mỗi nhóm phương tiện. • backupmediaset – Chứa một bản ghi cho mỗi bộ công cụ backup. • backupset – Chứa một bản ghi cho mỗi nhóm file backup. •Nếu muốn thực hiện một quá trình restore hoàn toàn, trước hết bạn phải thực hiện FullBackup bao gồm Differential (file cập nhật) và những Transaction Log Backup choDifferential. Những bảng trên sẽ hiển thị file backup thực hiện trước trên cùng, vì vậybạn cần tìm đến file Full Backup mới nhất và những file backup khác được tạo sau khithực hiện Full Backup.Bước 3: Kiểm tra nội dung của file BackupNgoài lệnh RESTORE thực hiện khôi phục những file backup, một số lệnh RESTOREkhác cho phép bạn kiểm tra nội dung của những file backup. Những lệnh này bao gồmRESTORE HEADERONLY và RESTORE FILELISTONLY.RESTORE HEADERONLYLệnh này cho phép bạn kiểm tra thông tin tổng quát của mọi file backup trên một công ụbackup cụ thể. Lệnh này rất hữu dụng khi bạn cần restore từ nhiều file backup hay nếufile backup đó là của một máy chủ khác mà bạn không quản lý. Để kiểm tra những gìđược lưu trữ trong file backup đó, bạn hãy chạy lệnh này trong Query Analyzer.RESTORE FILELISTONLYLệnh này cho phép bạn kiểm tra danh sách cơ sở dữ liệu và những file Log trong nhómfile backup, dung lượng của dữ liệu và các file Log. LogicalName và PhysicalName lànhững thành phần dữ liệu chính được sử dụng trong suốt tiến trình restore. Cú pháp lệnhcó dạng:RESTORE FILELISTONLY FROM DISK = C:SQLBackupNorth.bakBước 4: Lựa chọn tùy chọn restoreCó một số tùy chọn để áp dụng khi restore file backup, bao gồm những file TransactionLog Backup. Dưới đây là một số tùy chọn restore:NORECOVERYTùy chọn này cho phép restore những file backup bổ sung. Bạn có thể sử dụng nó khirestore Full, Differential hay Transaction Log Backup. Bạn hãy dùng lệnh sau:RESTORE DATABASE NORTHFROM DISK = C:SQLBackupNorth.bakWITH NORECOVERYRECOVERYĐây là tùy chọn mặc định nếu không có tùy chọn nào được lựa chọn. Tùy hconj này sẽđược áp dụng cho tiến trình restore cuối. Khi được áp dụng, bạn không thể restore nhữngfile backup bổ sung, nếu muốn thực hiện restore cả những file backup bổ sung thì bạnphải thực hiện restore lại từ đầu. Tùy chọn này có thể được sử dụng khi restore Full,Different ...