Dela via


Snabbstart: Installera SQL Server och skapa en databas på Red Hat

gäller för:SQL Server – Linux

I den här snabbstarten installerar du SQL Server 2017 (14.x) på Red Hat Enterprise Linux (RHEL) 8.x. Sedan kan du ansluta med sqlcmd för att skapa din första databas och köra frågor.

Mer information om plattformar som stöds finns i Versionsinformation för SQL Server 2017 på Linux.

I den här snabbstarten installerar du SQL Server 2019 (15.x) på Red Hat Enterprise Linux (RHEL) 8.x. Sedan kan du ansluta med sqlcmd för att skapa din första databas och köra frågor.

För mer information om stödda plattformar, se Versionsinformation för SQL Server 2019 på Linux.

I den här snabbstarten installerar du SQL Server 2022 (16.x) på Red Hat Enterprise Linux (RHEL) 8.x eller 9.x. Sedan kan du ansluta med sqlcmd för att skapa din första databas och köra frågor.

Om du vill automatisera installationen med Ansible kan du läsa Snabbstart: Distribuera SQL Server på Linux med hjälp av en Ansible-spelbok.

För mer information om plattformar som stöds, se Versionsanteckningar för SQL Server 2022 på Linux.

Tips

Den här handledningen kräver användarindata och en internetuppkoppling. Om du är intresserad av obevakade eller offline installationsprocedurer kan du läsa Installationsvägledning för SQL Server på Linux. Om du väljer att ha en förinstallerad virtuell SQL Server-dator på RHEL redo att köra din produktionsbaserade arbetsbelastning följer du bästa praxis för att skapa den virtuella SQL Server-datorn.

Azure Marketplace-avbildningar

Du kan skapa den virtuella datorn baserat på följande Azure Marketplace-avbildning:

När du använder marketplace-avbildningen ovan undviker du installationssteget och kan konfigurera instansen direkt genom att ange den SKU och det sa lösenord som behövs för att komma igång med SQL Server. Virtuella SQL Server Azure-datorer som distribueras på RHEL med hjälp av ovanstående Marketplace-avbildningar stöds fullt ut av både Microsoft och Red Hat.

Du kan konfigurera SQL Server på Linux med mssql-confmed hjälp av följande kommando:

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

Förutsättningar

Du måste ha en RHEL 8.x-dator med minst 2 GB minne.

Om du vill installera Red Hat Enterprise Linux på din egen dator går du till https://access.redhat.com/products/red-hat-enterprise-linux/evaluation. Du kan också skapa virtuella RHEL-datorer i Azure. Se Skapa och hantera virtuella Linux-datorer med Azure CLIoch använd --image RHEL i anropet till az vm create.

Om du tidigare har installerat en COMMUNITY Technology Preview (CTP) eller Release Candidate (RC) för SQL Server måste du först ta bort den gamla lagringsplatsen innan du följer dessa steg. Mer information finns i Konfigurera lagringsplatser för att installera och uppgradera SQL Server på Linux.

Andra systemkrav finns i Systemkrav för SQL Server på Linux.

Information om hur du konfigurerar din SQL Server-instans enligt de rekommenderade standarderna finns i riktlinjer för bästa praxis och prestanda samt konfiguration för SQL Server på Linux.

Installera SQL Server

Följande kommandon för att installera SQL Server pekar på RHEL 8-lagringsplatsen. RHEL 8 är inte förinstallerat med python2, vilket krävs av SQL Server. Innan du påbörjar installationsstegen för SQL Server kör du kommandot och kontrollerar att python2 har valts som tolk:

sudo alternatives --config python
# If not configured, install python2 and openssl10 using the following commands:
sudo yum install python2
sudo yum install compat-openssl10
# Configure python2 as the default interpreter using this command:
sudo alternatives --config python

Mer information finns i följande blogg om hur du installerar python2 och konfigurerar den som standardtolk: https://www.redhat.com/en/blog/installing-microsoft-sql-server-red-hat-enterprise-linux-8-beta.

