Hướng Dẫn Database Migration Từ Phiên Bản SQL Server Cao Xuống Phiên Bản Thấp Hơn

Tình huống giả định: một người dùng cơ sở dữ liệu SQL Server nâng cấp SQL Server từ phiên bản thấp hơn lên phiên bản cao hơn, rồi nhận ra rằng ứng dụng của họ không hoạt động như mong muốn sau khi nâng cấp. Do đó, họ muốn “sửa sai” bằng cách Database Migration cơ sở dữ liệu SQL Server xuống phiên bản trước đó. Tuy nhiên, họ lại không thể gắn cơ sở dữ liệu hoặc khôi phục bản sao lưu cơ sở dữ liệu kể cả khi đã thiết lập mức tương thích xuống phiên bản thấp hơn.

Hướng Dẫn Database Migration Từ Phiên Bản SQL Server Cao Xuống Phiên Bản Thấp Hơn
Hướng Dẫn Database Migration Từ Phiên Bản SQL Server Cao Xuống Phiên Bản Thấp Hơn

Lỗi trong quá trình khôi phục cơ sở dữ liệu SQL Server

Lỗi dưới đây sẽ xuất hiện khi người dùng cố khôi phục hoặc gắn cơ sở dữ liệu. Nó xảy ra bởi SQL Server đã được tự động nâng cấp lên phiên bản cao hơn và không cho phép người dùng khôi phục cơ sở dữ liệu từ phiên bản cao hơn xuống phiên bản thấp hơn.

word image 18065 2

Database Migration SQL Server bằng cách sử dụng phần mềm SysTools

Xử lý SQL là một việc khá khó nhằn bởi nó bao gồm nhiều thủ tục phức tạp. Ngoài ra, không ai muốn làm hỏng dữ liệu hiện có cả. Do đó, bạn cần một phần mềm chuyên nghiệp giúp biến những tác vụ nặng nhọc và đáng lo ngại trở nên dễ dàng hơn.

SysTools SQL Server Migrator là phần mềm có khả năng chuyển hoặc sao chép các bảng dữ liệu SQL với scheme, functions, views, stored procedures, triggers… Chưa hết, nếu có bất kỳ dữ liệu nào bị xóa trong quá trình di chuyển, phần mềm này có thể giúp bạn khôi phục lại dễ dàng.

Hãy làm theo các bước dưới đây để chuyển cơ sở dữ liệu SQL Server xuống phiên bản thấp hơn:

Khởi động phần mềm và bấm vào nút Open

word image 18065 3

Chọn Online hoặc Offline Mode

word image 18065 4

Xem trước Database Objects trước khi sang bước tiếp theo

word image 18065 5

Tinh chỉnh các tùy chọn xuất cơ sở dữ liệu theo ý muốn

word image 18065 6

Bấm vào nút Export và hoàn tất tác vụ chuyển cơ sở dữ liệu

word image 18065 7

Cách 2: Sử dụng trình tạo mã của SQL Server Management Studio trên phiên bản cao hơn

Lỗi xảy ra khi các tập tin sao lưu cơ sở dữ liệu SQL Server không tương thích ngược sẽ khiến bạn không thể khôi phục cơ sở dữ liệu đã tạo từ phiên bản SQL Server cao hơn xuống thấp hơn. Dưới đây là một cách khác để chuyển cơ sở dữ liệu SQL Server từ phiên bản cao hơn xuống phiên bản thấp hơn

Trong bước này, chúng ta cần tạo schema của cơ sở dữ liệu mong muốn, ví dụ là trên SQL Server 2012, để chuyển nó xuống SQL Server 2008 R2 bằng trình tạo mã Generate Scripts của SQL Server Management Studio.

  • Khởi chạy Microsoft SQL Server Management Studio (SSMS) và vào Object Explorer.
  • Chọn cơ sở dữ liệu mong muốn và bấm chuột phải vào nó.
  • Bấm Tasks và chọn Generate Scripts

Huong dan back up database tu phien ban sql server cao xuong phien ban thap

  • Trình Generate and Publish Scripts sẽ hiện ra

Huong dan back up database tu phien ban sql server cao xuong phien ban thap 2

  • Bấm Next và bạn sẽ được đưa đến trang Choose Objects
  • Trên trang này, chọn Script entire database and all database objects và bấm Next để sang tab tiếp theo, Set Scripting Options

