14

Install Microsoft SQL Server 2019 on Ubuntu 20.04/18.04/16.04 LTS

 3 years ago
source link: https://computingforgeeks.com/how-to-install-ms-sql-on-ubuntu/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client
Install Microsoft SQL Server 2019 on Ubuntu 20.04/18.04/16.04 LTS
Search

MS SQL is a relational database system by Microsoft that was open-sourced in 2016. In this guide, I’ll take you through the steps to install MS SQL server 2019 on Ubuntu 20.04/18.04/16.04 Linux system. In addition, We will look at how to create a database, add users, and lastly how to do daily backups for the databases.

Below are the minimum system requirements to run MS SQL on Ubuntu 20.04/18.04/16.04 server:

  • Minimum memory of 2 GB
  • CPU processor with a minimum speed of 1.4 GHz. But the recommended is >= 2 GHz
  • SQL Server requires a minimum of 10 GB of available hard-disk space

Install MS SQL Server on Ubuntu 20.04/18.04/16.04 LTS

Follow the steps below to install and configure MS SQL database server on Ubuntu 20.04/18.04/16.04:

Step 1: Update Ubuntu System

As usual, we ensure all system packages are updated before adding any new packages:

sudo apt-get update
sudo apt-get -y upgrade

If you have kernel updates done, ensure a reboot is done for the system to boot into a new kernel.

sudo reboot

Step 2: Import the public repository GPG keys:

Add GPG key for the system to trust MS SQL apt repository packages:

sudo wget -qO- https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -

Step 3: Add Microsoft SQL Server 2019 Ubuntu repository:

Add Microsoft SQL Server 2019 APT repository to your Ubuntu 20.04/18.04/16.04 system.

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)"

Step 4: Install MS SQL Server 2019 on Ubuntu 20.04/18.04/16.04 LTS

Now run the following commands to install SQL Server:

sudo apt update
sudo apt install mssql-server

Press the y key to start the installation of Microsoft SQL Server 2019 on 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

The output is similar to below:

....
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) ...

Step 5: Initialize MS SQL Server 2019 on Ubuntu 20.04/18.04/16.04

When the installation is done, proceed to set root user password by running initial setup  /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.

The MS SQL service should be started.

$ 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]

Step 5: Install MS SQL tools and unixODBC plugin

Now install Install MS SQL tools and unixODBC plugin:

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 > /etc/apt/sources.list.d/mssql-release.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 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 sudo ACCEPT_EULA=Y apt install mssql-tools unixodbc-dev

Step 5: Configure PATH for MS SQL binaries

Add /opt/mssql-tools/bin/ to your PATH environment variable in a bash shell.

To make sqlcmd/bcp accessible from the bash shell for login sessions, modify your PATH in the ~/.bash_profile file with the following command:

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

To make sqlcmd/bcp accessible from the bash shell for interactive/non-login sessions, modify the PATH in the ~/.bashrc file with the following command:

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

Connect to MS SQL console:

# sqlcmd -S 127.0.0.1 -U SA 
Password: 
1> create database testDB;

Get a list database:

1> select name from sys.databases;
2> go
name                                                                                                                            
--------------------------------------------------------------------------------------------------------------------------------
master                                                                                                                          
tempdb                                                                                                                          
model                                                                                                                           
msdb                                                                                                                            
testDB                                                                                                                          

(5 rows affected)

Installation on CentOS / Fedora:

Also check:

How To Configure MS SQL Server to Listen on a given port

Install Latest Packer on Linux / FreeBSD / macOS / Windows

Install Terraform on Windows 10 / Windows Server 2019

How to install Applications from Windows command line

How to install OpenSSL on Windows Server 2019


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK