빠른 시작: SQL Server 설치 및 SUSE Linux Enterprise Server에 데이터베이스 만들기Quickstart: Install SQL Server and create a database on SUSE Linux Enterprise Server

적용 대상:Applies to: 예SQL ServerSQL Server(지원되는 모든 버전)yesSQL ServerSQL Server (all supported versions) - Linux적용 대상:Applies to: 예SQL ServerSQL Server(지원되는 모든 버전)yesSQL ServerSQL Server (all supported versions) - Linux

이 빠른 시작에서는 SLES(SUSE Linux Enterprise Server) v12 SP2에 SQL Server 2017 또는 SQL Server 2019를 설치합니다.In this quickstart, you install SQL Server 2017 or SQL Server 2019 on SUSE Linux Enterprise Server (SLES) v12 SP2. 그런 다음, sqlcmd를 통해 연결하여 첫 번째 데이터베이스를 만들고 쿼리를 실행합니다.You then connect with sqlcmd to create your first database and run queries.

이 빠른 시작에서는 SLES(SUSE Linux Enterprise Server) v12에 SQL Server 2019를 설치합니다.In this quickstart, you install SQL Server 2019 on SUSE Linux Enterprise Server (SLES) v12. 그런 다음, sqlcmd를 통해 연결하여 첫 번째 데이터베이스를 만들고 쿼리를 실행합니다.You then connect with sqlcmd to create your first database and run queries.

중요

SQL Server 2019는 SUSE Enterprise Linux Server v12 SP2, SP3, SP4 또는 SP5에서 지원됩니다.SQL Server 2019 is supported on SUSE Enterprise Linux Server v12 SP2, SP3, SP4 or SP5.

이 자습서를 사용하려면 사용자 입력과 인터넷 연결이 필요합니다.This tutorial requires user input and an internet connection. 무인 또는 오프라인 설치 절차에 관심이 있는 경우 SQL Server on Linux 설치 지침을 참조하세요.If you are interested in the unattended or offline installation procedures, see Installation guidance for SQL Server on Linux.

사전 요구 사항Prerequisites

최소 2GB의 메모리를 포함하는 SLES v12 SP2 머신이 있어야 합니다.You must have a SLES v12 SP2 machine with at least 2 GB of memory. 파일 시스템은 XFS 또는 EXT4여야 합니다.The file system must be XFS or EXT4. BTRFS 등의 다른 파일 시스템은 지원되지 않습니다.Other file systems, such as BTRFS, are unsupported.

최소 2GB의 메모리를 사용하는 SLES v12 SP2, SP3, SP4 또는 SP5 머신이 있어야 합니다.You must have a SLES v12 SP2, SP3, SP4 or SP5 machine with at least 2 GB of memory. 파일 시스템은 XFS 또는 EXT4여야 합니다.The file system must be XFS or EXT4. BTRFS 등의 다른 파일 시스템은 지원되지 않습니다.Other file systems, such as BTRFS, are unsupported.

사용자의 머신에 SUSE Linux Enterprise Server를 설치하려면 https://www.suse.com/products/server으로 이동합니다.To install SUSE Linux Enterprise Server on your own machine, go to https://www.suse.com/products/server. Azure에서 SLES 가상 머신을 만들 수도 있습니다.You can also create SLES virtual machines in Azure. Azure CLI를 사용하여 Linux VM 만들기 및 관리를 참조하고 az vm create에 대한 호출에 --image SLES을 사용하세요.See Create and Manage Linux VMs with the Azure CLI, and use --image SLES in the call to az vm create.

이전에 SQL Server의 CTP 또는 RC 릴리스를 설치한 경우 다음 단계를 수행하기 전에 이전 리포지토리를 제거해야 합니다.If you have previously installed a CTP or RC release of SQL Server, you must first remove the old repository before following these steps. 자세한 내용은 SQL Server 2017 및 2019에 대한 Linux 리포지토리 구성을 참조하세요.For more information, see Configure Linux repositories for SQL Server 2017 and 2019.

참고

현재 Windows 10의 Linux용 Windows 하위 시스템은 설치 대상으로 지원되지 않습니다.At this time, the Windows Subsystem for Linux for Windows 10 is not supported as an installation target.