Om du vill konfigurera SQL Server på RHEL kör du följande kommandon i en terminal för att installera mssql-server-paketet:

  1. Ladda ned konfigurationsfilen för SQL Server 2017 (14.x) Red Hat-lagringsplatsen:

    sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/8/mssql-server-2017.repo
    

    Tips

    Om du vill installera en annan version av SQL Server kan du läsa SQL Server 2019 (15.x) eller SQL Server 2022 (16.x) versioner av den här artikeln.

  2. Kör följande kommando för att installera SQL Server:

    sudo yum install -y mssql-server
    
  3. När paketinstallationen är klar kör du mssql-conf setup med den fullständiga sökvägen och följer anvisningarna för att ange sa lösenord och välja din utgåva. Som en påminnelse licensieras följande SQL Server-utgåvor fritt: Utvärdering, Utvecklare och Express.

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

    Försiktighet

    Lösenordet bör följa SQL Server-standardprincipen för lösenord. Lösenordet måste som standard vara minst åtta tecken långt och innehålla tecken från tre av följande fyra uppsättningar: versaler, gemener, bas-10 siffror och symboler. Lösenord kan vara upp till 128 tecken långa. Använd lösenord som är så långa och komplexa som möjligt.

  4. När konfigurationen är klar kontrollerar du att tjänsten körs:

    systemctl status mssql-server
    
  5. Om du vill tillåta fjärranslutningar öppnar du SQL Server-porten i RHEL-brandväggen. Sql Server-standardporten är TCP 1433. Om du använder FirewallD- för brandväggen kan du använda följande kommandon:

    sudo firewall-cmd --zone=public --add-port=1433/tcp --permanent
    sudo firewall-cmd --reload
    

I det här läget körs SQL Server på RHEL-datorn och är redo att användas!

Följande kommandon för att installera SQL Server pekar på RHEL 8-lagringsplatsen. RHEL 8 är inte förinstallerat med python2, vilket krävs av SQL Server. Innan du påbörjar installationsstegen för SQL Server kör du kommandot och kontrollerar att python2 har valts som tolk:

sudo alternatives --config python
# If not configured, install python2 and openssl10 using the following commands:
sudo yum install python2
sudo yum install compat-openssl10
# Configure python2 as the default interpreter using this command:
sudo alternatives --config python

Mer information finns i följande blogg om hur du installerar python2 och konfigurerar den som standardtolk: https://www.redhat.com/en/blog/installing-microsoft-sql-server-red-hat-enterprise-linux-8-beta.

Om du vill konfigurera SQL Server på RHEL kör du följande kommandon i en terminal för att installera mssql-server-paketet:

  1. Ladda ned konfigurationsfilen för SQL Server 2019 (15.x) Red Hat-repository:

    sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/8/mssql-server-2019.repo
    

    Tips

    Om du vill installera en annan version av SQL Server kan du läsa SQL Server 2017 (14.x) eller SQL Server 2022 (16.x) versioner av den här artikeln.

  2. Kör följande kommando för att installera SQL Server:

    sudo yum install -y mssql-server
    
  3. När paketinstallationen är klar kör du mssql-conf setup med den fullständiga sökvägen och följer anvisningarna för att ange sa lösenord och välja din utgåva. Som en påminnelse licensieras följande SQL Server-utgåvor fritt: Utvärdering, Utvecklare och Express.

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

    Försiktighet

    Lösenordet bör följa SQL Server-standardprincipen för lösenord. Lösenordet måste som standard vara minst åtta tecken långt och innehålla tecken från tre av följande fyra uppsättningar: versaler, gemener, bas-10 siffror och symboler. Lösenord kan vara upp till 128 tecken långa. Använd lösenord som är så långa och komplexa som möjligt.

  4. När konfigurationen är klar kontrollerar du att tjänsten körs:

    systemctl status mssql-server
    
  5. Om du vill tillåta fjärranslutningar öppnar du SQL Server-porten i RHEL-brandväggen. Sql Server-standardporten är TCP 1433. Om du använder FirewallD- för brandväggen kan du använda följande kommandon:

    sudo firewall-cmd --zone=public --add-port=1433/tcp --permanent
    sudo firewall-cmd --reload
    

I det här läget körs SQL Server på RHEL-datorn och är redo att användas!

Följande kommandon för att installera SQL Server pekar på RHEL 8-lagringsplatsen.

Om du vill konfigurera SQL Server på RHEL kör du följande kommandon i en terminal för att installera mssql-server-paketet:

  1. Ladda ned konfigurationsfilen för SQL Server 2022 (16.x) Red Hat 8-lagringsplatsen:

    sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/8/mssql-server-2022.repo
    

    Tips

    Om du vill installera en annan version av SQL Server kan du läsa SQL Server 2017 (14.x) eller SQL Server 2019 (15.x) versioner av den här artikeln.

  2. Kör följande kommando för att installera SQL Server:

    sudo yum install -y mssql-server
    
  3. När paketinstallationen är klar kör du mssql-conf setup med den fullständiga sökvägen och följer anvisningarna för att ange sa lösenord och välja din utgåva. Som en påminnelse licensieras följande SQL Server-utgåvor fritt: Utvärdering, Utvecklare och Express.

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

    Försiktighet

    Lösenordet bör följa SQL Server-standardprincipen för lösenord. Lösenordet måste som standard vara minst åtta tecken långt och innehålla tecken från tre av följande fyra uppsättningar: versaler, gemener, bas-10 siffror och symboler. Lösenord kan vara upp till 128 tecken långa. Använd lösenord som är så långa och komplexa som möjligt.

  4. När konfigurationen är klar kontrollerar du att tjänsten körs:

    systemctl status mssql-server
    
  5. Om du vill tillåta fjärranslutningar öppnar du SQL Server-porten i RHEL-brandväggen. Sql Server-standardporten är TCP 1433. Om du använder FirewallD- för brandväggen kan du använda följande kommandon:

    sudo firewall-cmd --zone=public --add-port=1433/tcp --permanent
    sudo firewall-cmd --reload
    

