Cách cài đặt Microsoft SQL Server trên Debian 12

theanh

Administrator
Nhân viên
MSSQL Server hay Microsoft SQL Server là một RDBMS (Hệ thống quản lý cơ sở dữ liệu quan hệ) do Microsoft phát triển. Là một máy chủ cơ sở dữ liệu, nó được sử dụng để lưu trữ dữ liệu cho các ứng dụng của bạn. SQL Server lý tưởng cho nhiều mục đích ứng dụng, bạn có thể sử dụng MS SQL Server làm cơ sở dữ liệu cho các ứng dụng máy tính để bàn, sử dụng cho các ứng dụng web hoặc bất kỳ ứng dụng máy chủ nhỏ nào.

Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách cài đặt Microsoft SQL Server 2022 Edition trên máy chủ Debian 12. Bạn cũng sẽ tìm hiểu cách cài đặt MS SQL Tools để tương tác với MS SQL Server. Ngoài ra, bạn sẽ học một số truy vấn cơ bản của MS SQL Server.

Điều kiện tiên quyết​

Để hoàn thành hướng dẫn này, hãy đảm bảo bạn có những điều sau:
  • Máy chủ Debian 12.
  • Người dùng không phải root có quyền sudo.

Thêm Microsoft SQL Repository​

Trong hướng dẫn này, chúng tôi sẽ sử dụng tên MS SQL Server làm tham chiếu đến Microsoft SQL Server.

Trước khi cài đặt MS SQL Máy chủ, bạn phải thêm kho lưu trữ MS SQL Server vào máy Debian của mình. Và trong ví dụ này, bạn sẽ thêm kho lưu trữ MS SQL Server 2022 vào máy chủ Debian 12 của mình.

Trước tiên, hãy cập nhật kho lưu trữ Debian của bạn và nâng cấp tất cả các gói bằng lệnh.
Mã:
sudo apt update && sudo apt upgrade
Bây giờ hãy cài đặt các gói phụ thuộc bằng lệnh sau. Nhập y để xác nhận cài đặt.
Mã:
sudo apt install gnupg2 apt-transport-https wget curl

1-install-deps.png



Sau khi các gói phụ thuộc được cài đặt, hãy thêm khóa GPG cho kho lưu trữ MS SQL Server bằng cách chạy lệnh bên dưới.
Mã:
wget -q -O- https://packages.microsoft.com/keys/microsoft.asc | \
gpg --dearmor | sudo tee /usr/share/keyrings/microsoft.gpg > /dev/null 2>&1
Sau đó, thêm kho lưu trữ MS SQL Server bằng lệnh bên dưới. Trong hướng dẫn này, bạn sẽ cài đặt MS SQL Server 2022.
Mã:
echo "deb [signed-by=/usr/share/keyrings/microsoft.gpg arch=amd64,armhf,arm64] https://packages.microsoft.com/ubuntu/22.04/mssql-server-2022 jammy main" | \
sudo tee /etc/apt/sources.list.d/mssql-server-2022.list

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22128%22%3E%3C/svg%3E


Sau khi thêm khóa GPG và kho lưu trữ của MS SQL Server, hãy sử dụng lệnh bên dưới để làm mới kho lưu trữ Debian của bạn và truy xuất thông tin gói cho MS SQL Máy chủ.
Mã:
sudo apt update

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22173%22%3E%3C/svg%3E

Cài đặt Microsoft SQL Server​

Bây giờ bạn đã thêm kho lưu trữ MS SQL Server vào hệ thống Debian của mình, hãy cài đặt nó thông qua trình quản lý gói APT. Trong trường hợp này, bạn sẽ cài đặt MS SQL Server 2022 vào máy chủ Debian của mình.

Cài đặt MS SQL Server 2022 bằng lệnh apt bên dưới. Khi được yêu cầu xác nhận, hãy nhập y và nhấn ENTER để xác nhận.
Mã:
sudo apt install mssql-server

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22294%22%3E%3C/svg%3E


Khi kết thúc quá trình này, bạn sẽ thấy hướng dẫn để hoàn tất cài đặt MS SQL Server.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22610%22%20height=%22252%22%3E%3C/svg%3E


Chạy lệnh bên dưới để hoàn tất cài đặt MS SQL Server.
Mã:
sudo /opt/mssql/bin/mssql-conf setup
Bây giờ bạn sẽ được hỏi những câu hỏi sau:
  • Chọn phiên bản MS SQL Server? Nhập 3 để chọn SQL Server Express.
  • Khi được hỏi về các điều khoản cấp phép? Nhập Yes để xác nhận.
  • Bây giờ nhập mật khẩu quản trị viên cho MS SQL Server của bạn và lặp lại.
Với lệnh này, cấu hình MS SQL Server sẽ hoàn tất. Nó sẽ chạy trên máy chủ Debian của bạn.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22719%22%20height=%22750%22%3E%3C/svg%3E


