sql >> Database >  >> RDS >> Sqlserver

Installeer SQL Server 2019 op een Mac

Ik heb eerder uitgelegd hoe je SQL Server op een Mac installeert via een Docker-container. Toen ik dat schreef, was SQL Server 2017 de nieuwste versie van SQL Server, en die was net beschikbaar gemaakt voor Linux en Docker (wat betekent dat je het ook op MacOS-systemen kunt installeren).

Eind 2018 kondigde Microsoft SQL Server 2019 Preview aan en vervolgens de algemene release eind 2019. Het installatieproces voor SQL Server 2019 is precies hetzelfde als voor SQL Server 2017. Het enige verschil is dat u de container-image moet gebruiken voor SQL Server 2019 in plaats van de afbeelding van 2017. Hier laat ik je zien hoe je dat doet.

Als u SQL Server 2017 al hebt geïnstalleerd en u wilt SQL Server 2019 installeren zonder de 2017-versie te verwijderen, moet u een ander poortnummer aan uw host toewijzen. Ik laat je ook zien hoe je dat kunt doen.

Maar eerst… als u een Mac met de M1-chip gebruikt, raadpleegt u SQL Server installeren op een M1-Mac (ARM64).

Dokker

De eerste stap is om Docker te installeren. Als je Docker al hebt geïnstalleerd, kun je deze stap overslaan (en direct naar SQL Server gaan).