Huong dan back up database tu phien ban sql server cao xuong phien ban thap 3

  • Xác định vị trí để lưu tập tin mã trong tab Set Scripting Options
  • Bấm nút Advanced để tinh chỉnh các tùy chọn tạo mã cụ thể

Huong dan back up database tu phien ban sql server cao xuong phien ban thap 4

Tại đây, chúng ta sẽ thay đổi một số tùy chọn:

  • Script for Server Version → SQL Server 2008 R2
  • Types of data to script → Schema and Data

Huong dan back up database tu phien ban sql server cao xuong phien ban thap 5

  • Thiết lập primary key, triggers và indexes cho script

Huong dan back up database tu phien ban sql server cao xuong phien ban thap 6

  • Bấm OK sau khi thay đổi trong Advanced Scripting Options và quay lại trang Set Scripting Options. Bấm Next để sang tab Summary

Huong dan back up database tu phien ban sql server cao xuong phien ban thap 7

  • Bấm Next trên trang Summary sau khi đã kiểm tra lại các thay đổi.

Huong dan back up database tu phien ban sql server cao xuong phien ban thap 8

  • Cuối cùng, bấm nút Finnish để đóng trình Generate and Publish Scripts. Đây là bước rất quan trọng sau khi hoàn thành quá trình tạo mã.

Huong dan back up database tu phien ban sql server cao xuong phien ban thap 9

Cách 3: Kết nối đến phiên bản thấp hơn, chạy mã SQL để tạo schema cơ sở dữ liệu và sao chép dữ liệu

Trong phần thứ hai của Migrate Database, chúng ta sẽ kết nối đến phiên bản thấp hơn, SQL Server 2008 R2, và chạy mã đã tạo ra ở phần đầu tiên để có được schema cơ sở dữ liệu và sao chép toàn bộ dữ liệu bên trong.

  • Vào Object Explorer và kết nối đến SQL Server 2008
  • Mở mã đã tạo bằng cách vào File trong SQL Server Management Studio → Open File
  • Chọn tập tin script đã tạo và bấm Open để dùng nó trong SSMS
  • Chỉnh sửa script để chèn vào vị trí các tập tin dữ liệu và log của cơ sở dữ liệu
  • Thực thi mã để tạo cơ sở dữ liệu trong SQL Server 2008
  • Sau khi script đã chạy thành công, làm mới thư mục cơ sở dữ liệu trong Object Explorer của SSMS.
  • Bấm vào cơ sở dữ liệu để kiểm tra xem mọi dữ liệu đã được hạ cấp thành công từ SQL Server 2012 xuống SQL Server 2008 R2 hay chưa.

Kết luận

Như vậy, chúng ta đã thảo luận về lỗi khi người dùng cơ sở dữ liệu SQL Server nâng cấp từ phiên bản thấp hơn lên cao hơn. Ngoài ra, bạn cũng được biết tình huống mà ứng dụng hoạt động không như ý muốn. Trong những trường hợp đó, chúng ta có thể sử dụng script tạo ra từ Generate Scripts Wizard ở phiên bản cao hơn và thực thi chúng ở phiên bản thấp hơn. Các bước đã nêu chính là toàn bộ quy trình chuyển cơ sở dữ liệu SQL Server xuống phiên bản thấp hơn.

Người dùng nên sao lưu cơ sở dữ liệu trước khi nâng cấp phiên bản SQL Server của họ. Bởi quy trình chuyển cơ sở dữ liệu tốn rất nhiều thời gian và dung lượng, hạ cấp cơ sở dữ liệu SQL Server cần đến phần mềm chuyên nghiệp để hỗ trợ chuyển SQL Server từ phiên bản cao hơn xuống thấp hơn.

Các tìm kiếm liên quan đến chủ đề “Database migration”

What is database migration Migration database C#
Update-database migration Create database migration Entity Framework
Database migration Laravel Schema migration
Data migration tool Data migration strategy

Bài viết liên quan

Cơ sở dữ liệu là gì? Vai trò và tầm quan trọng của cơ sở dữ liệu?

Top 10 các hệ quản trị cơ sở dữ liệu phổ biến nhất hiện nay

Cách tải và cài đặt Microsoft SQL Server Management Studio

MySQL là gì? Chi tiết kiến thức MySQL cho người mới bắt đầu 2022