I det här läget körs SQL Server på RHEL-datorn och är redo att användas!

Inaktivera SA-kontot som bästa praxis

När du ansluter till din SQL Server-instans med hjälp av systemadministratörskontot (sa) för första gången efter installationen är det viktigt att du följer dessa steg och sedan omedelbart inaktiverar sa-kontot som en metod för säkerhet.

  1. Skapa en ny inloggning och gör den till medlem i sysadmin serverroll.

  2. Anslut till SQL Server-instansen med den nya inloggningen som du skapade.

  3. Inaktivera det sa kontot, vilket rekommenderas för bästa praxis för säkerhet.

Installera kommandoradsverktygen för SQL Server

Om du vill skapa en databas måste du ansluta med ett verktyg som kan köra Transact-SQL-instruktioner på SQL Server. Följande steg installerar kommandoradsverktygen för SQL Server: sqlcmd-verktyget och bcp-verktyget.

Använd följande steg för att installera mssql-tools18 på Red Hat Enterprise Linux.

  1. Ladda ned konfigurationsfilen för Microsoft Red Hat-lagringsplatsen.

    • Använd följande kommando för Red Hat 9:

      curl https://packages.microsoft.com/config/rhel/9/prod.repo | sudo tee /etc/yum.repos.d/mssql-release.repo
      
    • Använd följande kommando för Red Hat 8:

      curl https://packages.microsoft.com/config/rhel/8/prod.repo | sudo tee /etc/yum.repos.d/mssql-release.repo
      
    • Använd följande kommando för Red Hat 7:

      curl https://packages.microsoft.com/config/rhel/7/prod.repo | sudo tee /etc/yum.repos.d/mssql-release.repo
      
  2. Om du hade en tidigare version av mssql-tools installerade tar du bort alla äldre unixODBC-paket.

    sudo yum remove mssql-tools unixODBC-utf16 unixODBC-utf16-devel
    
  3. Kör följande kommandon för att installera mssql-tools18 med unixODBC-utvecklarpaketet.

    sudo yum install -y mssql-tools18 unixODBC-devel
    

    Om du vill uppdatera till den senaste versionen av mssql-toolskör du följande kommandon:

    sudo yum check-update
    sudo yum update mssql-tools18
    
  4. Valfri: Lägg till /opt/mssql-tools18/bin/ i din PATH miljövariabel i ett bash-gränssnitt.

    Om du vill göra sqlcmd och bcp tillgängliga från bash-gränssnittet för inloggningssessioner ändrar du din PATH i filen ~/.bash_profile med följande kommando:

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

    Om du vill göra sqlcmd och bcp tillgängliga från bash-gränssnittet för interaktiva/icke-inloggningssessioner ändrar du PATH i filen ~/.bashrc med följande kommando:

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

Ansluta lokalt

Följande steg använder sqlcmd för att ansluta lokalt till din nya SQL Server-instans.

Försiktighet

Lösenordet bör följa SQL Server-standardprincipen för lösenord. Lösenordet måste som standard vara minst åtta tecken långt och innehålla tecken från tre av följande fyra uppsättningar: versaler, gemener, bas-10 siffror och symboler. Lösenord kan vara upp till 128 tecken långa. Använd lösenord som är så långa och komplexa som möjligt.

  1. Kör sqlcmd med parametrar för ditt SQL Server-namn (-S), användarnamnet (-U) och lösenordet (-P). I den här handledningen ansluter du lokalt, så servernamnet är localhost. Användarnamnet är sa och lösenordet är det du angav för sa-kontot under installationen.

    sqlcmd -S localhost -U sa -P '<password>'
    

    Not

    Nyare versioner av sqlcmd är säkra som standard. Mer information om anslutningskryptering finns i sqlcmd-verktyg för Windows och Ansluta med sqlcmd- för Linux och macOS. Om anslutningen inte lyckas kan du lägga till alternativet -No i sqlcmd- för att ange att kryptering är valfritt, inte obligatoriskt.

    Du kan utelämna lösenordet på kommandoraden för att bli uppmanad att ange det.

    Om du senare bestämmer dig för att fjärransluta anger du datornamnet eller IP-adressen för parametern -S och kontrollerar att port 1433 är öppen i brandväggen.

  2. Om det blir framgångsrikt ska du komma till en sqlcmd kommandotolk: 1>.

  3. Om du får ett anslutningsfel försöker du först diagnostisera problemet från felmeddelandet. Granska sedan felsökningsrekommendationerna för anslutning.

