2011-12-19 34 views

Trả lời

63

Có vài cách để làm điều đó:

  1. Các đáng tin cậy nhất (mà tôi thường sử dụng) đang sử dụng SQL Azure Migration Wizard
  2. Sau đó, bạn có tùy chọn "Tạo tập lệnh" trong SSMS (SQL Server Management Studio 2008 R2 trở lên). Tùy chọn tạo Scripts không có tính năng để tạo kịch bản tuân thủ SQL Azure. Nó cũng có thể tập lệnh dữ liệu. Nhưng tôi khuyên bạn nên sử dụng phương pháp một nếu bạn cũng muốn di chuyển dữ liệu. Thuật sĩ di chuyển SQL Azure sử dụng công cụ BCP, kết xuất dữ liệu thành các tệp nhị phân, trong khi SSMS chỉ tạo ra các câu lệnh INSERT trực tiếp
  3. SSIS (Dịch vụ tích hợp SQL Server) - bạn có thể tạo một nhiệm vụ Chuyển dữ liệu, nhưng tôi sẽ sử dụng nó rất hiếm các DB nhỏ.
  4. Xuất/nhập dữ liệu tầng ứng dụng (sử dụng gói DACPAC) - điều này sẽ di chuyển lược đồ của bạn và có thể di chuyển dữ liệu của bạn.

CẬP NHẬT 2017-10-24

Cơ sở dữ liệu SQL Azure bây giờ hỗ trợ nhân rộng giao dịch từ tại chỗ SQL Server của bạn. Bạn có thể cấu hình Cơ sở dữ liệu SQL Azure của mình làm người đăng ký và máy chủ SQL tại chỗ làm nhà xuất bản. Bạn có thể đọc thêm về các lựa chọn cơ sở dữ liệu di cư và chiến lược ở đây: https://docs.microsoft.com/en-us/azure/sql-database/sql-database-cloud-migrate

Cập nhật 2017-12-23

SQL Azure Migration Wizard đã được thay thế bởi Migration Assistant dữ liệu: https://docs.microsoft.com/en-us/azure/sql-database/sql-database-cloud-migrate

+0

Tôi đã thử sử dụng các công cụ SQL Server 2014 cho công việc nhưng tôi đã không thành công. Thuật sĩ di chuyển SQL Azure là thuật sĩ đã thực hiện công việc đúng cách. – nrod

+0

Trong lần di chuyển thứ hai sau vài ngày, thuật sĩ Di chuyển SQL Azure 'không giúp được. Giải pháp cuối cùng là: trích xuất một tầng dữ liệu từ ** Local SQL Server ** (sử dụng 'Visual Studio SQL Server Object Explorer') và sau đó xuất bản cùng một tệp trong ** Cơ sở dữ liệu SQL Azure ** (cũng bằng cách sử dụng' Visual Studio SQL Server Object Explorer') và chọn hộp kiểm ** Đăng ký dưới dạng Ứng dụng tầng dữ liệu ** và chọn ** Cho phép nền tảng không tương thích ** trong các tùy chọn nâng cao. Làm việc thực sự tốt! – nrod

+0

Tôi ngạc nhiên trước cách mọi người đến trong năm 2017 và câu trả lời downvote được đưa ra trong năm 2011. Nhưng trong trường hợp cụ thể tôi vẫn sẽ trả lời rằng cách đáng tin cậy nhất để di chuyển cơ sở dữ liệu SQL để Azure SQL DB đang sử dụng thuật sĩ di chuyển SQL Azure. Trừ khi bạn tìm kiếm di chuyển không ngừng hoạt động. – astaykov

5
+0

Xin lỗi nếu điều này đang phục hồi một chủ đề cũ, nhưng một số liên kết này đã lỗi thời và không còn có sẵn nữa. – jamiebarrow

+0

Chỉ có một liên kết không khả dụng, nó hiện đã được cập nhật. –

+2

cảm ơn. Ngoài ra, Microsoft Codename "Chuyển dữ liệu" phòng thí nghiệm giai đoạn hoàn thành, tôi không thể nhìn thấy bất cứ điều gì từ trang đó liên quan đến nó, chỉ cần giả định nó bây giờ đã lỗi thời. – jamiebarrow

0

SQL Server 2012 Management Studio và SQL Azure Công cụ bây giờ cũng có tùy chọn này, tôi dám nhận lời thách đã.

Trong SSMS nếu bạn nhấp chuột phải vào cơ sở dữ liệu gốc, có tùy chọn "Nhập dữ liệu tầng ứng dụng ...", cho phép bạn khôi phục BACPAC (bạn cũng có thể nhấp chuột phải vào cơ sở dữ liệu và chọn " Xuất ứng dụng tầng dữ liệu ... "để xuất cơ sở dữ liệu hiện có sang BACPAC).

Công cụ dữ liệu SQL Server cho phép Visual Studio 2010 có tùy chọn So sánh dữ liệu, cũng có thể được sử dụng để di chuyển dữ liệu giữa hai trường hợp cơ sở dữ liệu (phù hợp với các bản vá dữ liệu nhỏ hơn).

11

Nếu bạn đã có cơ sở dữ liệu trên máy cục bộ, bạn có thể di chuyển nó trực tiếp trên Azure bằng cách sử dụng SQL Management Studio. Thực hiện theo các bước sau:

  1. Nhấp chuột phải vào tên cơ sở dữ liệu trong SSMS

enter image description here

  1. theo các hướng dẫn xuất hiện sau đó
+0

bạn có cần gì khác ngoài IP khi kết nối với Azure không? bạn có cần cổng không –

+0

Không, bạn chỉ cần thông tin đăng nhập của tài khoản SQL Azure của bạn để kết nối với Azure trong SSMS. Trong Azure Portal, bạn nên thêm IP của bạn để truy cập vào DB bằng cách sử dụng các thiết lập tường lửa trong SQL Azure. – Vishal

+0

Điều này làm việc tốt cho tôi, nhưng bạn phải phần nào cẩn thận về những gì người dùng được liên kết với cơ sở dữ liệu. Bất kỳ người dùng hoặc dịch vụ dựa trên Windows nào cũng sẽ làm cho quy trình bị lỗi. Một khi bạn loại bỏ chúng nó là tất cả tốt để đi một lần nữa. – jocull

0

Cài đặt công cụ dữ liệu SQL Server trong Visual Studio nếu bạn chưa có.

Trong Visual Studio đi đến

Tools -> SQL Server -> New Data So sánh -> Chọn cơ sở dữ liệu nguồn của bạn -> thiết lập cơ sở dữ liệu mục tiêu bằng các thông tin Azure của bạn.

+0

Người hạ cấp câu trả lời này. Vui lòng xem xét thêm nhận xét. – SiD

Các vấn đề liên quan