기타 시스템 요구 사항은 SQL Server on Linux에 대한 시스템 요구 사항을 참조하세요.For other system requirements, see System requirements for SQL Server on Linux.

SQL Server 설치Install SQL Server

SLES에서 SQL Server을 구성하려면 터미널에서 다음 명령을 실행하여 mssql-server 패키지를 설치합니다.To configure SQL Server on SLES, run the following commands in a terminal to install the mssql-server package:

  1. Microsoft SQL Server 2017 SLES 리포지토리 구성 파일을 다운로드합니다.Download the Microsoft SQL Server 2017 SLES repository configuration file:

    sudo zypper addrepo -fc https://packages.microsoft.com/config/sles/12/mssql-server-2017.repo
    

    SQL Server 2019를 설치하려면 대신 SQL Server 2019 리포지토리를 등록해야 합니다.If you want to install SQL Server 2019 , you must instead register the SQL Server 2019 repository. SQL Server 2019 설치에는 다음 명령을 사용합니다.Use the following command for SQL Server 2019 installations:

    sudo zypper addrepo -fc https://packages.microsoft.com/config/sles/12/mssql-server-2019.repo
    
  2. 리포지토리를 새로 고칩니다.Refresh your repositories.

    sudo zypper --gpg-auto-import-keys refresh 
    

    Microsoft 패키지 서명 키가 시스템에 설치되어 있는지 확인하려면 아래 명령을 사용하여 키를 가져옵니다.To ensure that the Microsoft package signing key is installed on your system, please import it using the command below:

    sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
    
  3. 다음 명령을 실행하여 SQL Server를 설치합니다.Run the following commands to install SQL Server:

    sudo zypper install -y mssql-server
    
  4. 패키지 설치가 완료되면 mssql-conf setup을 실행하고, 프롬프트에 따라 SA 암호를 설정하고, 버전을 선택합니다.After the package installation finishes, run mssql-conf setup and follow the prompts to set the SA password and choose your edition.

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

    다음 SQL Server 2017 버전은 체험용 라이선스인 Evaluation, Developer 및 Express로 제공됩니다.The following SQL Server 2017 editions are freely licensed: Evaluation, Developer, and Express.

    참고

    SA 계정의 강력한 암호를 지정해야 합니다(대문자 및 소문자, 기본 10자리 숫자 및/또는 영숫자가 아닌 기호를 포함 하여 최소 길이 8자).Make sure to specify a strong password for the SA account (Minimum length 8 characters, including uppercase and lowercase letters, base 10 digits and/or non-alphanumeric symbols).

  5. 구성이 완료되면 서비스가 실행 중인지 확인합니다.Once the configuration is done, verify that the service is running:

    systemctl status mssql-server
    
  6. 원격으로 연결하려면 방화벽에서 SQL Server TCP 포트(기본값 1433)를 열어야 할 수도 있습니다.If you plan to connect remotely, you might also need to open the SQL Server TCP port (default 1433) on your firewall. SuSE 방화벽을 사용하는 경우 /etc/sysconfig/SuSEfirewall2 구성 파일을 편집해야 합니다.If you are using the SuSE firewall, you need to edit the /etc/sysconfig/SuSEfirewall2 configuration file. SQL Server 포트 번호를 포함하도록 FW_SERVICES_EXT_TCP 항목을 수정합니다.Modify the FW_SERVICES_EXT_TCP entry to include the SQL Server port number.

    FW_SERVICES_EXT_TCP="1433"
    

이제 SQL Server는 SLES 머신에서 실행 중이며 사용할 준비가 되었습니다.At this point, SQL Server is running on your SLES machine and is ready to use!

SQL Server 설치Install SQL Server