Xác minh trạng thái dịch vụ MS SQL Server bằng lệnh bên dưới. Đảm bảo MS SQL Server đang chạy và được bật trên hệ thống của bạn.
Mã:
sudo systemctl is-enabled mssql-server
sudo systemctl status mssql-server

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22287%22%3E%3C/svg%3E

Thiết lập UFW​

Sau khi MS SQL Server đang chạy, bước tiếp theo là thiết lập UFW và mở cổng 1433/tcp cho MS SQL Server. Đảm bảo kết nối

Cài đặt UFW (Uncomplicated Firewall) vào máy Debian của bạn bằng lệnh bên dưới. Nhập y để xác nhận khi được yêu cầu.
Mã:
sudo apt install ufw
Sau khi UFW được cài đặt, hãy chạy lệnh ufw bên dưới để thêm cấu hình OpenSSH và cổng 1433/tcp. Và hãy nhớ thay đổi mạng con bằng địa chỉ IP mạng cục bộ của bạn.

Cấu hình OpenSSH sẽ cho phép lưu lượng truy cập đến cổng SSH 22, trong khi cổng 1433/tcp được sử dụng cho lưu lượng truy cập MS SQL Server.
Mã:
sudo ufw allow OpenSSH
sudo ufw allow 1433/tcp

or

sudo ufw allow from 192.168.1.0/24 to any port1433
Bây giờ hãy khởi động và bật UFW bằng lệnh bên dưới. Khi được hỏi, hãy nhập y để xác nhận và khởi động UFW.
Mã:
sudo ufw enable
Nếu UFW đang chạy, bạn sẽ thấy đầu ra 'Tường lửa đang hoạt động và được bật khi khởi động hệ thống'.

Bây giờ bạn có thể xác minh danh sách các cổng mở và cấu hình được bật trên UFW bằng lệnh bên dưới.
Mã:
sudo ufw status
Đảm bảo Hồ sơ OpenSSH và cổng 1433/tcp được thêm vào UFW.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22532%22%20height=%22258%22%3E%3C/svg%3E

Cài đặt Microsoft SQL Tools cho máy khách​

Trong phần này, bạn sẽ tìm hiểu cách cài đặt MS SQL Tools trên máy khách của mình. Bài viết này hướng dẫn cách cài đặt MS SQL Tools trên các bản phân phối Linux dựa trên Debian và các bản phân phối dựa trên RedHat.

Thêm kho lưu trữ MS SQL Tools và làm mới chỉ mục gói của bạn trong máy khách Debian/Ubuntu bằng lệnh bên dưới.

Đối với máy khách Debian/Ubuntu:
Mã:
echo "deb [signed-by=/usr/share/keyrings/microsoft.gpg arch=amd64,armhf,arm64] https://packages.microsoft.com/ubuntu/22.04/prod jammy main" | \
sudo tee /etc/apt/sources.list.d/prod.list

sudo apt update

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22242%22%3E%3C/svg%3E


Đối với các bản phân phối dựa trên RedHat của máy khách:
Mã:
sudo curl -o /etc/yum.repos.d/mssql-prod.repo https://packages.microsoft.com/config/rhel/9.0/prod.repo
sudo dnf repolist
Sau khi kho lưu trữ được thêm vào, hãy chạy lệnh bên dưới để cài đặt MS SQL Tools trên máy khách của bạn.

MS SQL Tools cho Debian/Ubuntu phân phối:
Mã:
sudo apt install mssql-tools unixodbc-dev

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22259%22%3E%3C/svg%3E


Công cụ MS SQL cho RHEL-based phân phối:
Mã:
sudo dnf install mssql-tools unixODBC-devel
Nhập YES khi được hỏi về các điều khoản cấp phép của các gói MS SQL Tools.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22227%22%3E%3C/svg%3E



data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22192%22%3E%3C/svg%3E


Sau khi quá trình cài đặt hoàn tất, MS SQL Tools sẽ được cài đặt trong thư mục /opt/mssql-tools/bin. Bạn có thể kiểm tra thư mục /opt/mssql-tools/bin và bạn sẽ thấy hai tệp nhị phân sqlcmd là MS SQL client và bcp để nhập dữ liệu vào SQL Server.
Mã:
ls -ah /opt/mssql-tools/bin
Tiếp theo, thêm thư mục /opt/mssql-tools/bin vào PATH của hệ thống bằng lệnh bên dưới.
Mã:
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> /etc/environment
Bây giờ hãy tải tệp /etc/environment và xác minh PATH bằng lệnh bên dưới. Đảm bảo thư mục /opt/mssql-tools/bin được thêm vào PATH hệ thống của bạn.
Mã:
source /etc/environment
echo $PATH

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22191%22%3E%3C/svg%3E


Cuối cùng, chạy lệnh sau để định vị cả hai tệp nhị phân sqlcmd và bcp.
Mã:
which sqlcmd
which bcp
Bây giờ bạn có thể thực hiện cả lệnh 'sqlcmd' và 'bcp' như sau:
Mã:
sqlcmd -?
bcp -?

