Skip to content

Latest commit

 

History

History
408 lines (263 loc) · 20 KB

File metadata and controls

408 lines (263 loc) · 20 KB
title Ubuntu: Install SQL Server on Linux
description This quickstart shows how to install SQL Server 2017 and later versions on Ubuntu and then create and query a database with sqlcmd.
author rwestMSFT
ms.author randolphwest
ms.date 11/18/2025
ms.service sql
ms.subservice linux
ms.topic quickstart
ms.custom
intro-installation
linux-related-content
ignite-2025

Quickstart: Install SQL Server and create a database on Ubuntu

[!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

::: moniker range=">=sql-server-linux-ver17 || >=sql-server-ver17"

In this quickstart, you install [!INCLUDE sssql25-md] on Ubuntu 22.04. Then you can connect with sqlcmd to create your first database and run queries.

Note

Ubuntu 24.04 is supported in preview for [!INCLUDE sssql25-md]. Currently, only the 180-day Enterprise Evaluation edition is available.

For more information on supported platforms, see Release notes for SQL Server 2025 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.

Caution

[!INCLUDE password-complexity]

Prerequisites

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

If you previously installed a preview version 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.

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

If you previously installed a preview version 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.

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

If you previously installed a preview version 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.

::: moniker-end

::: moniker range=">=sql-server-linux-ver17 || >=sql-server-ver17"

You must have an Ubuntu 22.04 machine with at least 2 GB of memory.

To install Ubuntu 22.04 on your own machine, go to https://releases.ubuntu.com/22.04/. You can also create Ubuntu virtual machines in Azure. See Tutorial: Create and Manage Linux VMs with the Azure CLI.

If you previously installed a preview version 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 2025 on Linux.

::: moniker-end

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.

Install SQL Server

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"

  1. Import the public repository GPG keys:

    curl https://packages.microsoft.com/keys/microsoft.asc | sudo tee /etc/apt/trusted.gpg.d/microsoft.asc
  2. 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), [[!INCLUDE sssql22-md]](quickstart-install-connect-ubuntu.md?view=sql-server-linux-ver16&preserve-view=true#install), or [[!INCLUDE sssql25-md]](quickstart-install-connect-ubuntu.md?view=sql-server-linux-ver17&preserve-view=true#install) versions of this article.

  3. Run the following commands to install [!INCLUDE ssnoversion-md]:

    sudo apt-get update
    sudo apt-get install -y mssql-server
  4. After the package installation finishes, run mssql-conf setup and follow the prompts to set the sa 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]

  5. Once the configuration is done, verify that the service is running:

    systemctl status mssql-server --no-pager
  6. 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"

  1. Import the public repository GPG keys:

    curl https://packages.microsoft.com/keys/microsoft.asc | sudo tee /etc/apt/trusted.gpg.d/microsoft.asc
  2. 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), [[!INCLUDE sssql22-md]](quickstart-install-connect-ubuntu.md?view=sql-server-linux-ver16&preserve-view=true#install), or [[!INCLUDE sssql25-md]](quickstart-install-connect-ubuntu.md?view=sql-server-linux-ver17&preserve-view=true#install) versions of this article.

  3. Run the following commands to install [!INCLUDE ssnoversion-md]:

    sudo apt-get update
    sudo apt-get install -y mssql-server
  4. After the package installation finishes, run mssql-conf setup and follow the prompts to set the sa 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]

  5. Once the configuration is done, verify that the service is running:

    systemctl status mssql-server --no-pager
  6. 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"

  1. Import the public repository GPG keys:

    curl https://packages.microsoft.com/keys/microsoft.asc | sudo tee /etc/apt/trusted.gpg.d/microsoft.asc
  2. 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), [[!INCLUDE sssql19-md]](quickstart-install-connect-ubuntu.md?view=sql-server-linux-ver15&preserve-view=true#install), or [[!INCLUDE sssql25-md]](quickstart-install-connect-ubuntu.md?view=sql-server-linux-ver17&preserve-view=true#install) versions of this article.

  3. Run the following commands to install [!INCLUDE ssnoversion-md]:

    sudo apt-get update
    sudo apt-get install -y mssql-server
  4. After the package installation finishes, run mssql-conf setup and follow the prompts to set the sa 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]

  5. Once the configuration is done, verify that the service is running:

    systemctl status mssql-server --no-pager
  6. If you plan to connect remotely, you might also need to open the [!INCLUDE ssnoversion-md] TCP port (default 1433) on your firewall.

  1. 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
  2. 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), [[!INCLUDE sssql19-md]](quickstart-install-connect-ubuntu.md?view=sql-server-linux-ver15&preserve-view=true#install), or [[!INCLUDE sssql25-md]](quickstart-install-connect-ubuntu.md?view=sql-server-linux-ver17&preserve-view=true#install) versions of this article.

  3. Run the following commands to install [!INCLUDE ssnoversion-md]:

    sudo apt-get update
    sudo apt-get install -y mssql-server
  4. After the package installation finishes, run mssql-conf setup and follow the prompts to set the sa 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]

  5. Once the configuration is done, verify that the service is running:

    systemctl status mssql-server --no-pager
  6. 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-ver17 || >=sql-server-ver17"

  1. 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
  2. Manually download and register the [!INCLUDE ssnoversion-md] Ubuntu repository:

    curl -fsSL https://packages.microsoft.com/config/ubuntu/22.04/mssql-server-2025.list | sudo tee /etc/apt/sources.list.d/mssql-server-2025.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), [[!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.

  3. Run the following commands to install [!INCLUDE ssnoversion-md]:

    sudo apt-get update
    sudo apt-get install -y mssql-server
  4. After the package installation finishes, run mssql-conf setup and follow the prompts to set the sa 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]

  5. Once the configuration is done, verify that the service is running:

    systemctl status mssql-server --no-pager
  6. If you plan to connect remotely, you might also need to open the [!INCLUDE ssnoversion-md] TCP port (default 1433) on your firewall.

At this point, [!INCLUDE ssnoversion-md] is running on your Ubuntu machine and is ready to use.

  1. 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
  2. Manually download and register the [!INCLUDE ssnoversion-md] Ubuntu repository:

    curl -fsSL https://packages.microsoft.com/config/ubuntu/24.04/mssql-server-preview.list | sudo tee /etc/apt/sources.list.d/mssql-server-preview.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), [[!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.

  3. Run the following commands to install [!INCLUDE ssnoversion-md]:

    sudo apt-get update
    sudo apt-get install -y mssql-server
  4. After the package installation finishes, run mssql-conf setup and follow the prompts to set the sa 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]

  5. Once the configuration is done, verify that the service is running:

    systemctl status mssql-server --no-pager
  6. If you plan to connect remotely, you might also need to open the [!INCLUDE ssnoversion-md] TCP port (default 1433) on your firewall.

At this point, [!INCLUDE ssnoversion-md] is running on your Ubuntu machine and is ready to use.


::: moniker-end

Disable the SA account as a best practice

[!INCLUDE connect-with-sa]

Install the SQL Server command-line tools

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]