SLES에서 SQL Server을 구성하려면 터미널에서 다음 명령을 실행하여 mssql-server 패키지를 설치합니다.To configure SQL Server on SLES, run the following commands in a terminal to install the mssql-server package:

  1. Microsoft SQL Server 2019 SLES 리포지토리 구성 파일을 다운로드합니다.Download the Microsoft SQL Server 2019 SLES repository configuration file:

    sudo zypper addrepo -fc https://packages.microsoft.com/config/sles/12/mssql-server-2019.repo
    
  2. 리포지토리를 새로 고칩니다.Refresh your repositories.

    sudo zypper --gpg-auto-import-keys refresh 
    

    Microsoft 패키지 서명 키가 시스템에 설치되어 있는지 확인하려면 다음 명령을 사용하여 키를 가져옵니다.To ensure that the Microsoft package signing key is installed on your system, use the following command to import the key:

    sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
    
  3. 다음 명령을 실행하여 SQL Server를 설치합니다.Run the following commands to install SQL Server:

    sudo zypper install -y mssql-server
    
  4. 패키지 설치가 완료되면 mssql-conf setup을 실행하고, 프롬프트에 따라 SA 암호를 설정하고, 버전을 선택합니다.After the package installation finishes, run mssql-conf setup and follow the prompts to set the SA password and choose your edition.

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

    참고

    SA 계정의 강력한 암호를 지정해야 합니다(대문자 및 소문자, 기본 10자리 숫자 및/또는 영숫자가 아닌 기호를 포함 하여 최소 길이 8자).Make sure to specify a strong password for the SA account (Minimum length 8 characters, including uppercase and lowercase letters, base 10 digits and/or non-alphanumeric symbols).

  5. 구성이 완료되면 서비스가 실행 중인지 확인합니다.Once the configuration is done, verify that the service is running:

    systemctl status mssql-server
    
  6. 원격으로 연결하려면 방화벽에서 SQL Server TCP 포트(기본값 1433)를 열어야 할 수도 있습니다.If you plan to connect remotely, you might also need to open the SQL Server TCP port (default 1433) on your firewall. SuSE 방화벽을 사용하는 경우 /etc/sysconfig/SuSEfirewall2 구성 파일을 편집해야 합니다.If you are using the SuSE firewall, you need to edit the /etc/sysconfig/SuSEfirewall2 configuration file. SQL Server 포트 번호를 포함하도록 FW_SERVICES_EXT_TCP 항목을 수정합니다.Modify the FW_SERVICES_EXT_TCP entry to include the SQL Server port number.

    FW_SERVICES_EXT_TCP="1433"
    

이제 SQL Server 2019는 SLES 머신에서 실행 중이며 사용할 준비가 되었습니다.At this point, SQL Server 2019 is running on your SLES machine and is ready to use!

SQL Server 명령줄 도구 설치Install the SQL Server command-line tools

데이터베이스를 만들려면 SQL Server에서 Transact-SQL 문을 실행할 수 있는 도구와 연결해야 합니다.To create a database, you need to connect with a tool that can run Transact-SQL statements on the SQL Server. 다음 단계에서는 SQL Server 명령줄 도구인 sqlcmdbcp를 설치합니다.The following steps install the SQL Server command-line tools: sqlcmd and bcp.

  1. Zypper에 Microsoft SQL Server 리포지토리를 추가합니다.Add the Microsoft SQL Server repository to Zypper.

    sudo zypper addrepo -fc https://packages.microsoft.com/config/sles/12/prod.repo 
    sudo zypper --gpg-auto-import-keys refresh
    
  2. unixODBC 개발자 패키지와 함께 mssql-tools를 설치합니다.Install mssql-tools with the unixODBC developer package. 자세한 내용은 Microsoft ODBC Driver for SQL Server(Linux) 설치를 참조하세요.For more information, see Install the Microsoft ODBC driver for SQL Server (Linux).

    sudo zypper install -y mssql-tools unixODBC-devel
    
  3. 편의를 위해 PATH 환경 변수에 /opt/mssql-tools/bin/를 추가합니다.For convenience, add /opt/mssql-tools/bin/ to your PATH environment variable. 이렇게 하면 전체 경로를 지정하지 않고 도구를 실행할 수 있습니다.This enables you to run the tools without specifying the full path. 다음 명령을 실행하여 로그인 세션과 대화형/비로그인 세션에 대한 PATH를 수정합니다.Run the following commands to modify the PATH for both login sessions and interactive/non-login sessions:

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

로컬로 연결Connect locally