Kết nối với MS SQL Server qua sqlcmd​

Bây giờ bạn đã cài đặt MS SQL Tools trên máy khách của mình, bước tiếp theo là kết nối với MS SQL Server của bạn.

Để kết nối với MS SQL Server của bạn, hãy chạy lệnh sqlcmd bên dưới. Nhập mật khẩu quản trị viên của bạn khi được yêu cầu.
Mã:
sqlcmd -S localhost -U SA -p
Sau khi kết nối, hãy chạy truy vấn sau để xác minh phiên bản MS SQL Server của bạn.
Mã:
select @@version
go
Bạn sẽ thấy rằng mình đã cài đặt MS SQL Server 2022.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22381%22%3E%3C/svg%3E


Bây giờ hãy xác minh danh sách cơ sở dữ liệu trên MS SQL Server của bạn bằng truy vấn bên dưới.
Mã:
select name from sys.databases;
go
Bạn sẽ thấy các cơ sở dữ liệu mặc định là master, tempdb, model và msdb trên MS SQL Server.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22460%22%20height=%22239%22%3E%3C/svg%3E

Tạo cơ sở dữ liệu và người dùng trong MS SQL Máy chủ​

Sau khi bạn đã kết nối với MS SQL Server, bây giờ bạn có thể tạo một người dùng và cơ sở dữ liệu mới trên MS SQL Server.

ĐỂ tạo một tên đăng nhập và người dùng mới trên MS SQL Server, hãy thực hiện các truy vấn sau. Trong ví dụ này, bạn sẽ tạo một tên đăng nhập mới Alex với mật khẩu 'Myp@ssw0rd0987==+'.
Mã:
CREATE LOGIN Alex WITH PASSWORD='Myp@ssw0rd0987==+';
GO
Sau đó, tạo một cơ sở dữ liệu mới 'AppDB' và chuyển sang cơ sở dữ liệu đó bằng cách sử dụng lệnh sau truy vấn.
Mã:
CREATE DATABASE AppDB;
GO
Mã:
USE AppDB;
GO

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22663%22%20height=%22389%22%3E%3C/svg%3E


Bây giờ hãy chạy các truy vấn sau để tạo bảng users mới.
Mã:
CREATE TABLE users (
id INT PRIMARY KEY IDENTITY (1, 1),
first_name VARCHAR (50) NOT NULL,
last_name varchar(50) NOT NULL,
email varchar(50),
last_login DATE NOT NULL
);
GO

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22673%22%20height=%22278%22%3E%3C/svg%3E


Sau đó, tạo một người dùng mới 'Alex' để đăng nhập 'Alex' bằng cách sử dụng truy vấn bên dưới.
Mã:
CREATE USER Alex FOR LOGIN Alex;
GO
Sau khi người dùng được tạo, hãy chạy truy vấn bên dưới để cấp quyền của bảng users cho người dùng Alex.
Mã:
GRANT SELECT, INSERT, UPDATE, DELETE ON users TO Alex;
GO
Gõ quit để thoát.

Chèn và Truy xuất Dữ liệu trong Microsoft SQL Server​

Sau khi tạo cơ sở dữ liệu và người dùng mới, bước tiếp theo là xác minh cơ sở dữ liệu của bạn bằng cách kết nối với MS SQL Server bằng người dùng của bạn, cụ thể là với cơ sở dữ liệu của bạn.

Bây giờ hãy chạy lệnh 'sqlcmd' bên dưới để kết nối với cơ sở dữ liệu của bạn bằng người dùng đăng nhập của bạn. Nhập mật khẩu khi được nhắc.
Mã:
sqlcmd -S localhost -U Alex -d AppDB -p
Sau khi đăng nhập, hãy chạy truy vấn sau để chèn dữ liệu mới vào bảng 'users'.
Mã:
INSERT INTO users (first_name, last_name, email, last_login) VALUES ('Alex', 'Seed', '[emailprotected]', '20221201');
GO

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22178%22%3E%3C/svg%3E


Bây giờ bạn có thể chạy truy vấn SELECT bên dưới để lấy dữ liệu của mình trong MS SQL Server.
Mã:
SELECT * FROM users;
GO

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%2299%22%3E%3C/svg%3E


Bây giờ bạn có thể nhập quit để thoát.

Kết luận​

Xin chúc mừng! Bây giờ bạn đã hoàn tất việc cài đặt Microsoft SQL Server 2022 trên máy chủ Debian 12. Bạn cũng đã học cách cài đặt MS SQL Tools trên các bản phân phối dựa trên Debian và RedHat và học cách kết nối với MS SQL Server thông qua lệnh 'sqlcmd'.

Ngoài ra, bạn cũng đã học cách sử dụng cơ bản các truy vấn MS SQL để tạo cơ sở dữ liệu và người dùng, tạo bảng và chèn và truy xuất dữ liệu trong MS SQL Server.
 
Back
Bên trên