2011-04-11 8 views
9

Tôi có một cơ sở dữ liệu hoạt động trên SQL Server 2000. Chúng tôi hiện đang di chuyển sang máy chủ mới với SQL Server 2008 r2. Bất cứ ai có thể xin vui lòng chỉ cho tôi một số tài nguyên hoặc howto? Tôi không thực sự tìm cách của mình xung quanh SQL 2000.Di chuyển từ máy chủ sql 2000 đến 2008 r2 - cách

Cảm ơn bạn!

+0

Bạn không hiểu SQL Server 2000? – gbn

Trả lời

12

Về cơ bản, những gì bạn cần làm là:

  • sao lưu cơ sở dữ liệu của bạn trong SQL Server 2000 vào một tập tin bak
  • di chuyển mà * tập tin bak đến máy chủ mới của bạn
  • khôi phục cơ sở dữ liệu lên máy chủ mới của bạn

Bạn đã hoàn tất! Có thực sự không có gì nhiều hơn nữa ..... chỉ cần sao lưu (trên hệ thống cũ của bạn) và khôi phục (trên hệ thống mới của bạn).

Vậy vấn đề của bạn chính xác ở đâu?

Cập nhật: như @ Péter đề cập chính xác: điều này rời khỏi cơ sở dữ liệu của bạn ở chế độ tương thích SQL Server 2000. Điều này có nghĩa: mặc dù bạn đã "di chuyển" sang SQL Server 2008 R2, bạn vẫn có thể chỉ sử dụng các tính năng 2000.

Để xem chế độ nào phù hợp cơ sở dữ liệu của bạn là trong, kiểm tra xem cửa hàng của sys.databases:

SELECT * FROM sys.databases WHERE name = 'YourDatabaseName' 

Một cột được gọi là compatibility_level và chứa một INT; 80 = SQL Server 2000, 90 = SQL Server 2005, 100 = SQL Server 2008/2008 R2 và 110 = SQL Server 2012

Để thay đổi cơ sở dữ liệu của bạn đến một cấp độ tương thích khác nhau, sử dụng lệnh này:

ALTER DATABASE YourDatabaseNameHere 
SET COMPATIBILITY_LEVEL = 100; 

Điều này sẽ đặt cơ sở dữ liệu của bạn vào chế độ "bản địa" SQL Server 2008 (và 2008 R2) và bây giờ quá trình di chuyển của bạn đã hoàn tất, bạn có thể sử dụng tất cả các tính năng mới của SQL Server 2008 R2.

+2

Không có vấn đề gì. Tôi chỉ tự hỏi mình nên làm gì, và đó chỉ là câu trả lời tôi đang tìm kiếm. Thực hiện sao lưu trên máy chủ cũ và thực hiện khôi phục trên máy chủ mới. Cảm ơn bạn. –

+1

Tôi đã đọc tất cả các loại nội dung như xuất hoặc tách các tệp DB, v.v. –

+1

không hoàn toàn .. - nếu có Đăng nhập DB thì chúng sẽ cần được tạo lại và liên kết - nếu bạn sử dụng bất kỳ "* =" hoặc " = * "tham gia cú pháp đó hiện không được chấp nhận và sẽ khiến các truy vấn đó thất bại, bạn cần thay thế bằng cú pháp hiện đại - khi bạn khôi phục DB, bạn sẽ là chủ sở hữu, bạn nên thay đổi thành tài khoản hệ thống như SA – matao

0

Edited tháng 4 năm 2012 vì liên kết ban đầu chuyển sang phiên bản mới nhất, SQL Server 2012

Đối với một "tại chỗ" nâng cấp (MSDN liên kết):

... để SQL Server 2008 R2

Bạn có thể nâng cấp các phiên bản của SQL Server 2000, SQL Server 2005 hoặc SQL Server 2008 lên SQL Server 2008 R2.

... để SQL Server 1012