다음 단계에서는 sqlcmd를 사용하여 새 SQL Server 인스턴스에 로컬로 연결합니다.The following steps use sqlcmd to locally connect to your new SQL Server instance.

  1. sqlcmd를 SQL Server 이름(-S), 사용자 이름(-U) 및 암호(-P)의 매개 변수를 사용하여 실행합니다.Run sqlcmd with parameters for your SQL Server name (-S), the user name (-U), and the password (-P). 이 자습서에서는 로컬로 연결하므로 서버 이름은 localhost입니다.In this tutorial, you are connecting locally, so the server name is localhost. 사용자 이름은 SA이고 암호는 설치할 때 SA 계정에 지정한 암호입니다.The user name is SA and the password is the one you provided for the SA account during setup.

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

    명령줄에서 암호를 생략하여 입력하라는 메시지가 표시되도록 할 수 있습니다.You can omit the password on the command line to be prompted to enter it.

    나중에 원격으로 연결하려는 경우 -S 매개 변수에 컴퓨터 이름 또는 IP 주소를 지정하고 방화벽에서 포트 1433이 열려 있는지 확인합니다.If you later decide to connect remotely, specify the machine name or IP address for the -S parameter, and make sure port 1433 is open on your firewall.

  2. 성공하면 sqlcmd 명령 프롬프트 1>이 표시됩니다.If successful, you should get to a sqlcmd command prompt: 1>.

  3. 연결 오류가 발생하는 경우 먼저 오류 메시지에서 문제를 진단합니다.If you get a connection failure, first attempt to diagnose the problem from the error message. 그런 다음 connection troubleshooting recommendations(연결 문제 해결 권장 사항)를 검토합니다.Then review the connection troubleshooting recommendations.

데이터 만들기 및 쿼리Create and query data

다음 섹션에서는 sqlcmd를 사용하여 새 데이터베이스를 만들고, 데이터를 추가하고, 간단한 쿼리를 실행하는 단계를 안내합니다.The following sections walk you through using sqlcmd to create a new database, add data, and run a simple query.

새 데이터베이스 만들기Create a new database

다음 단계에서는 TestDB라는 새 데이터베이스를 만듭니다.The following steps create a new database named TestDB.

  1. sqlcmd 명령 프롬프트에서 다음 Transact-SQL 명령을 붙여넣어 테스트 데이터베이스를 만듭니다.From the sqlcmd command prompt, paste the following Transact-SQL command to create a test database:

    CREATE DATABASE TestDB
    
  2. 다음 줄에 서버에 있는 모든 데이터베이스의 이름을 반환하는 쿼리를 작성합니다.On the next line, write a query to return the name of all of the databases on your server:

    SELECT Name from sys.Databases
    
  3. 앞의 두 명령은 즉시 실행되지 않았습니다.The previous two commands were not executed immediately. 앞의 명령을 실행하려면 새 줄에 GO를 입력해야 합니다.You must type GO on a new line to execute the previous commands:

    GO
    

Transact-SQL 문 및 쿼리를 작성하는 방법에 대한 자세한 내용은 자습서: TRANSACT-SQL 문 작성을 참조하세요.To learn more about writing Transact-SQL statements and queries, see Tutorial: Writing Transact-SQL Statements.

데이터 삽입Insert data

다음으로 새 테이블 Inventory를 만들고 두 개의 새 행을 삽입합니다.Next create a new table, Inventory, and insert two new rows.

  1. sqlcmd 명령 프롬프트에서 컨텍스트를 새 TestDB 데이터베이스로 전환합니다.From the sqlcmd command prompt, switch context to the new TestDB database:

    USE TestDB
    
  2. Inventory라는 새 테이블을 만듭니다.Create new table named Inventory:

    CREATE TABLE Inventory (id INT, name NVARCHAR(50), quantity INT)
    
  3. 새 테이블에 데이터를 삽입합니다.Insert data into the new table:

    INSERT INTO Inventory VALUES (1, 'banana', 150); INSERT INTO Inventory VALUES (2, 'orange', 154);
    
  4. GO를 입력하여 앞의 명령을 실행합니다.Type GO to execute the previous commands:

    GO
    

데이터 선택Select data

이제 쿼리를 실행하여 Inventory 테이블에서 데이터를 반환합니다.Now, run a query to return data from the Inventory table.

  1. sqlcmd 명령 프롬프트에서 Inventory 테이블에서 수량이 152보다 큰 행을 반환하는 쿼리를 입력합니다.From the sqlcmd command prompt, enter a query that returns rows from the Inventory table where the quantity is greater than 152:

    SELECT * FROM Inventory WHERE quantity > 152;
    
  2. 다음 명령을 실행합니다.Execute the command:

    GO
    

