SQL Server: Cách cài đặt SQL Server trên máy Mac

Các khóa học qua video:
Python SQL Server PHP C# Lập trình C Java HTML5-CSS3-JavaScript
Học trên YouTube <76K/tháng. Đăng ký Hội viên
Viết nhanh hơn - Học tốt hơn
Giải phóng thời gian, khai phóng năng lực

Bài viết này ta sẽ tìm hiểu về cách khởi động và chạy SQL Server trên máy Mac mà không cần bất kỳ phần mềm ảo hóa nào.

Trước SQL Server 2017, nếu bạn muốn chạy SQL Server trên máy Mac, trước tiên bạn phải tạo một máy ảo (sử dụng VirtualBox, Parallels Desktop, VMware Fusion hoặc Bootcamp), sau đó cài đặt Windows vào máy ảo đó, sau đó cuối cùng là SQL Server. Đây vẫn là một tùy chọn hợp lệ tùy thuộc vào yêu cầu của bạn.

Bắt đầu với SQL Server 2017, bạn có thể cài đặt SQL Server trực tiếp trên máy Linux. Và bởi vì macOS dựa trên Unix (và Linux là Unix), bạn có thể chạy SQL Server cho Linux trên máy Mac của mình. Cách để làm điều này là chạy SQL Server trên Docker.

Vì vậy, hãy tiếp tục và cài đặt Docker. Sau đó, chúng ta sẽ tải xuống và cài đặt SQL Server.

Cài đặt Docker

Tải xuống Docker Community Edition (miễn phí) cho Mac (trừ khi bạn đã cài đặt nó trên hệ thống của mình). Điều này sẽ cho phép bạn chạy SQL Server từ bên trong vùng chứa Docker.

Để tải về, hãy truy cập Docker CE cho Mac trang tải về và nhấp chuột Get Docker.

Để cài đặt, hãy nhấp đúp vào file .dmg và sau đó kéo biểu tượng Docker.app vào thư mục Application của bạn.

Ảnh chụp màn hình cài đặt Docker.
Cài đặt Docker trên máy Mac.

Docker là gì?

Docker là một nền tảng cho phép phần mềm chạy trong môi trường cô lập của riêng nó. SQL Server (từ năm 2017) có thể được chạy trên Docker trong vùng chứa riêng biệt của riêng nó. Sau khi Docker được cài đặt, bạn chỉ cần tải xuống - hoặc “kéo” - Máy chủ SQL trên Linux Docker Image vào máy Mac của bạn, sau đó chạy nó dưới dạng vùng chứa Docker. Vùng chứa này là một môi trường biệt lập chứa mọi thứ SQL Server cần để chạy.

Khởi chạy Docker

Khởi chạy Docker giống như cách bạn khởi chạy bất kỳ ứng dụng nào khác (ví dụ: thông qua thư mục Application, Launchpad, v.v.).

Khi bạn mở Docker, bạn có thể được nhắc nhập mật khẩu của mình để Docker có thể cài đặt các thành phần mạng và liên kết đến các ứng dụng Docker. Hãy tiếp tục và cung cấp mật khẩu của bạn, vì Docker cần mật khẩu này để chạy.

Ảnh chụp màn hình hộp thoại yêu cầu mật khẩu
Hộp thoại yêu cầu mật khẩu

Tăng bộ nhớ (tùy chọn)

Theo mặc định, Docker sẽ có 2GB bộ nhớ được cấp cho nó. SQL Server cần ít nhất 2GB. Tuy nhiên, sẽ không có hại gì nếu bạn tăng nó lên nếu bạn có thể.

Trong trường hợp này ta tăng nó lên 4GB.

Để thực hiện việc này, hãy chọn Preferences từ biểu tượng Docker nhỏ ở menu trên cùng:

Ảnh chụp màn hình của việc chọn Tùy chọn

Sau đó, trên màn hình Resources> Advanced, trượt thanh trượt bộ nhớ lên ít nhất 4GB:

Ảnh chụp màn hình Nâng cao trong tab Tài nguyên trong Docker.

Sau đó kết thúc bằng cách nhấp vào Apply & Restart.

Tải xuống SQL Server

Bây giờ Docker đã được cài đặt, chúng ta có thể tải xuống và cài đặt SQL Server cho Linux.

Mở cửa sổ Terminal và chạy lệnh sau:

sudo docker pull mcr.microsoft.com/mssql/server:2019-latest

Thao tác này sẽ tải xuống hình ảnh SQL Server 2019 dành cho Linux Docker mới nhất vào máy tính của bạn.

Bạn cũng có thể kiểm tra phiên bản vùng chứa mới nhất trên trang web Docker nếu muốn.

Khởi chạy Hình ảnh Docker

Chạy lệnh sau để khởi chạy một phiên bản của hình ảnh Docker mà bạn vừa tải xuống:

docker run -d --name sql_server_demo -e 'ACCEPT_EULA = Y' -e 'SA_PASSWORD = reallyStrongPwd123' -p 1433: 1433 mcr.microsoft.com/mssql/server:2019-latest

Nhưng tất nhiên, hãy sử dụng tên và mật khẩu của chính bạn. Ngoài ra, nếu bạn đã tải xuống một hình ảnh Docker khác, hãy thay thế mcr.microsoft.com/mssql/server:2019-latest bằng hình ảnh bạn đã tải xuống.

Đây là giải thích về các tham số:

-d Tham số tùy chọn này khởi chạy vùng chứa Docker ở chế độ daemon. Điều này có nghĩa là nó chạy ở chế độ nền và không cần mở cửa sổ Terminal của riêng nó. Bạn có thể bỏ qua tham số này để vùng chứa chạy trong cửa sổ Terminal của chính nó.
--name sql_server_demo Một tham số tùy chọn khác. Tham số này cho phép bạn đặt tên cho vùng chứa. Điều này có thể hữu ích khi dừng và khởi động container của bạn từ Terminal.
-e 'ACCEPT_EULA=Y' Y cho thấy bạn đồng ý với EULA (Thỏa thuận cấp phép người dùng cuối). Điều này là bắt buộc để SQL Server dành cho Linux chạy trên máy Mac của bạn.
-e 'SA_PASSWORD=reallyStrongPwd123' Tham số bắt buộc đặt mật khẩu cơ sở dữ liệu sa.
-p 1433:1433 Điều này ánh xạ cổng cục bộ 1433 thành cổng 1433 trên container. Đây là cổng TCP mặc định mà SQL Server sử dụng để lắng nghe các kết nối.
mcr.microsoft.com/mssql/server:2019-latest Điều này cho Docker biết hình ảnh nào sẽ sử dụng. Nếu bạn đã tải xuống một hình ảnh khác, hãy sử dụng nó thay thế.

Mật khẩu mạnh

Nếu bạn gặp lỗi sau ở bước này, hãy thử lại nhưng với mật khẩu mạnh hơn:

Microsoft(R) SQL Server(R) setup failed with error code 1. Please check the setup log in /var/opt/mssql/log for more information.

Tôi đã nhận được lỗi này khi sử dụng reallyStrongPwd làm mật khẩu (nhưng tất nhiên, nó không phải là một mật khẩu thực sự mạnh!). Ta có thể khắc phục điều này bằng cách thêm một số số vào cuối. Tuy nhiên, nếu nó không phải là một bản demo, thì ta cần chắc chắn sẽ làm cho nó mạnh hơn một vài từ và số từ điển.

Kiểm tra vùng chứa Docker (tùy chọn)

Bạn có thể nhập lệnh sau để kiểm tra xem vùng chứa Docker có đang chạy hay không.

docker ps

Nếu nó được thiết lập và đang chạy, nó sẽ trả về một cái gì đó như sau:

CONTAINER ID        IMAGE                                        COMMAND                CREATED             STATUS              PORTS                    NAMES
4e4aa21eb391        mcr.microsoft.com/mssql/server:2019-latest   "/opt/mssql/bin/sqls…" 23 seconds ago      Up 21 seconds       0.0.0.0:1433->1433/tcp   sql_server_demo

Cài đặt sql-cli (nếu chưa cài)

Chạy lệnh sau để cài đặt công cụ dòng lệnh sql-cli. Công cụ này cho phép bạn chạy các truy vấn và các lệnh khác đối với phiên bản SQL Server của bạn.

npm install -g sql-cli

Điều này giả sử bạn đã cài đặt NodeJS. Nếu bạn không có, hãy tải xuống từ Nodejs.org trước. Cài đặt NodeJS sẽ tự động cài đặt npm, đây là những gì chúng ta sử dụng trong lệnh này để cài đặt sql-cli.

Lỗi quyền?

Nếu bạn gặp lỗi và một phần của nó có nội dung như "Please try running this command again as root/Administrator", thì bạn hãy thử lại, nhưng lần này hãy thêm vào sudo như sau:

sudo npm install -g sql-cli

Kết nối với SQL Server

Bây giờ sql-cli đã được cài đặt, chúng ta có thể bắt đầu làm việc với SQL Server thông qua cửa sổ Terminal trên máy Mac của mình.

Kết nối với SQL Server bằng lệnh mssql, theo sau là tham số tên người dùng và mật khẩu:

mssql -u sa -p thực sựStrongPwd123

Bạn sẽ thấy một cái gì đó như thế này:

Connecting to localhost...done

      sql-cli version 0.6.0
      Enter ".help" for usage hints.
      mssql>

Điều này có nghĩa là bạn đã kết nối thành công với phiên bản SQL Server của mình.

Chạy thử nghiệm nhanh

Chạy thử nghiệm nhanh để kiểm tra xem SQL Server đã được thiết lập và đang chạy hay chưa và bạn có thể truy vấn nó.

Ví dụ: bạn có thể chạy lệnh sau để xem phiên bản SQL Server của bạn đang chạy:

select @@version

Nếu nó đang chạy, bạn sẽ thấy một cái gì đó như thế này (tất nhiên là điều này sẽ phụ thuộc vào phiên bản bạn đang chạy):

+--------------------+
| (No column name)   |
|--------------------|
| Microsoft SQL Server 2019 (RTM-CU3) (KB4538853) - 15.0.4023.6 (X64) 
        Mar  4 2020 00:59:26 
        Copyright (C) 2019 Microsoft Corporation
        Developer Edition (64-bit) on Linux (Ubuntu 18.04.4 LTS)                     |
+--------------------+
(1 row affected)

Nếu bạn thấy một thông báo như thế này, xin chúc mừng - SQL Server hiện đã được thiết lập và chạy trên máy Mac của bạn!

Giao diện người dùng SQL Server cho máy Mac của bạn - Azure Data Studio

Bảng điều khiển Azure Data Studio
Bảng điều khiển Azure Data Studio.

Azure Data Studio (trước đây là SQL Operations Studio) là một công cụ quản lý GUI miễn phí mà bạn có thể sử dụng để quản lý SQL Server trên máy Mac của mình. Bạn có thể sử dụng nó để tạo và quản lý cơ sở dữ liệu, viết truy vấn, sao lưu và khôi phục cơ sở dữ liệu, v.v.

Azure Data Studio có sẵn trên Windows, Mac và Linux.

Một giao diện máy chủ SQL miễn phí khác - DBeaver

Một công cụ SQL Server GUI khác mà bạn có thể sử dụng trên máy Mac (và cả Windows/Linux/Solaris) là DBeaver.

DBeaver là một công cụ quản lý cơ sở dữ liệu mã nguồn mở miễn phí có thể được sử dụng trên hầu hết các hệ quản trị cơ sở dữ liệu (chẳng hạn như MySQL, PostgreSQL, MariaDB, SQLite, Oracle, DB2, SQL Server, Sybase, Microsoft Access, Teradata, Firebird, Derby, v.v. ).

Ảnh chụp màn hình DBeaver sử dụng chủ đề Tối
DBeaver sử dụng chủ đề “Dark”.

Ta có thể truy cập thẳng vào trang tải xuống DBeaver và dùng thử với cài đặt SQL Server mới của mình.

Hạn chế của SQL Server cho Linux/Mac

SQL Server cho Linux có một số hạn chế khi so sánh với các phiên bản Windows (mặc dù điều này có thể thay đổi theo thời gian). Bản phát hành Linux không bao gồm nhiều dịch vụ bổ sung có sẵn trong bản phát hành Windows, chẳng hạn như Dịch vụ phân tích (Analysis Services), Dịch vụ báo cáo (Reporting Services), v.v.

Một hạn chế khác là SQL Server Management Studio không khả dụng trên Mac hoặc Linux. SSMS một trình quản lý GUI toàn diện cho SQL Server và nó cung cấp nhiều tính năng hơn Azure Data Studio và DBeaver (ít nhất là tại thời điểm viết bài này). Bạn vẫn có thể sử dụng SSMS trên máy Windows để kết nối với SQL Server trên máy Linux hoặc Mac, nhưng bạn không thể cài đặt nó cục bộ trên máy Linux hoặc Mac.

Nếu bạn cần bất kỳ tính năng nào không được hỗ trợ trong SQL Server cho Linux, bạn sẽ cần SQL Server cho Windows. Tuy nhiên, bạn vẫn có thể chạy SQL Server cho Windows trên máy Mac của mình bằng cách sử dụng phần mềm ảo hóa.

» Tiếp: Solution Practical 1
« Trước: Khắc phục lỗi feature NetFx3 khi cài đặt SQL Server 2012
Các khóa học qua video:
Python SQL Server PHP C# Lập trình C Java HTML5-CSS3-JavaScript
Học trên YouTube <76K/tháng. Đăng ký Hội viên
Viết nhanh hơn - Học tốt hơn
Giải phóng thời gian, khai phóng năng lực
Copied !!!