Giải pháp 1
Sao chép dữ liệu bằng quy trình ETL. Điều này giả định rằng bạn có phiên bản SQL Server 7 và chạy với cơ sở dữ liệu có thể truy cập. Bạn có một số công cụ theo ý của bạn, nhưng cách tiếp cận đơn giản nhất tôi có thể thấy là:
- Tập lệnh ra tất cả các đối tượng SQL Server 7 và tạo chúng trong SQL Server 2012. Bạn có thể phải điều chỉnh tập lệnh nếu có bất kỳ cú pháp cụ thể nào của SQL Server 7.
Sử dụng quy trình ETL để sao chép dữ liệu. Một số lựa chọn thay thế:
- BCP - Sử dụng BCP để kết xuất mọi bảng thành tệp RAW hoặc tệp văn bản, sau đó sử dụng BCP để tải chúng vào các đối tượng SQL Server 2012.
- Trình hướng dẫn Nhập / Xuất trong SQL Server 2012 - Sử dụng trình hướng dẫn Nhập / Xuất để tạo các tác vụ truyền dữ liệu.
- SSIS - Điều này về cơ bản giống như Trình hướng dẫn Nhập / Xuất, nhưng có nhiều chức năng hơn.
Nhìn chung, đây có thể là một quá trình tẻ nhạt, nhưng cho phép bạn sao chép dữ liệu trực tiếp từ cơ sở dữ liệu này sang cơ sở dữ liệu khác. Nếu bạn đi theo tuyến BCP, bạn sẽ cần một số lưu trữ cho các tệp kết xuất, nhưng đây không phải là lưu trữ cơ sở dữ liệu.
Giải pháp 2
Nâng cấp cơ sở dữ liệu bằng cách sử dụng một bước trung gian nâng cấp lên SQL Server 2005. Điều này giả định rằng bạn có quyền truy cập vào phương tiện SQL Server 2005 và một máy chủ để hỗ trợ. Không thể nâng cấp SQL Server 7 lên SQL Server 2008 vì đường dẫn nâng cấp đó không được hỗ trợ, nhưng nếu bạn có thể khôi phục cơ sở dữ liệu sang SQL Server 2005, thì bạn có thể sao lưu liên tiếp phiên bản SQL Server 2005 và khôi phục lại SQL Server 2012.