NỘI DUNG

Hosting tốc độ cao Vietnix - tốc độ tải trang trung bình dưới 1 giây
VPS siêu tốc Vietnix - trải nghiệm mượt mà, ổn định
10/09/2024
Lượt xem

Hướng dẫn cài đặt và kết nối sử dụng SQL Server trên Linux

10/09/2024
18 phút đọc
Lượt xem

Đánh giá

5/5 - (188 bình chọn)

Microsoft SQL Server là một cơ sở dữ liệu quan hệ dựa trên Windows và có hỗ trợ cả các bản phân phối Linux. Trong bài viết này mình sẽ hướng dẫn chi tiết cách cài đặt và sử dụng SQL Server trên Linux.

Yêu cầu về cấu hình hệ thống khi cài đặt SQL Server

SQL Server từ phiên bản 2017 trở đi sẽ hỗ trợ người dùng các hệ điều hành sau:

  • Red Hat Enterprise Linux 7.7 – 7.9, hoặc 8.0 – 8.3 Server.
  • Ubuntu 16.04 LTS, 18.04 LTS, Ubuntu 20.04 LTS,Ubuntu 22.04 LTS,…
  • SUSE Enterprise Linux Server v12 SP3 – SP5.
  • Docker Engine 1.8+ trên MAC, hoặc Linux.
  • Container bằng OpenShift hoặc Kubernetes.
Yêu câu cài đặt cấu hình sql server trong Linux
Yêu câu cài đặt cấu hình sql server trong Linux

Để cài đặt được SQL Server trên Linux, bạn cần có cấu hình hệ thống tối thiểu như sau:

  • Dung lượng HĐH: ít nhất 2GB.
  • Ổ đĩa trống: Ít nhất 6GB.
  • Bộ xử lý: 2GHZ, 2 lõi, tương thích x-64.
  • File system: XFS hoặc EXT4.

Bên cạnh đó, trước khi tiến hành cài đặt SQL Server trên hệ điều hành Linux, bạn cần xem qua các câu lệnh trong Linux để quá trình thực hiện thao tác lệnh diễn ra suôn sẻ.

2 phiên bản cài đặt SQL Server phổ biến dễ sử dụng

Tên repositoryMô tảGhi chú
mssql-server-2019Repo bản cập nhật CU (cumulative update) SQL Server 2019Chứa bản phát hành cơ bản của SQL (RTM), có chứa lỗi và các giải pháp khắc phục.
mssql-server-2019-gdrRepo các bản cập nhật quan trọng của SQL Server 2019Chứa bản phát hành cơ bản kèm theo các cập nhật quan trọng.
Cài đặt SQL Server trên Linux

Phiên bản SQL Server dành cho Linux luôn có sẵn trên các repository Microsoft, trong đó có cả phiên bản 2017 và 2019. Các repo này hỗ trợ engine cơ sở dữ liệu và các gói SEL Server liên quan. Hiện tại SQL Server dành cho Linux đã phát hành bản 2022 và đây sẽ là phiên bản được sử dụng trong bài hướng dẫn này.

Lưu ý: Bạn có thể cập nhật SQL Server Linux GDR lên CU, nhưng không thể quay về bản GDR từ CU.

Ví dụ 1: Cài đặt SQL Server trên Ubuntu

Bây giờ bạn sẽ bắt đầu các bước cài đặt SQL Server 2022. Hiện tại SQL Server trên Linux chỉ hỗ trợ cài đặt qua giao diện command-line. Trước khi bắt đầu, cần chú ý rằng Ubuntu 22.04 chỉ hỗ trợ SQL Server 2022 CU 10 trở đi. Đầu tiên, mở terminal rồi thực hiện các bước sau:

Bước 1: Import key GPG của public repo.

Bạn hãy download public key, chuyển đổi từ ASCII qua định dạng GPG, ghi lên vị trí đã chỉ định theo lệnh curl:

curl -fsSL https://packages.microsoft.com/keys/microsoft.asc | sudo gpg --dearmor -o /usr/share/keyrings/microsoft-prod.gpg

Tuy nhiên trong một số tình huống bạn sẽ nhận được thông báo key không có sẵn. Bạn sẽ dùng lệnh sau để tiếp tục thực thi:

curl https://packages.microsoft.com/keys/microsoft.asc | sudo tee /etc/apt/trusted.gpg.d/microsoft.asc
Import key GPG
Import key GPG

Bước 2: Đăng ký repo SQL Server 2022 Linux Ubuntu và download thủ công.