sqlcmd 명령 프롬프트 종료Exit the sqlcmd command prompt

sqlcmd 세션을 종료하려면 QUIT를 입력합니다.To end your sqlcmd session, type QUIT:

QUIT

성능 모범 사례Performance best practices

Linux에 SQL Server를 설치한 후에는 프로덕션 시나리오에 대한 성능을 향상시키도록 Linux 및 SQL Server를 구성하기 위한 모범 사례를 검토하세요.After installing SQL Server on Linux, review the best practices for configuring Linux and SQL Server to improve performance for production scenarios. 자세한 내용은 SQL Server on Linux의 성능 모범 사례 및 구성 지침을 참조하세요.For more information, see Performance best practices and configuration guidelines for SQL Server on Linux.

플랫폼 간 데이터 도구Cross-platform data tools

sqlcmd 외에도 다음과 같은 플랫폼 간 도구를 사용하여 SQL Server를 관리할 수 있습니다.In addition to sqlcmd, you can use the following cross-platform tools to manage SQL Server:

도구Tool 설명Description
Azure Data StudioAzure Data Studio 플랫폼 간 GUI 데이터베이스 관리 유틸리티입니다.A cross-platform GUI database management utility.
Visual Studio CodeVisual Studio Code mssql 확장을 사용하여 Transact-SQL 문을 실행하는 플랫폼 간 GUI 코드 편집기입니다.A cross-platform GUI code editor that run Transact-SQL statements with the mssql extension.
PowerShell CorePowerShell Core cmdlet을 기준으로 하는 플랫폼 간 자동화 및 구성 도구입니다.A cross-platform automation and configuration tool based on cmdlets.
mssql-climssql-cli Transact-SQL 명령을 실행하기 위한 플랫폼 간 명령줄 인터페이스입니다.A cross-platform command-line interface for running Transact-SQL commands.

Windows에서 연결Connecting from Windows

Windows의 SQL Server 도구는 원격 SQL Server 인스턴스에 연결할 때와 동일하게 Linux의 SQL Server 인스턴스에 연결합니다.SQL Server tools on Windows connect to SQL Server instances on Linux in the same way they would connect to any remote SQL Server instance.

Linux 컴퓨터에 연결할 수 있는 Windows 컴퓨터가 있는 경우 이 항목의 단계와 동일하게 Windows 명령 프롬프트에서 sqlcmd를 실행해 보세요.If you have a Windows machine that can connect to your Linux machine, try the same steps in this topic from a Windows command-prompt running sqlcmd. localhost 대신 대상 Linux 컴퓨터 이름이나 IP 주소를 사용하고 TCP 포트 1433이 열려 있는지 확인하기만 하면 됩니다.Just verify that you use the target Linux machine name or IP address rather than localhost, and make sure that TCP port 1433 is open. Windows에서 연결하는 데 문제가 있는 경우 connection troubleshooting recommendations(연결 문제 해결 권장 사항)를 참조하세요.If you have any problems connecting from Windows, see connection troubleshooting recommendations.

Windows에서 실행하지만 Linux의 SQL Server에 연결하는 다른 도구는 다음을 참조하세요.For other tools that run on Windows but connect to SQL Server on Linux, see:

기타 배포 시나리오Other deployment scenarios

다른 설치 시나리오의 경우 다음 리소스를 참조하세요.For other installation scenarios, see the following resources:

  • 업그레이드: Linux에서 SQL Server의 기존 설치를 업그레이드하는 방법 알아보기Upgrade: Learn how to upgrade an existing installation of SQL Server on Linux
  • 제거: Linux에서 SQL Server 제거Uninstall: Uninstall SQL Server on Linux
  • 무인 설치: 확인 메시지를 표시하지 않고 설치를 스크립팅하는 방법을 알아봅니다.Unattended install: Learn how to script the installation without prompts
  • 오프라인 설치: 오프라인 설치에 대한 패키지를 수동으로 다운로드하는 방법을 알아봅니다.Offline install: Learn how to manually download the packages for offline installation

질문과 대답은 SQL Server on Linux FAQ를 참조하세요.For answers to frequently asked questions, see the SQL Server on Linux FAQ.

다음 단계Next steps