Docker is een platform waarmee software in zijn eigen geïsoleerde omgeving kan draaien. Daarom kan SQL Server 2019 worden uitgevoerd op Docker in zijn eigen geïsoleerde container.

  1. Installeer Docker

    Ga om te downloaden naar de Docker CE voor Mac-downloadpagina en klik op Docker ophalen .

    Dubbelklik om te installeren op de .dmg bestand en sleep vervolgens de Docker.app pictogram naar uw Applicatie map.

  2. Lanceer Docker

    Start Docker op dezelfde manier als elke andere applicatie (bijvoorbeeld via de map Programma's, het Launchpad, enz.).

    Wanneer u Docker opent, wordt u mogelijk om uw wachtwoord gevraagd, zodat Docker de netwerkcomponenten en koppelingen naar de Docker-apps kan installeren. Ga je gang en geef je wachtwoord op, want Docker heeft dit nodig om te kunnen werken.

  3. Vergroot het geheugen (optioneel)

    Docker krijgt standaard 2 GB geheugen toegewezen. Ik stel voor om het te verhogen naar 4 GB als je kunt.

    Selecteer hiervoor Voorkeuren van het kleine Docker-pictogram in het hoofdmenu:

    Dan op de Bronnen> Geavanceerd scherm, schuift u de geheugenschuifregelaar tot minimaal 4 GB:

    Sluit vervolgens af door te klikken op Toepassen en opnieuw opstarten

SQL-server

Nu Docker is geïnstalleerd en geconfigureerd, kunnen we SQL Server 2019 downloaden en installeren.

  1. SQL Server 2019 downloaden

    Open een Terminal-venster en voer de volgende opdracht uit.

    sudo docker pull mcr.microsoft.com/mssql/server:2019-latest
    

    Hiermee wordt de nieuwste SQL Server voor Linux Docker-image naar uw computer gedownload.

    U kunt desgewenst ook de verschillende opties voor containerafbeeldingen op de Docker-website bekijken.

  2. Lanceer de Docker-afbeelding

    Voer de volgende opdracht uit om een ​​exemplaar van de Docker-image te starten die u zojuist hebt gedownload:

    sudo docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=reallyStrongPwd#123" -p 1433:1433 --name Bart -d mcr.microsoft.com/mssql/server:2019-latest
    

    Verander gewoon Bart naar een naam naar keuze, en reallyStrongPwd#123 naar een wachtwoord naar keuze.

    Zie hieronder als u de foutmelding "poort al toegewezen" krijgt.

    Hier is een uitleg van de parameters:

    -e 'ACCEPT_EULA=Y'
    De Y laat zien dat u akkoord gaat met de EULA (End User License Agreement). Dit is verplicht.
    -e 'SA_PASSWORD=reallyStrongPwd#123'
    Vereiste parameter die de sa . instelt databasewachtwoord.
    -p 1433:1433
    Hiermee wordt de lokale poort 1433 toegewezen aan poort 1433 op de container. De eerste waarde is de TCP-poort op de hostomgeving. De tweede waarde is de TCP-poort in de container.
    --name Bart
    Nog een optionele parameter. Met deze parameter kunt u de container een naam geven. Dit kan handig zijn bij het stoppen en starten van uw container vanaf de Terminal. Misschien geeft u er de voorkeur aan om het een meer beschrijvende naam te geven, zoals sql_server_2019 of vergelijkbaar.
    -d
    Deze optionele parameter start de Docker-container in de daemon-modus. Dit betekent dat het op de achtergrond draait en geen eigen Terminal-venster hoeft te openen. U kunt deze parameter weglaten om de container in zijn eigen Terminal-venster te laten draaien.
    mcr.microsoft.com/mssql/server:2019-latest
    Dit vertelt Docker welke afbeelding moet worden gebruikt.

    Wachtwoordsterkte

    U moet een sterk wachtwoord gebruiken. Microsoft zegt dit over het wachtwoord:

    Het wachtwoord moet het standaard wachtwoordbeleid van SQL Server volgen, anders kan de container de SQL-server niet instellen en stopt met werken. Het wachtwoord moet standaard minimaal 8 tekens lang zijn en tekens uit drie van de volgende vier sets bevatten:hoofdletters, kleine letters, tien basiscijfers en symbolen.

    Fout – “Poort al toegewezen”?

    Als je een foutmelding krijgt die iets zegt over "poort is al toegewezen", dan heb je misschien al SQL Server geïnstalleerd op een andere container die die poort gebruikt. In dit geval moet u naar een andere poort op de host verwijzen.

    Daarom zou je het bovenstaande commando in iets als dit kunnen veranderen:

    sudo docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=reallyStrongPwd#123" -p 1400:1433 --name Bart -d mcr.microsoft.com/mssql/server:2019-latest
    

    In dit geval heb ik gewoon -p 1433:1433 . gewijzigd naar -p 1400:1433 . Al het andere blijft hetzelfde.

    Mogelijk krijgt u nu een foutmelding dat u eerst de bestaande container moet verwijderen. Voer hiervoor het volgende uit (maar verwissel Bart met de naam van je eigen container):

    sudo docker rm Bart
    

    Eenmaal verwijderd, kunt u proberen de vorige opdracht opnieuw uit te voeren.

    Houd er rekening mee dat als u de poort wijzigt zoals ik hier heb gedaan, u waarschijnlijk het poortnummer moet opnemen wanneer u verbinding maakt met SQL Server vanuit alle databasetools vanaf uw bureaublad. Als u bijvoorbeeld verbinding maakt via de Azure Data Studio (hieronder vermeld), kunt u verbinding maken met Localhost,1400 in plaats van alleen Localhost . Hetzelfde geldt voor mssql-cli, een SQL-tool op de opdrachtregel.

Controleer alles

Nu we dat hebben gedaan, zouden we goed moeten zijn om te gaan. Laten we een paar controles doornemen en uitvoeren.

  1. Controleer de Docker-container (optioneel)

    U kunt de volgende opdracht typen om te controleren of de Docker-container actief is.

    sudo docker ps -a
    

    In mijn geval krijg ik dit:

    CONTAINER ID        IMAGE                                               COMMAND                  CREATED              STATUS              PORTS                    NAMES
    c1b060f68fcb        mcr.microsoft.com/mssql/server:2019-latest          "/opt/mssql/bin/sqls…"   About a minute ago   Up About a minute   0.0.0.0:1400->1433/tcp   Bart
    fdec67e6a28d        microsoft/mssql-server-linux                        "/opt/mssql/bin/sqls…"   4 months ago         Up 8 days           0.0.0.0:1433->1433/tcp   Homer
    

    Dit vertelt me ​​​​dat ik twee docker-containers in gebruik heb:een genaamd Bart en de andere genaamd Homer .

  2. Verbinden met SQL Server

    Hier gebruiken we de SQL Server-opdrachtregeltool genaamd "sqlcmd" in de container om verbinding te maken met SQL Server.

    sudo docker exec -it Bart "bash"
    

    Voer uw wachtwoord in als daarom wordt gevraagd.

    Nu u zich in de container bevindt, maakt u lokaal verbinding met sqlcmd:

    /opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P "reallyStrongPwd#123"
    

    Dit zou je naar de sqlcmd-prompt 1> moeten brengen .

  3. Voer een snelle test uit

    Voer een snelle test uit om te controleren of SQL Server actief is. Controleer bijvoorbeeld de SQL Server-versie door dit in te voeren:

    SELECT @@version
    

    Dit brengt je naar een opdrachtprompt 2> op de volgende regel. Voer het volgende in om de query uit te voeren:

    GO
    

    Resultaat:

    +--------------------+
    | (No column name)   |
    |--------------------|
    | Microsoft SQL Server 2019 (RTM-CU3) (KB4538853) - 15.0.4023.6 (X64) 
            Mar  4 2020 00:59:26 
            Copyright (C) 2019 Microsoft Corporation
            Developer Edition (64-bit) on Linux (Ubuntu 18.04.4 LTS)                     |
    +--------------------+
    (1 row affected)  
    

    Als je een bericht als dit ziet, gefeliciteerd - SQL Server is nu actief op je Mac!

    Als je liever een GUI gebruikt om SQL Server te beheren, lees dan verder.

Azure Data Studio

Azure Data Studio is een gratis GUI-beheertool die u kunt gebruiken om SQL Server op uw Mac te beheren. U kunt het gebruiken om databases te maken en te beheren, query's te schrijven, databases te back-uppen en te herstellen, en meer.

Azure Data Studio is beschikbaar op Windows, Mac en Linux.

Hier zijn enkele artikelen/zelfstudies die ik heb geschreven voor Azure Data Studio:

  • Wat is Azure Data Studio
  • Hoe installeer je Azure Data Studio op je Mac
  • Een database maken met Azure Data Studio
  • Een database herstellen met Azure Data Studio op een Mac

Nog een gratis SQL Server GUI – DBeaver

Een andere SQL Server GUI-tool die u op uw Mac (en Windows/Linux/Solaris) kunt gebruiken, is DBeaver.

DBeaver is een gratis, open source databasebeheertool die kan worden gebruikt op de meeste databasebeheersystemen (zoals MySQL, PostgreSQL, MariaDB, SQLite, Oracle, DB2, SQL Server, Sybase, Microsoft Access, Teradata, Firebird, Derby en meer ).

Ik heb een korte introductie tot DBeaver geschreven, of je kunt direct naar de DBeaver-downloadpagina gaan en het uitproberen met je nieuwe SQL Server-installatie.


  1. Een tabel bijwerken in Oracle als een veldwaarde Null is en bepalen of de update succesvol is

  2. Azure Database for MySQL/MariaDB migreren naar een lokale server

  3. UPPER() Functie in Oracle

  4. LAST_INSERT_ID() MijnSQL