Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Cách khôi phục cơ sở dữ liệu SQL Server trên máy Mac bằng SQL Operations Studio

CẬP NHẬT:SQL Operations Studio (SQLOPS) đã được đổi tên thành Azure Data Studio. Các bước trong bài viết này vẫn giữ nguyên. Trong mọi trường hợp, tôi cũng đã viết lại các bước này (và bao gồm cả ảnh chụp màn hình tương đương) dành riêng cho Azure Data Studio. Xem Cách khôi phục cơ sở dữ liệu SQL Server trên máy Mac bằng Azure Data Studio.

Khôi phục cơ sở dữ liệu là một miếng bánh với SQL Operations Studio. Đây là một quy trình tương tự như thực hiện với SQL Server Management Studio. Chỉ cần nhấp vào Khôi phục và làm theo lời nhắc.

Quá trình khôi phục này cho phép bạn điều hướng qua hệ thống tệp của máy tính để tìm tệp .bak. Tệp .bak này chứa bản sao lưu của cơ sở dữ liệu bạn muốn khôi phục. Vì vậy, khi SQL Server khôi phục cơ sở dữ liệu, nó sẽ sử dụng tệp .bak để thực hiện việc này.

Tuy nhiên, nếu bạn đang chạy phiên bản SQL Server của mình bên trong vùng chứa Docker (tất nhiên, bạn sẽ làm như vậy nếu bạn đang chạy SQL Server trên Mac hoặc Linux), có một số điều bạn cần lưu ý nếu tệp sao lưu của bạn được đặt. bên ngoài vùng chứa Docker.

Nếu tệp sao lưu nằm bên ngoài vùng chứa Docker đang chạy SQL Server, bạn sẽ cần sao chép nó vào vùng chứa Docker trước khi thực hiện khôi phục. Khi bạn đã sao chép tệp .bak vào vùng chứa Docker, bạn có thể tiếp tục và sử dụng SQLOPS để khôi phục cơ sở dữ liệu.

Dưới đây, tôi trình bày tất cả các bước liên quan.

Hướng dẫn này giả định rằng bạn đã cài đặt SQL Server trên máy Mac của mình bằng bộ chứa Docker và bạn đã cài đặt SQL Operations Studio.

Tôi nên chỉ ra rằng, mặc dù các ví dụ trên trang này được thực hiện trên máy Mac, nhưng tất cả các bước phải hoạt động trên cả macOS và Linux.

Tải xuống cơ sở dữ liệu mẫu

Nếu bạn đã có tệp .bak trong cơ sở dữ liệu của riêng mình, bạn không cần thực hiện bước này.

Đối với hướng dẫn này, tôi sẽ khôi phục cơ sở dữ liệu mẫu WideWorldImporters. Đây là cơ sở dữ liệu mẫu mà Microsoft đã cung cấp để giới thiệu các tính năng khác nhau của SQL Server. Đặc biệt, tôi sẽ sử dụng phiên bản kho dữ liệu của cơ sở dữ liệu.

Để tải xuống tệp .bak cơ sở dữ liệu mẫu WideWorldImporters, hãy truy cập trang WideWorldImporters Github và tìm liên kết tải xuống hoặc bạn có thể tải xuống tệp .bak trực tiếp tại đây:

  • WildWorldImportersDW-Full.bak [47,7mb]

Sao chép tệp .bak vào Vùng chứa Docker

Bạn chỉ cần thực hiện bước này nếu tệp .bak của bạn nằm bên ngoài vùng chứa Docker (sẽ là điều này nếu bạn vừa tải xuống tệp .bak WideWorldImporters).

Đầu tiên, hãy tạo một thư mục bên trong vùng chứa Docker:

sudo docker exec -it sql_server_demo mkdir /var/opt/mssql/backup

Bây giờ sao chép tệp .bak của cơ sở dữ liệu vào thư mục đó:

sudo docker cp WideWorldImportersDW-Full.bak sql_server_demo:/var/opt/mssql/backup

Lệnh này giả sử bạn đang ở trong cùng một thư mục với tệp .bak. Nếu không, hãy thay đổi vào thư mục sử dụng trước. Ví dụ:

cd Downloads

hoặc bất kỳ thư mục nào trong đó.

Tại sao chúng ta cần Sao chép Tệp .bak?

Vùng chứa Docker có hệ thống tệp riêng và nó hoạt động độc lập với hệ thống tệp trên máy Mac của bạn. Vì vậy, khi bạn cố gắng điều hướng đến tệp .bak trong SQLOPS (trong bước tiếp theo), bạn sẽ thấy mình bị "mắc kẹt" bên trong hệ thống tệp của vùng chứa Docker, không có cách nào để truy cập tệp .bak trên hệ thống tệp của máy Mac. Do đó, trước tiên, chúng tôi sao chép tệp .bak vào hệ thống tệp của vùng chứa, sau đó chúng tôi có thể truy cập tệp đó qua SQLOPS.

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

OK, bây giờ chúng ta có thể thực hiện quá trình khôi phục cơ sở dữ liệu thực tế.

Các bước sau giả sử bạn đã chạy SQL Operations Studio và bạn đã kết nối với SQL Server.

  1. Từ Trang tổng quan máy chủ, nhấp vào Khôi phục cái nút
  2. Tại Khôi phục từ tiêu đề, chọn Tệp sao lưu từ menu thả xuống
  3. Tại Đường dẫn tệp sao lưu đầu đề, hãy nhấp vào dấu chấm lửng ( )
  4. Điều hướng đến thư mục, chọn tệp .bak và nhấp vào OK
  5. Nhấp vào Khôi phục
  6. Quá trình khôi phục có thể mất một hoặc hai phút. Lịch sử công việc sẽ cho biết khi nào nó sẵn sàng

Cơ sở dữ liệu hiện đã được khôi phục.

Kiểm tra cơ sở dữ liệu

Có thể bạn sẽ muốn kiểm tra xem cơ sở dữ liệu đã được khôi phục trên thực tế chưa. Một cách để làm điều này là điều hướng đến cơ sở dữ liệu và chạy một truy vấn nhanh.

  1. Nhấp vào Máy chủ biểu tượng (trên cùng bên trái của màn hình)
  2. Cơ sở dữ liệu bây giờ sẽ được liệt kê trong Cơ sở dữ liệu hướng tới máy chủ thích hợp. Nếu không, hãy nhấp chuột phải vào Cơ sở dữ liệu và chọn Làm mới
  3. Sử dụng giao diện SQLOPS để chạy truy vấn đối với cơ sở dữ liệu. Ví dụ:nhấp chuột phải vào Bảng (sau khi mở rộng cơ sở dữ liệu) và nhấp vào Chọn 1000 hàng đầu . Thao tác này sẽ tự động chạy một truy vấn đối với bảng đó, chỉ chọn 1000 kết quả hàng đầu

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Có bất kỳ công cụ miễn phí nào để tạo tập lệnh 'CHÈN VÀO' trong MS SQL Server không?

  2. Tên cột biến SQL Server?

  3. Làm cách nào để chọn ngày đầu tiên của tháng trong SQL?

  4. Cách lấy lịch Quý từ một ngày trong TSQL

  5. Chuyển đổi ‘datetime’ thành ‘datetime2’ trong SQL Server (Ví dụ T-SQL)