Lưu ý: SQL Server 2022 là bản 16.x và tương thích tốt nhất với Ubuntu 22.04. Nếu bạn muốn tìm lại các bản cũ 14.x (2017) hay 15.x (2019), cách làm sẽ có sự thay đổi so với hiện tại.

Bây giờ bạn cần thêm một repo APT cho SQL Server 2022 Linux trên Ubuntu 22.04 bằng lệnh sudo với tuỳ chọn add-apt:

curl -fsSL https://packages.microsoft.com/config/ubuntu/22.04/mssql-server-2022.list | sudo tee /etc/apt/sources.list.d/mssql-server-2022.list

Bạn có thể sử dụng lệnh cat để kiểm tra xem repo đã được cài đặt chưa bằng cách mở file /etc/apt/sources.list:

cat /etc/apt/sources.list

Bước 3: Cập nhật hệ thống.

sudo apt-get update
Cập nhật lại hệ thống
Cập nhật lại hệ thống

Bước 4: Tải và cài đặt SQL Server Linux.

Bây giờ bạn có thể chạy lệnh curl để download gói cài đặt SQL Server từ repo Microsoft (kích thước khoảng gần 300MB tại thời điểm bài viết):

curl -fsSL https://packages.microsoft.com/config/ubuntu/22.04/mssql-server-2022.list | sudo tee /etc/apt/sources.list.d/mssql-server-2022.list
Download file cài đặt SQL Server
Download file cài đặt SQL Server

Tiếp theo bạn chạy lệnh sau để cài đặt.

sudo apt-get install -y mssql-server
Tiến hành cài đặt SQL Server lên Linux
Tiến hành cài đặt SQL Server lên Linux

Bước 5: Cấu hình SQL Server trên Linux

Sau khi cài thành công bạn chuyển sang bước thiết lập cấu hình cho SQL Server.

sudo /opt/mssql/bin/mssql-conf setup
Cấu hình SQL Server trên Linux
Cấu hình SQL Server trên Linux

Ở phần chọn phiên bản, bạn có thể tham khảo bảng dưới đây:

Phiên bảnMô tả
1Evaluation (miễn phí, không có bản quyền sản xuất, giới hạn sử dụng 180 ngày).
2Developer (miễn phí, không có bản quyền sản xuất).
3Express (miễn phí).
4Web (trả phí).
5Standard (trả phí).
6Enterprise (trả phí) – CPU bị giới hạn 20 lõi vật lý hoặc 40 siêu phân luồng.
7Enterprise Core (trả phí) – Lõi CPU bị giới hạn bởi hệ điều hành.
8Nếu đã có sẵn key kích hoạt sản phẩm.
9Bản tiêu chuẩn được mua thông qua Azure
10Bản Core Enterprise được mua thông qua Azure
Các phiên bản SQL Server

Sau khi chọn xong phiên bản, nhập Yes để chấp nhận các điều khoản sử dụng.

Đồng ý với các điều khoản
Đồng ý với các điều khoản

Ở các phiên bản trước, trong các bước thiết lập sẽ có thêm tùy chọn về ngôn ngữ sử dụng, theo hiện tại cụ thể là bản 16.x này, ngôn ngữ mặc định sẽ là English.

Tiếp theo bạn cần nhập mật khẩu SA (SQL Server administrator) với tối thiểu 8 ký tự, bao gồm chữ hoa và chữ thường, số và/hoặc ký hiệu không phải chữ và số.

Đặt mật khẩu SA
Đặt mật khẩu SA

Bây giờ có thể kiểm tra trạng thái của SQL Services bằng lệnh systemctl:

systemctl status mssql-server --no-pager

Nếu kết quả có dạng như dưới đây thì bạn đã hoàn tất việc cấu hình SQL Server trên Linux Ubuntu 22.04 và đã sẵn sàng sử dụng.

Kiểm tra trạng thái service SQL Server
Kiểm tra trạng thái service SQL Server

Trường hợp: Cài đặt các công cụ command-line cho SQL Server:

Để kết nối được với SQL Server trên Linux, có thể cài đặt các công cụ dưới đây:

  1. SQLCMD
  2. Azure Data Studio
  3. SQL Server Management Studio (SSMS)

Với SQLCMD và Azure Data Studio đều có thể cài đặt trực tiếp trên Linux, nếu bạn muốn sử dụng SSMS thì bạn cần cài đặt trên Windows rồi kết nối từ xa đến Linux SQL:

Bước 1: Cài đặt CURL và import public key GPG:

sudo apt install curl 
curl https://packages.microsoft.com/keys/microsoft.asc | sudo tee /etc/apt/trusted.gpg.d/microsoft.asc

Bước 2: Đăng ký repo Microsoft Ubuntu:

curl https://packages.microsoft.com/config/ubuntu/22.04/prod.list | sudo tee /etc/apt/sources.list.d/mssql-release.list
Đăng ký repo Microsoft Ubuntu
Đăng ký repo Microsoft Ubuntu

Nếu bạn muốn thực hiện trên các phiên bản Ubuntu cũ cũng như SQL Server cũ, hãy truy cập trang tài liệu của chính Microsoft để tìm hiểu thêm về cú pháp lệnh.

Bước 3: Cập nhật danh sách nguồn repo rồi cài đặt mssql-tools:

sudo apt-get update
sudo apt-get install mssql-tools18 unixodbc-dev
Cài đặt mssql-tools
Cài đặt mssql-tools

Ngoài nếu bạn muốn cập nhật các phiên bản mới nhất của mssql-tools cần nhập 2 lệnh dưới đây:

sudo apt-get update  
sudo apt-get install mssql-tools18

Sau khi quá trình cài đặt tool hoàn tất, bạn sẽ được chuyển sang phần cấu hình package msodbcsql18. Bây giờ bạn chọn Yes để tiếp tục.

Chọn "Yes" để hoàn thành các bước tiếp theo
Chọn “Yes” để hoàn thành các bước tiếp theo

Bạn tiếp tục chọn Yes để chấp nhận các điều khoản sử dụng:

Đồng ý với các điều khoản về bản quyền
Đồng ý với các điều khoản về bản quyền

Bước 4: Thêm thư mục /opt/mssql-tools18/bin/ vào biến môi trường PATH trong shell bash.

Để có thể truy cập sqlcmd và bcp từ shell bash cho các login session,bạn cũng có thể sửa đổi biến PATH trong file ~/.bashrc như sau:

echo 'export PATH="$PATH:/opt/mssql-tools18/bin"' >> ~/.bash_profile
source ~/.bash_profile
Thiết lập cho các session có login
Thiết lập cho các session có login

Với tình huống để có thể truy cập sqlcmdbcp từ shell bash cho các session không cần đăng nhập, bạn hãy sửa đổi PATH trong tệp ~/.bashrc bằng lệnh sau:

echo 'export PATH="$PATH:/opt/mssql-tools18/bin"' >> ~/.bashrc
source ~/.bashrc
Thiết lập cho các session không cần login
Thiết lập cho các session không cần login

Kết nối đến SQL Server “localhost”:

Nhập lệnh SQLCMD sau để kết nối đến SQL Server:

sqlcmd -S localhost -U sa -P '<YourPassword>'

Bạn sẽ nhập mật khẩu SA để kết nối đến server SQL Server local. Sau khi kết nối thành công thì màn hình sẽ hiển thị dấu nhắc (prefix) 1> (đánh số dòng lệnh). Tiếp theo bạn thực thi lệnh SELECT @@VERSION để kiểm tra phiên bản của SQL Server:

Nhập mật khẩu SA để kết nối đến server SQL Server local
Nhập mật khẩu SA để kết nối đến server SQL Server local

Nếu sau này bạn quyết định sử dụng kết nối remote, bạn sẽ chỉ định tên máy hoặc địa chỉ IP cho tham số -S và đảm bảo rằng port 1433 phải được mở trên firewall hệ thống.

Tạo Database mới:

Bạn hãy gõ lệnh của Transact-SQL để tạo một database mới:

CREATE DATABASE "ten_database";

Nếu bạn muốn xem danh sách database thì hãy chạy lệnh T-SQL dưới đây. Lệnh này trả về danh sách chủ cơ sở dữ liệu hệ thống, tempdb, model và msdb có sẵn trong mỗi phiên bản SQL Server.

SELECT Name from sys.databases;
Chạy lệnh T-SQL để xem danh sách database
Chạy lệnh T-SQL để xem danh sách database

Ví dụ 2: Cài đặt SQL Server trên Arch Linux

Trước tiên, tạo vị trí lưu repo AUR rồi clone về máy:

mkdir ~/aur
cd ~/aur
git clone https://aur.archlinux.org/mssql-server.git
git clone https://aur.archlinux.org/msodbcsql.git
git clone https://aur.archlinux.org/mssql-tools.git

Trong đó:

  • mssql-server : File cài đặt MS SQL Server chính
  • msodbcsql: Dùng để kết nối đến MS SQL Server
  • mssql-tools: Các công cụ command line để giao tiếp với SQL Server.

Sau khi clone xong, bạn cần xây dựng các gói để cài đặt bằng lệnh makepkg:

cd ~/aur/mssql-server
makepkg -sirc
cd ~/aur/msodbcsql
makepkg -sirc
cd ~/aur/mssql-tools
mkpkg -sirc

Lệnh makepkg cung cấp một số tùy chọn sau:

  • -s: Cài đặt mọi dependency bị thiếu
  • -i: Cài đặt package sau khi đã xây dựng xong.
  • -r: Xóa mọi dependecy chỉ cần trong quá trình xây dựng.
  • -c: Xóa các file hoặc thư mục thừa sau khi xây dựng xong.

Bây giờ dịch vụ mssql-server đã được cài đặt xong và tự động khởi chạy. Bạncó thể kiểm tra bằng lệnh sau:

systemctl status mssql-server.service

Output:

Các thông tin Output
Các thông tin Output

Nếu lệnh trả về trạng thái inactive (dead) thì hãy thử khởi động lại dịch vụ rồi cho chạy tự động:

systemctl enable --now mssql-server.service

Sau khi hoàn tất, bạn có thể chạy công cụ setup cho SQL Server:

/opt/mssql/bin/mssql-conf setup

Tương tự như quá trình cài đặt SQL Server trên Ubuntu 22.04, bạn cũng thiết lập mật khẩu admin và chọn ngôn ngữ để sử dụng.

Nếu muốn cài đặt Azure Data Studio để giao tiếp với SQL Server, có thể clone repo AUR về như sau:

cd ~/aur
git clone https://aur.archlinux.org/azuredatastudio-bin.git
cd ~/aur/azuredatastudio-bin
makepkg -sirc

Ví dụ 3: Cài đặt, kết nối trên CentOS 7 và Red Hat (RHEL)

Tiếp theo là các bước cài đặt SQL Server cho CentOS (ưu tiên CentOS 7 với khả năng tương thích với phiên bản SQL Server cần cài đặo) và Red Hat:

Bước 1: Thêm repo SQL Server:

sudo yum update -y
sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/<strong>[version]</strong>/mssql-server-2019.repo

Trong đó [version] là phiên bản CentOS muốn cài đặt.

Thêm repo SQL Server
Thêm repo SQL Server

Bước 2: Cài đặt SQL Server

sudo yum install -y mssql-server

Quá trình này sẽ phân giải các dependency trước khi download và cài đặt những gói cần thiết.

Cài đặt SQL Server
Cài đặt SQL Server

Bước 3: Cấu hình SQL Server:

Khởi động công cụ cấu hình SQL Server:

sudo /opt/mssql/bin/mssql-conf setup

Sau đó chọn phiên bản, thiết lập mật khẩu admin như các bước cài đặt trên Ubuntu hay Arch Linux.

Bây giờ bạn có thể xác thực xem đã cài đặt xong chưa bằng lệnh mssql:

systemctl status mssql-server
Cấu hình SQL Server
Cấu hình SQL Server

Bước 4: Cài đặt SQL Server Command Line:

Trước tiên, thêm repo Red Hat cài đặt cho phép công cụ command-line cho SQL Server:

sudo curl -o /etc/yum.repos.d/msprod.repo https://packages.microsoft.com/config/rhel/7/prod.repo

Cài đặt:

sudo yum install -y mssql-tools unixODBC-devel

Nhập Yes để đồng ý các điều khoản.

Bây giờ thêm /opt/mssql-tools/bin/ vào biến môi trường PATH vào tập lệnh để chạy tập lệnh Bash như sau:

echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
source ~/.bashrc

Khởi động công cụ command-line:

sqlcmd -S localhost -U SA

Cuối cùng là nhập mật khẩu admin để vào server.

Nhập mật khẩu admin để vào server
Nhập mật khẩu admin để vào server

2 bước kết nối, sử dụng SQL Server trên Linux bằng SQL Server Management Studio

  • Bước 1: Thiết lập, tạo mới cơ sở dữ liệu

Các bước sau đây tạo cơ sở dữ liệu mới có username theo dạng yourname_db (yourname là username bạn muốn đặt)

CREATE DATABASE yourname_db;

Ở cú pháp tiếp theo, hãy nhập một truy vấn để trả về tên của tất cả các cơ sở dữ liệu trên server:

SELECT Name from sys.databases;

Nếu như cả 2 lệnh trước đó không được thực thi. Bạn cần phải gõ GO vào một dòng mới để thực hiện các lệnh trước

GO
  • Bước 2: Kết nối, sử dụng SQL Server trên Linux với SQL Server Management Studio

Bây giờ, bạn cần sử dụng SQL Authentication để kết nối SQL Server trên Linux,. Bằng việc kết nối từ xa, bạn sẽ cần mở port SQL Server (mặc định là port 1433 qua tcp) trên Firewall.

Trường hợp bạn thiết lập firewall (tường lửa) bằng IPtables:

iptables -A INPUT -p tcp -m tcp --dport 1433 -j ACCEPT

Hoặc bạn thiết lập firewall (tường lửa) bằng FirewallD:

sudo firewall-cmd --zone=public --add-port=1433/tcp --permanent

sudo firewall-cmd --reload

Nhập thông tin tài khoản database để kết nối với SQL Server Management Studio: Server name, username (như cách thiết lập bên trên)

Lưu ý: Server Name là địa chỉ IP của SQL Server Linux

Kết nối, sử dụng SQL Server trên Linux với SQL Server Management Studio
Kết nối, sử dụng SQL Server trên Linux với SQL Server Management Studio
Kết nối thành công với SQL Server Management Studio
Kết nối thành công với SQL Server Management Studio

Sau khi kết nối thành công các bạn có thể backup/import database theo nhu cầu

Lưu ý: Khi restore bạn cần phải upload file database .bak lên SQL Server Linux tại đường dẫn /var/opt/mssql/data/

backup/import database theo nhu cầu
Thực hiện backup/import database theo nhu cầu
Thực hiện backup/import database thành công
Thực hiện backup/import database thành công
Đường dẫn backup database
Đường dẫn backup database

Câu hỏi thường gặp

Có thể sử dụng các công cụ quản lý cơ sở dữ liệu đồ họa để kết nối đến SQL Server từ Linux không?

Có thể. Việc sử dụng công cụ quản lý CSDL đồ họa đem đến một số lợi ích nhất định trong quá trình sử dụng như giao diện trực quan gần gũi; tăng năng suất; tính năng hỗ trợ đa dạng,…

Có thể sử dụng các công cụ đồng bộ hóa dữ liệu để đồng bộ hóa dữ liệu giữa SQL Server trên Linux và các hệ thống khác không?

Có thể.

Lời kết

Bài viết này đã hướng dẫn chi tiết 3 cách cài đặt và sử dụng SQL Server trên các bản phân phối Ubuntu, Arch và Red Hat của Linux. Nếu có bất kỳ vấn đề nào trong quá trình cài đặt, hãy để lại ở phần comment bên dưới để được Vietnix hỗ trợ nhanh nhất!

THEO DÕI VÀ CẬP NHẬT CHỦ ĐỀ BẠN QUAN TÂM

Đăng ký ngay để nhận những thông tin mới nhất từ blog của chúng tôi. Đừng bỏ lỡ cơ hội truy cập kiến thức và tin tức hàng ngày

Chọn chủ đề :

Hưng Nguyễn

Co-Founder
tại

Kết nối với mình qua

Kết nối với mình qua

Theo dõi
Thông báo của
guest
0 Comments
Phản hồi nội tuyến
Xem tất cả bình luận

Tăng tốc độ website - Nâng tầm giá trị thương hiệu

Banner group
Tăng tốc tải trang

95 điểm

Nâng cao trải nghiệm người dùng

Tăng 8% tỷ lệ chuyển đổi

Thúc đẩy SEO, Google Ads hiệu quả

Tăng tốc ngay

SẢN PHẨM NỔI BẬT

MAXSPEED HOSTING

TĂNG TỐC WEBSITE TOÀN DIỆN

CÔNG NGHỆ ĐỘC QUYỀN

PHẦN CỨNG MẠNH MẼ

HỖ TRỢ 24/7

ĐĂNG KÝ NGAY
Pattern

7 NGÀY DÙNG THỬ HOSTING

NẮM BẮT CƠ HỘI, THÀNH CÔNG DẪN LỐI

Cùng trải nghiệm dịch vụ hosting tốc độ cao được hơn 100,000 khách hàng sử dụng

Icon
ĐĂNG KÝ NHẬN TÀI LIỆU THÀNH CÔNG
Cảm ơn bạn đã đăng ký nhận tài liệu mới nhất từ Vietnix!
ĐÓNG

ĐĂNG KÝ DÙNG THỬ HOSTING

Asset

7 NGÀY MIỄN PHÍ

Asset 1

ĐĂNG KÝ DÙNG THỬ HOSTING

Asset

7 NGÀY MIỄN PHÍ

Asset 1
Icon
XÁC NHẬN ĐĂNG KÝ DÙNG THỬ THÀNH CÔNG
Cảm ơn bạn đã đăng ký thông tin thành công. Đội ngũ CSKH sẽ liên hệ trực tiếp để kích hoạt dịch vụ cho bạn nhanh nhất!
ĐÓNG