Skapa och fråga efter data

Följande avsnitt beskriver hur du använder sqlcmd för att skapa en ny databas, lägga till data och köra en enkel fråga.

Mer information om hur du skriver Transact-SQL-instruktioner och frågor finns i Tutorial: Write Transact-SQL statements.

Skapa en ny databas

Följande steg skapar en ny databas med namnet TestDB.

  1. Från kommandotolken sqlcmd klistrar du in följande Transact-SQL kommando för att skapa en testdatabas:

    CREATE DATABASE TestDB;
    
  2. På nästa rad skriver du en fråga för att returnera namnet på alla databaser på servern:

    SELECT Name
    FROM sys.databases;
    
  3. De föregående två kommandona körs inte omedelbart. Du måste skriva GO på en ny rad för att köra föregående kommandon:

    GO
    

Infoga data

Skapa sedan en ny tabell dbo.Inventoryoch infoga två nya rader.

  1. Från kommandotolken sqlcmd växlar du kontexten till den nya TestDB databasen:

    USE TestDB;
    
  2. Skapa en ny tabell med namnet dbo.Inventory:

    CREATE TABLE dbo.Inventory
    (
        id INT,
        name NVARCHAR (50),
        quantity INT,
        PRIMARY KEY (id)
    );
    
  3. Infoga data i den nya tabellen:

    INSERT INTO dbo.Inventory
    VALUES (1, 'banana', 150);
    
    INSERT INTO dbo.Inventory
    VALUES (2, 'orange', 154);
    
  4. Skriv GO för att köra föregående kommandon:

    GO
    

Välj data

Kör nu en fråga för att returnera data från tabellen dbo.Inventory.

  1. Från kommandotolken sqlcmd anger du en fråga som returnerar rader från tabellen dbo.Inventory där kvantiteten är större än 152:

    SELECT *
    FROM dbo.Inventory
    WHERE quantity > 152;
    
  2. Kör kommandot:

    GO
    

Avsluta kommandotolken för sqlcmd

Om du vill avsluta din sqlcmd--session skriver du QUIT:

QUIT

Metodtips för prestanda

När du har installerat SQL Server på Linux läser du metodtipsen för att konfigurera Linux och SQL Server för att förbättra prestanda för produktionsscenarier. För mer information, se riktlinjer för prestanda och konfiguration samt bästa praxis för SQL Server på Linux.

Plattformsoberoende dataverktyg

Förutom sqlcmdkan du använda följande plattformsoberoende verktyg för att hantera SQL Server:

Verktyg Beskrivning
Azure Data Studio Ett plattformsoberoende verktyg för hantering av GUI-databaser.
Visual Studio Code En plattformsoberoende GUI-kodredigerare som kör Transact-SQL-instruktioner med mssql-tillägget.
PowerShell Core Ett plattformsoberoende automatiserings- och konfigurationsverktyg baserat på cmdletar.
mssql-cli Ett plattformsoberoende kommandoradsgränssnitt för att köra Transact-SQL kommandon.

Ansluta från Windows

SQL Server-verktyg i Windows ansluter till SQL Server-instanser i Linux på samma sätt som de ansluter till valfri SQL Server-fjärrinstans.

Om du har en Windows-dator som kan ansluta till din Linux-dator kan du prova samma steg i det här avsnittet från en Windows-kommandotolk som kör sqlcmd. Du måste använda linux-måldatorns namn eller IP-adress i stället för localhostoch se till att TCP-port 1433 är öppen på SQL Server-datorn. Om du har problem med att ansluta från Windows kan du läsa rekommendationer för felsökning av anslutningar.

Andra verktyg som körs i Windows men som ansluter till SQL Server i Linux finns i:

Andra distributionsscenarier

Andra installationsscenarier finns i följande resurser:

För att få svar på vanliga frågor, se vanliga frågor och svar om SQL Server på Linux.

Bidra till SQL-dokumentation

Visste du att du kan redigera SQL-innehåll själv? Om du gör det hjälper du inte bara till att förbättra vår dokumentation, utan du får även kredit som deltagare på sidan.

Mer information finns i Så här bidrar du till SQL Server-dokumentationen