title | description | author | ms.author | ms.date | ms.service | ms.subservice | ms.topic | ms.custom | ||
---|---|---|---|---|---|---|---|---|---|---|
Ubuntu: Install SQL Server on Linux |
This quickstart shows how to install SQL Server 2017 and later versions on Ubuntu and then create and query a database with sqlcmd. |
rwestMSFT |
randolphwest |
11/18/2024 |
sql |
linux |
quickstart |
|
[!INCLUDE SQL Server - Linux]
::: moniker range="=sql-server-linux-2017 || =sql-server-2017"
In this quickstart, you install [!INCLUDE sssql17-md] on Ubuntu 18.04. Then you can connect with sqlcmd to create your first database and run queries.
For more information on supported platforms, see Release notes for SQL Server 2017 on Linux.
::: moniker-end
::: moniker range="=sql-server-linux-ver15 || =sql-server-ver15"
In this quickstart, you install [!INCLUDE sssql19-md] on Ubuntu 20.04. Then you can connect with sqlcmd to create your first database and run queries.
For more information on supported platforms, see Release notes for SQL Server 2019 on Linux.
::: moniker-end
::: moniker range=">= sql-server-linux-ver16 || >= sql-server-ver16"
In this quickstart, you install [!INCLUDE sssql22-md] on Ubuntu 20.04 or 22.04. Then you can connect with sqlcmd to create your first database and run queries.
For more information on supported platforms, see Release notes for SQL Server 2022 on Linux.
::: moniker-end
Tip
This tutorial requires user input and an internet connection. If you're interested in the unattended or offline installation procedures, see Installation guidance for SQL Server on Linux.
If you choose to have a preinstalled SQL Server virtual machine (VM) on Ubuntu ready to run your production-based workload, then follow the best practices for creating the SQL Server VM.
::: moniker range="=sql-server-linux-ver15 || =sql-server-ver15"
You can create your VM based on one of the following two Azure Marketplace images:
When you use these images, you avoid the installation step, and can directly configure the instance by providing the SKU and the sa
password needed to get started with [!INCLUDE ssnoversion-md]. SQL Server Azure VMs deployed on Ubuntu Pro using the above Marketplace images, are fully supported by both Microsoft and Canonical.
You can configure SQL Server on Linux with mssql-conf, using the following command:
sudo /opt/mssql/bin/mssql-conf setup
::: moniker-end
::: moniker range="= sql-server-linux-ver16 || = sql-server-ver16"
You can create your VM based on the following Azure Marketplace image: Ubuntu 20.04.
When you use this image, you avoid the installation step, and can directly configure the instance by providing the SKU and the sa
password needed to get started with SQL Server. SQL Server Azure VMs deployed on Ubuntu Pro using the above Marketplace images, are fully supported by both Microsoft and Canonical.
You can configure SQL Server on Linux with mssql-conf, using the following command:
sudo /opt/mssql/bin/mssql-conf setup
::: moniker-end
Caution
[!INCLUDE password-complexity]
::: moniker range="=sql-server-linux-2017 || =sql-server-2017"
You must have an Ubuntu 18.04 machine with at least 2 GB of memory.
To install Ubuntu 18.04 on your own machine, go to https://releases.ubuntu.com/18.04/. You can also create Ubuntu virtual machines in Azure. See Tutorial: Create and Manage Linux VMs with the Azure CLI.
::: moniker-end
::: moniker range="=sql-server-linux-ver15 || =sql-server-ver15"
You must have an Ubuntu 20.04 machine with at least 2 GB of memory.
To install Ubuntu 20.04 on your own machine, go to https://releases.ubuntu.com/20.04/. You can also create Ubuntu virtual machines in Azure. See Tutorial: Create and Manage Linux VMs with the Azure CLI.
::: moniker-end
::: moniker range=">= sql-server-linux-ver16 || >= sql-server-ver16"
You must have an Ubuntu 20.04 machine with at least 2 GB of memory.
To install Ubuntu 20.04 on your own machine, go to https://releases.ubuntu.com/20.04/. You can also create Ubuntu virtual machines in Azure. See Tutorial: Create and Manage Linux VMs with the Azure CLI.
::: moniker-end
If you previously installed a Community Technology Preview (CTP) or Release Candidate (RC) of [!INCLUDE ssnoversion-md], you must first remove the old repository before following these steps. For more information, see Configure repositories for installing and upgrading SQL Server on Linux.
The Windows Subsystem for Linux isn't supported as an installation target for [!INCLUDE ssnoversion-md].
For other system requirements, see System requirements for SQL Server on Linux.
To configure [!INCLUDE ssnoversion-md] on Ubuntu, run the following commands in a terminal to install the mssql-server package.
::: moniker range="=sql-server-linux-2017 || =sql-server-2017"
-
Import the public repository GPG keys:
curl https://packages.microsoft.com/keys/microsoft.asc | sudo tee /etc/apt/trusted.gpg.d/microsoft.asc
-
Register the [!INCLUDE ssnoversion-md] Ubuntu repository:
sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/18.04/mssql-server-2017.list)"
[!TIP]
If you want to install a different version of [!INCLUDE ssnoversion-md], see the [[!INCLUDE sssql19-md]](quickstart-install-connect-ubuntu.md?view=sql-server-linux-ver15&preserve-view=true#install) or [[!INCLUDE sssql22-md]](quickstart-install-connect-ubuntu.md?view=sql-server-linux-ver16&preserve-view=true#install) versions of this article. -
Run the following commands to install [!INCLUDE ssnoversion-md]:
sudo apt-get update sudo apt-get install -y mssql-server
-
After the package installation finishes, run
mssql-conf setup
and follow the prompts to set thesa
password and choose your edition. As a reminder, the following [!INCLUDE ssnoversion-md] editions are freely licensed: Evaluation, Developer, and Express.sudo /opt/mssql/bin/mssql-conf setup
[!CAUTION]
[!INCLUDE password-complexity] -
Once the configuration is done, verify that the service is running:
systemctl status mssql-server --no-pager
-
If you plan to connect remotely, you might also need to open the [!INCLUDE ssnoversion-md] TCP port (default 1433) on your firewall.
::: moniker-end
::: moniker range="=sql-server-linux-ver15 || =sql-server-ver15"
-
Import the public repository GPG keys:
curl https://packages.microsoft.com/keys/microsoft.asc | sudo tee /etc/apt/trusted.gpg.d/microsoft.asc
-
Register the [!INCLUDE ssnoversion-md] Ubuntu repository:
sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/20.04/mssql-server-2019.list)"
[!TIP]
If you want to install a different version of [!INCLUDE ssnoversion-md], see the [[!INCLUDE sssql17-md]](quickstart-install-connect-ubuntu.md?view=sql-server-linux-2017&preserve-view=true#install) or [[!INCLUDE sssql22-md]](quickstart-install-connect-ubuntu.md?view=sql-server-linux-ver16&preserve-view=true#install) versions of this article. -
Run the following commands to install [!INCLUDE ssnoversion-md]:
sudo apt-get update sudo apt-get install -y mssql-server
-
After the package installation finishes, run
mssql-conf setup
and follow the prompts to set thesa
password and choose your edition. As a reminder, the following [!INCLUDE ssnoversion-md] editions are freely licensed: Evaluation, Developer, and Express.sudo /opt/mssql/bin/mssql-conf setup
[!CAUTION]
[!INCLUDE password-complexity] -
Once the configuration is done, verify that the service is running:
systemctl status mssql-server --no-pager
-
If you plan to connect remotely, you might also need to open the [!INCLUDE ssnoversion-md] TCP port (default 1433) on your firewall.
::: moniker-end
::: moniker range=">= sql-server-linux-ver16 || >= sql-server-ver16"
-
Import the public repository GPG keys:
curl https://packages.microsoft.com/keys/microsoft.asc | sudo tee /etc/apt/trusted.gpg.d/microsoft.asc
-
Register the [!INCLUDE ssnoversion-md] Ubuntu repository:
sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/20.04/mssql-server-2022.list)"
[!TIP]
If you want to install a different version of [!INCLUDE ssnoversion-md], see the [[!INCLUDE sssql17-md]](quickstart-install-connect-ubuntu.md?view=sql-server-linux-2017&preserve-view=true#install) or [[!INCLUDE sssql19-md]](quickstart-install-connect-ubuntu.md?view=sql-server-linux-ver15&preserve-view=true#install) versions of this article. -
Run the following commands to install [!INCLUDE ssnoversion-md]:
sudo apt-get update sudo apt-get install -y mssql-server
-
After the package installation finishes, run
mssql-conf setup
and follow the prompts to set thesa
password and choose your edition. As a reminder, the following [!INCLUDE ssnoversion-md] editions are freely licensed: Evaluation, Developer, and Express.sudo /opt/mssql/bin/mssql-conf setup
[!CAUTION]
[!INCLUDE password-complexity] -
Once the configuration is done, verify that the service is running:
systemctl status mssql-server --no-pager
-
If you plan to connect remotely, you might also need to open the [!INCLUDE ssnoversion-md] TCP port (default 1433) on your firewall.
-
Download the public key, convert from ASCII to GPG format, and write it to the required location:
curl -fsSL https://packages.microsoft.com/keys/microsoft.asc | sudo gpg --dearmor -o /usr/share/keyrings/microsoft-prod.gpg
If you receive a warning about the public key not being available, you can use the following command instead:
curl https://packages.microsoft.com/keys/microsoft.asc | sudo tee /etc/apt/trusted.gpg.d/microsoft.asc
-
Manually download and register the [!INCLUDE ssnoversion-md] Ubuntu repository:
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
[!TIP]
If you want to install a different version of [!INCLUDE ssnoversion-md], see the [[!INCLUDE sssql17-md]](quickstart-install-connect-ubuntu.md?view=sql-server-linux-2017&preserve-view=true#install) or [[!INCLUDE sssql19-md]](quickstart-install-connect-ubuntu.md?view=sql-server-linux-ver15&preserve-view=true#install) versions of this article. -
Run the following commands to install [!INCLUDE ssnoversion-md]:
sudo apt-get update sudo apt-get install -y mssql-server
-
After the package installation finishes, run
mssql-conf setup
and follow the prompts to set thesa
password and choose your edition. As a reminder, the following [!INCLUDE ssnoversion-md] editions are freely licensed: Evaluation, Developer, and Express.sudo /opt/mssql/bin/mssql-conf setup
[!CAUTION]
[!INCLUDE password-complexity] -
Once the configuration is done, verify that the service is running:
systemctl status mssql-server --no-pager
-
If you plan to connect remotely, you might also need to open the [!INCLUDE ssnoversion-md] TCP port (default 1433) on your firewall.
::: moniker-end
At this point, [!INCLUDE ssnoversion-md] is running on your Ubuntu machine and is ready to use.
[!INCLUDE connect-with-sa]
To create a database, you need to connect with a tool that can run Transact-SQL statements on [!INCLUDE ssnoversion-md]. The following steps install the [!INCLUDE ssnoversion-md] command-line tools: sqlcmd utility and bcp utility.
[!INCLUDE odbc-ubuntu]
[!INCLUDE Connect, create, and query data]