MS SQL là một hệ thống cơ sở dữ liệu quan hệ của Microsoft đã có mã nguồn mở vào năm 2016. Trong hướng dẫn này, tôi sẽ cài đặt MS SQL server 2019 trên hệ thống Linux Ubuntu 20.04/18.04/16.04.
Dưới đây là các yêu cầu hệ thống tối thiểu để chạy MS SQL trên máy chủ Ubuntu 20.04/18.04/16.04:- Bộ nhớ tối thiểu 2 GB
- Bộ xử lý CPU có tốc độ tối thiểu 1,4 GHz. Nhưng khuyến nghị là> = 2 GHz
- SQL Server yêu cầu tối thiểu 10 GB dung lượng đĩa cứng khả dụng
Bước 1: Cập nhật hệ thống Ubuntu
Như thường lệ, chúng tôi đảm bảo tất cả các gói hệ thống đều được cập nhật trước khi thêm bất kỳ gói mới nào:
sudo apt-get update
sudo apt-get -y upgrade
Nếu bạn đã thực hiện cập nhật kernel, hãy đảm bảo rằng quá trình khởi động lại được thực hiện để hệ thống khởi động vào kernel mới.
sudo reboot
Bước 2: Nhập các khóa GPG:
Thêm khóa GPG để hệ thống tin cậy repository MS SQL apt:
sudo wget -qO- https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
Bước 3: Thêm repository Ubuntu của Microsoft SQL Server 2019:
Thêm repository APT của Microsoft SQL Server 2019 vào hệ thống Ubuntu 20.04/18.04/16.04 của bạn.
Ubuntu 20.04
sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/20.04/mssql-server-2019.list)"
Ubuntu 18.04
sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/18.04/mssql-server-2019.list)"
Ubuntu 16.04
sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/16.04/mssql-server-2019.list)"
Bước 4: Cài đặt MS SQL Server 2019 trên Ubuntu 20.04/18.04/16.04 LTS
Bây giờ hãy chạy các lệnh sau để cài đặt SQL Server:
sudo apt update
sudo apt install mssql-server
Nhấn phím y để bắt đầu cài đặt Microsoft SQL Server 2019 trên Ubuntu 20.04/18.04/16.04.
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
gcc-10-base gdb gdbserver libatomic1 libbabeltrace1 libc++1 libc++1-10 libc++abi1-10 libc6-dbg libcc1-0 libdw1 libgcc-s1 libsasl2-modules-gssapi-mit
libsss-nss-idmap0 libstdc++6
Suggested packages:
gdb-doc clang
The following NEW packages will be installed:
gdb gdbserver libatomic1 libbabeltrace1 libc++1 libc++1-10 libc++abi1-10 libc6-dbg libcc1-0 libdw1 libsasl2-modules-gssapi-mit libsss-nss-idmap0 mssql-server
The following packages will be upgraded:
gcc-10-base libgcc-s1 libstdc++6
3 upgraded, 13 newly installed, 0 to remove and 89 not upgraded.
Need to get 267 MB of archives.
After this operation, 1277 MB of additional disk space will be used.
Do you want to continue? [Y/n] y
Output tương tự như bên dưới:
....
Selecting previously unselected package libsss-nss-idmap0.
Preparing to unpack .../11-libsss-nss-idmap0_2.2.3-3ubuntu0.6_amd64.deb ...
Unpacking libsss-nss-idmap0 (2.2.3-3ubuntu0.6) ...
Selecting previously unselected package mssql-server.
Preparing to unpack .../12-mssql-server_15.0.4153.1-6_amd64.deb ...
Unpacking mssql-server (15.0.4153.1-6) ...
Setting up libdw1:amd64 (0.176-1.1build1) ...
Setting up libc6-dbg:amd64 (2.31-0ubuntu9.2) ...
Setting up libatomic1:amd64 (10.3.0-1ubuntu1~20.04) ...
Setting up libbabeltrace1:amd64 (1.5.8-1build1) ...
Setting up libc++abi1-10:amd64 (1:10.0.0-4ubuntu1) ...
Setting up gdbserver (9.2-0ubuntu1~20.04) ...
Setting up libsss-nss-idmap0 (2.2.3-3ubuntu0.6) ...
Setting up libsasl2-modules-gssapi-mit:amd64 (2.1.27+dfsg-2) ...
Setting up libcc1-0:amd64 (10.3.0-1ubuntu1~20.04) ...
Setting up libc++1-10:amd64 (1:10.0.0-4ubuntu1) ...
Setting up gdb (9.2-0ubuntu1~20.04) ...
Setting up libc++1:amd64 (1:10.0-50~exp1) ...
Setting up mssql-server (15.0.4153.1-6) ...
+--------------------------------------------------------------+
Please run 'sudo /opt/mssql/bin/mssql-conf setup'
to complete the setup of Microsoft SQL Server
+--------------------------------------------------------------+
Processing triggers for man-db (2.9.1-1) ...
Processing triggers for libc-bin (2.31-0ubuntu9.2) ...
Bước 5: Khởi tạo MS SQL Server 2019 trên Ubuntu 20.04/18.04/16.04
Khi quá trình cài đặt hoàn tất, hãy tiến hành đặt mật khẩu người dùng bằng cách chạy thiết lập /opt/mssql/bin/mssql-conf setup
$ sudo /opt/mssql/bin/mssql-conf setup
Choose an edition of SQL Server:
1) Evaluation (free, no production use rights, 180-day limit)
2) Developer (free, no production use rights)
3) Express (free)
4) Web (PAID)
5) Standard (PAID)
6) Enterprise (PAID)
7) Enterprise Core (PAID)
8) I bought a license through a retail sales channel and have a product key to enter.
Details about editions can be found at
https://go.microsoft.com/fwlink/?LinkId=852748&clcid=0x409
Use of PAID editions of this software requires separate licensing through a
Microsoft Volume Licensing program.
By choosing a PAID edition, you are verifying that you have the appropriate
number of licenses in place to install and run this software.
Enter your edition(1-8): 2
The license terms for this product can be found in
/usr/share/doc/mssql-server or downloaded from:
https://go.microsoft.com/fwlink/?LinkId=855862&clcid=0x409
The privacy statement can be viewed at:
https://go.microsoft.com/fwlink/?LinkId=853010&clcid=0x409
Do you accept the license terms? [Yes/No]:Yes
Enter the SQL Server system administrator password: <SetStrongNewPassword>
Confirm the SQL Server system administrator password: <ConfirmStrongPassword>
Configuring SQL Server...
ForceFlush is enabled for this instance.
ForceFlush feature is enabled for log durability.
Created symlink /etc/systemd/system/multi-user.target.wants/mssql-server.service → /lib/systemd/system/mssql-server.service.
Setup has completed successfully. SQL Server is now starting.
Dịch vụ MS SQL sẽ được khởi động.
$ systemctl status mssql-server.service
● mssql-server.service - Microsoft SQL Server Database Engine
Loaded: loaded (/lib/systemd/system/mssql-server.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2020-05-05 21:08:00 CEST; 26s ago
Docs: https://docs.microsoft.com/en-us/sql/linux
Main PID: 3626 (sqlservr)
Tasks: 135
Memory: 592.1M
CGroup: /system.slice/mssql-server.service
├─3626 /opt/mssql/bin/sqlservr
└─3669 /opt/mssql/bin/sqlservr
May 05 21:08:05 ubuntu-4gb-hel1-1 sqlservr[3669]: [78B blob data]
May 05 21:08:05 ubuntu-4gb-hel1-1 sqlservr[3669]: [84B blob data]
May 05 21:08:05 ubuntu-4gb-hel1-1 sqlservr[3669]: [145B blob data]
May 05 21:08:05 ubuntu-4gb-hel1-1 sqlservr[3669]: [96B blob data]
May 05 21:08:05 ubuntu-4gb-hel1-1 sqlservr[3669]: [66B blob data]
May 05 21:08:06 ubuntu-4gb-hel1-1 sqlservr[3669]: [75B blob data]
May 05 21:08:06 ubuntu-4gb-hel1-1 sqlservr[3669]: [96B blob data]
May 05 21:08:06 ubuntu-4gb-hel1-1 sqlservr[3669]: [100B blob data]
May 05 21:08:06 ubuntu-4gb-hel1-1 sqlservr[3669]: [71B blob data]
May 05 21:08:06 ubuntu-4gb-hel1-1 sqlservr[3669]: [124B blob data]
Bước 6: Cài đặt các công cụ MS SQL và plugin unixODBC
Bây giờ cài đặt Cài đặt công cụ MS SQL và plugin unixODBC:
- Ubuntu 20.04:
curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
curl https://packages.microsoft.com/config/ubuntu/20.04/prod.list | sudo tee /etc/apt/sources.list.d/msprod.list
sudo apt update
sudo ACCEPT_EULA=Y apt install mssql-tools unixodbc-dev
- Ubuntu 18.04:
curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
curl https://packages.microsoft.com/config/ubuntu/18.04/prod.list | sudo tee /etc/apt/sources.list.d/msprod.list
sudo apt update
sudo ACCEPT_EULA=Y apt install mssql-tools unixodbc-dev
- Ubuntu 16.04:
curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list | sudo tee /etc/apt/sources.list.d/msprod.list
sudo apt update
sudo ACCEPT_EULA=Y apt install mssql-tools unixodbc-dev
Bước 7: Cấu hình PATH cho MS SQL
Thêm /opt/mssql-tools/bin/ vào biến môi trường PATH trong bash shell.
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile
source ~/.bash_profile
Để làm cho sqlcmd/bcp có thể truy cập được từ bash shell cho các phiên đăng nhập, hãy sửa đổi PATH trong tệp ~/.bash_profile bằng lệnh sau:
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
source ~/.bashrc
Kết nối với bảng điều khiển MS SQL:
# sqlcmd -S 127.0.0.1 -U SA
Password:
1> create database testDB;
Lấy danh sách cơ sở dữ liệu:
1> select name from sys.databases;
2> go
name
--------------------------------------------------------------------------------------------------------------------------------
master
tempdb
model
msdb
testDB
(5 rows affected)