Bạn có thể nâng cấp từ SQL Server 2005, SQL Server 2008 và SQL Server 2008 R2 để SQL Server 2012.

+0

Liên kết này đã thay đổi thành SQL Server 2012. Không còn trả lời câu hỏi. – Andrew

+0

@Andrew: liên kết cố định, cảm ơn – gbn

3

Tôi sẽ bắt đầu bằng cách chạy Upgrade Advisor chống lại các máy chủ 2000 (trong sử dụng thấp hoặc tắt giờ) để xem những gì các khuyến nghị nó làm và giải quyết đầy đủ mỗi: http://msdn.microsoft.com/en-us/library/ms144256.aspx

Đây cũng là một tờ giấy trắng từ MS về chủ đề: http://download.microsoft.com/download/2/0/B/20B90384-F3FE-4331-AA12-FD58E6AB66C2/SQL%20Server%202000%20to%202008%20Upgrade%20White%20Paper.docx

Rất nhiều điều có thể xảy ra ... quá nhiều để trang trải trong cài đặt diễn đàn. Nhưng sau đó một lần nữa không có gì có thể đi sai ... kế hoạch tốt nhất, thử nghiệm, và sau đó kiểm tra một số chi tiết.

+0

Lời khuyên tốt dành cho ai đó đang tìm cách nâng cấp. Đó không phải là những gì tôi đã hỏi, nhưng đừng để tôi ngăn cản bạn. Trả lời bất kỳ câu hỏi nào bạn thích :) –

+0

Xin lỗi, có thể bạn không nên bận tâm đến việc bạn đang di chuyển cơ sở dữ liệu sang 2008 R2 có nghĩa là nâng cấp. Làm thế nào về yêu cầu những gì bạn thực sự cần, một hướng dẫn cho SQL 2000 ;-) –

0

Các câu trả lời khác là chính xác từ góc độ kỹ thuật nhưng không phải từ quan điểm hỗ trợ.

Tôi không nghĩ rằng Microsoft hỗ trợ nâng cấp trực tiếp từ SQL Server 2000 lên SQL Server 2008 R2. Điều đó không có nghĩa là khó, chỉ là nó không được hỗ trợ. (Có thể hoặc có thể không quan trọng đối với kịch bản của bạn)

Bạn có thể nâng cấp phiên bản SQL Server 2000 lên SQL Server 2008 R1 rồi thực hiện nâng cấp tiếp theo lên SQL Server 2008 R2. (Hoặc thậm chí SQL Server 2012 nếu bạn nghiêng)

1

Tôi hiện đang làm điều tương tự.

Tạo cơ sở dữ liệu SQL 2008 của bạn từ một bak khôi phục năm 2000 là bước đầu tiên tốt. Hầu hết công việc của tôi là xử lý quyền người dùng và đảm bảo rằng người dùng đã đồng bộ với thông tin đăng nhập cơ sở dữ liệu và chúng tôi không có lược đồ cơ sở dữ liệu được tạo bởi bản sao lưu được gắn với người dùng đó. chúng tôi đã cố gắng tạo lại người dùng cơ sở dữ liệu đó.

Điều chúng tôi đã làm là:

1) Tạo tập lệnh. Chúng tôi đã có một kịch bản sẽ tự động viết một kịch bản để làm như sau: thả đăng nhập, thả người dùng db, lược đồ thả, tạo lại đăng nhập, tạo lại người dùng, cấp quyền người dùng.

2) Khôi phục cơ sở dữ liệu.

4) Chạy kịch bản tạo ra

0

chưa tùy chọn khác là để cố gắng kết nối cơ sở dữ liệu (file) của sql2k để sql2k8 trực tiếp.

0

Cách đơn giản nhất là sao lưu cơ sở dữ liệu của bạn trong SQL 2000 thành tệp .bak và di chuyển nó. Thực hiện khôi phục và mọi thứ sẽ ổn. Chạy sp_Users_Loging để xác định người dùng trong máy chủ mồ côi.