Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Konfigurowanie lokalnej bazy danych SQL Server


Przegląd

W tym przewodniku omówimy, jak zainstalować i skonfigurować instancję SQL Server oraz sqlcmd klient wiersza poleceń. Omówimy, jak zainstalować i skonfigurować te komponenty na komputerze w celu uzyskania lokalnego dostępu.

Ten przewodnik obejmuje następujące platformy:

  • Konfigurowanie SQL Server w systemie Windows
  • Konfigurowanie SQL Server na macOS (z Dockerem)
  • Konfigurowanie SQL Server w systemie Linux
    • Ubuntu
    • CentOS i Red Hat
    • Z Dockerem

Przejdź do sekcji, które pasują do platform, z którymi będziesz pracować.



Konfigurowanie SQL Server w systemie Windows

Firma Microsoft udostępnia natywne instalatory systemu Windows dla programu SQL Server w swojej witrynie i oferuje różne wersje programu SQL Server odpowiednie do różnych celów. Na potrzeby tego przewodnika pobierzemy i zainstalujemy bezpłatną edycję programisty. Możesz łatwo uaktualnić wersję programistyczną do wersji płatnej, jeśli chcesz używać jej w produkcji.

Aby rozpocząć, odwiedź stronę Microsoft dotyczącą SQL Server. Znajdź sekcję związaną z wersją programisty i kliknij Pobierz teraz :

Po zakończeniu pobierania kliknij dwukrotnie plik, aby uruchomić instalator (może być konieczne potwierdzenie, że chcesz zezwolić programowi na wprowadzanie zmian na komputerze).

Na początkowym ekranie instalatora zostaniesz poproszony o wybranie typu instalacji, którą chcesz przeprowadzić:

Wybierz Podstawowe aby kontynuować konwencjonalną instalację, korzystając z najczęstszych opcji.

Następnie zostaniesz poproszony o wyrażenie zgody na warunki licencjonowania wersji dla programistów:

Po przeczytaniu licencji i zaakceptowaniu warunków kliknij Akceptuj aby kontynuować.

Następnie potwierdź lub zmień lokalizację instalacji:

Kiedy będziesz gotowy, kliknij Zainstaluj aby rozpocząć proces instalacji.

Instalator rozpocznie pobieranie i instalowanie komponentów w celu skonfigurowania programu SQL Server na komputerze:

Po zakończeniu instalacji pojawi się ekran z aktualnymi właściwościami instalacji:

Aby od razu połączyć się z nową instancją SQL Server, kliknij Połącz teraz na dole.

Nowe okno będzie Cmd pojawi się okno i automatycznie zalogujesz się do instancji SQL Server za pomocą sqlcmd klient:

Jak pokazano w komentarzu w górnej części okna, możesz w dowolnym momencie ręcznie połączyć się z SQL Server za pomocą sqlcmd klient wpisując:

sqlcmd -S <yourhostname> -E

Aby wyjść z bieżącej sesji SQL, wpisz:

EXIT


Konfigurowanie SQL Server w systemie macOS

Chociaż firma Microsoft nie zapewnia natywnego instalatora dla systemu macOS, obsługuje uruchamianie programu SQL Server w systemie macOS za pośrednictwem platformy Docker. Główny kontener Docker SQL Server jest zbudowany przy użyciu kontenera Linux, co pozwala każdemu hostowi obsługującemu kontenery Docker na uruchomienie serwera bazy danych.

Aby pomyślnie uruchomić obraz, potrzebujesz co najmniej 2 GB pamięci (prawdopodobnie co najmniej trochę więcej), jednak sam Docker wymaga co najmniej 4 GB pamięci.

Aby rozpocząć, upewnij się, że masz w swoim systemie Docker. Docker Desktop dla komputerów Mac zawiera Docker Engine i inne powiązane aplikacje. Jeśli nie masz jeszcze zainstalowanego Dockera, postępuj zgodnie z instrukcjami zawartymi w powyższym linku.

Po uruchomieniu platformy Docker możesz pobrać obraz platformy Docker SQL Server z Microsoft Container Registry, wpisując:

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

Spowoduje to pobranie wszystkich wymaganych warstw obrazu do systemu lokalnego, umożliwiając szybsze uruchamianie.

Gdy będziesz gotowy do uruchomienia kontenera, wpisz następujące polecenie.

Pamiętaj, aby zastąpić z wartością zamierzonego hasła i wybierz wartość zgodną z zasadami dotyczącymi haseł obrazu. W chwili pisania tego tekstu zasada jest zdefiniowana jako:„Hasło musi mieć co najmniej 8 znaków i zawierać znaki z trzech z następujących czterech zestawów:wielkie litery, małe litery, cyfry o podstawie 10 i symbole.”:

docker run --env "ACCEPT_EULA=Y" --env "SA_PASSWORD=<password>" --publish 1433:1433 --name mssql --hostname mssql --detach mcr.microsoft.com/mssql/server:2019-latest

Kontener SQL Server zostanie uruchomiony w tle. Wyświetlany ciąg znaków to identyfikator nowego kontenera.

Możesz sprawdzić, czy kontener jest uruchomiony, wpisując:

docker ps -a
CONTAINER ID   IMAGE                                        COMMAND                  CREATED          STATUS                      PORTS                    NAMESffa9ef357b5c   mcr.microsoft.com/mssql/server:2019-latest   "/opt/mssql/bin/perm…"   2 minutes ago    Up 2 minutes                0.0.0.0:1433->1433/tcp   mssqlae00765e36fb   hello-world                                  "/hello"                 24 minutes ago   Exited (0) 24 minutes ago                            dreamy_swanson

Powinieneś zobaczyć mssql pojemnik na liście. Jeśli kontener nie działa lub masz problemy, możesz spróbować przejrzeć jego dzienniki, aby sprawdzić, czy są jakieś pomocne komunikaty:

docker logs mssql

Kontener SQL Server ma nie tylko zainstalowany serwer bazy danych, ale także niektóre z typowych dostępnych narzędzi, w tym sqlcmd klient wiersza poleceń. Aby użyć tego klienta do połączenia z instancją bazy danych, możesz użyć docker exec aby uzyskać dostęp do polecenia i uwierzytelnić się w bazie danych:

docker exec --interactive --tty mssql /opt/mssql-tools/bin/sqlcmd -U SA -S 127.0.0.1 -P "<password>"

Zostaniesz uwierzytelniony na serwerze SQL Server wewnątrz kontenera i wrzucony do powłoki SQL. Możesz sprawdzić, czy wszystko działa, wpisując:

SELECT @@VERSION;GO
 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ Microsoft SQL Server 2019 (RTM-CU9) (KB5000642) - 15.0.4102.2 (X64)    Jan 25 2021 20:16:12    Copyright (C) 2019 Microsoft Corporation    Developer Edition (64-bit) on Linux (Ubuntu 18.04.5 LTS) <X64>  (1 rows affected)

Aby wyjść z sesji SQL i wrócić do normalnej powłoki, wpisz:

EXIT

Aby zamknąć kontener SQL Server po zakończeniu, możesz go zatrzymać, wpisując:

docker stop mssql

Aby usunąć instancję kontenera (w tym wszystkie dane w środku!), wpisz:

docker rm mssql

Aby zachować dane w kontenerze SQL Server, możesz użyć jednej z technik opisanych w dokumentacji Microsoft lub zapoznać się z dokumentacją Dockera dotyczącą używania woluminów danych z kontenerami.



Konfigurowanie SQL Server w systemie Linux

Metody instalacji różnią się w zależności od używanej dystrybucji Linuksa. Postępuj zgodnie z sekcją poniżej, która pasuje do twojej dystrybucji Linuksa. Istnieją również instrukcje dotyczące korzystania z Dockera, jeśli wolisz taką konfigurację lub chcesz użyć dystrybucji, której nie ma na liście.

  • Ubuntu
  • CentOS i Red Hat
  • Z Dockerem

Ubuntu

Najłatwiejszym sposobem zainstalowania SQL Server na Ubuntu 20.04 jest instalacja z dedykowanych repozytoriów dostarczonych przez Microsoft. Twoja maszyna musi mieć co najmniej 2 GB pamięci, aby pomyślnie zainstalować i uruchomić niezbędne oprogramowanie.

Aby rozpocząć, dodaj nową definicję repozytorium do swojego systemu, wpisując:

sudo add-apt-repository "$(wget --quiet -O - https://packages.microsoft.com/config/ubuntu/18.04/mssql-server-2019.list)"

Musisz również dodać osobne repozytorium, aby uzyskać dostęp do sqlcmd narzędzia binarne i inne:

sudo add-apt-repository "$(wget --quiet -O - https://packages.microsoft.com/config/ubuntu/20.04/prod.list)"

Następnie dodaj klucz podpisywania pakietu Microsoft do apt aby ufa pakietom w nowym repozytorium:

wget --quiet -O - https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -

Po skonfigurowaniu repozytorium możesz zainstalować SQL Server i sqlcmd klienta wiersza poleceń, wpisując:

sudo apt install mssql-server mssql-tools unixodbc-dev

Po zakończeniu instalacji musisz skonfigurować nową instancję bazy danych. Aby to zrobić, uruchom dołączoną konfigurację mssql-conf skrypt do ustawienia niektórych podstawowych właściwości nowego systemu:

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

Zostaniesz poproszony o szereg pytań, aby skonfigurować serwer bazy danych.

Najpierw zapyta, jakiej wersji serwera SQL chcesz użyć:

Choose an edition of SQL Server:  1) Evaluation (free, no production use rights, 180-day limit)  2) Developer (free, no production use rights)  3) Express (free)  4) Web (PAID)  5) Standard (PAID)  6) Enterprise (PAID) - CPU Core utilization restricted to 20 physical/40 hyperthreaded  7) Enterprise Core (PAID) - CPU Core utilization up to Operating System Maximum  8) I bought a license through a retail sales channel and have a product key to enter.Details about editions can be found athttps://go.microsoft.com/fwlink/?LinkId=2109348&clcid=0x409Use of PAID editions of this software requires separate licensing through aMicrosoft Volume Licensing program.By choosing a PAID edition, you are verifying that you have the appropriatenumber of licenses in place to install and run this software.Enter your edition(1-8):

Jeśli masz płatną licencję, możesz wybrać odpowiednią wersję. Jeśli używasz serwera w środowisku nieprodukcyjnym, możesz bezpiecznie wybrać wersję programistyczną.

Następnie musisz ponownie zaakceptować postanowienia licencyjne:

The license terms for this product can be found in/usr/share/doc/mssql-server or downloaded from:https://go.microsoft.com/fwlink/?LinkId=2104294&clcid=0x409The privacy statement can be viewed at:https://go.microsoft.com/fwlink/?LinkId=853010&clcid=0x409Do you accept the license terms? [Yes/No]:

Na koniec musisz ustawić i potwierdzić hasło do konta administratora systemu SQL Server (w wielu miejscach nazywanego kontem SA):

Enter the SQL Server system administrator password:Confirm the SQL Server system administrator password:

Aby użyć sqlcmd klienta do łączenia się z instancją SQL Server, najłatwiej jest dodać mssql-tools katalog binarny do Twojej PATH . Aby to skonfigurować, wpisz:

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

Następnie zaczerpnij jeden z dwóch powyższych plików, aby ocenić nową PATH dla bieżącej sesji:

source ~/.bashrc

Możesz teraz połączyć się z instancją bazy danych, wpisując:

sqlcmd -U SA -S 127.0.0.1

Zostaniesz poproszony o podanie wcześniej skonfigurowanego hasła. Po pomyślnym uwierzytelnieniu zostaniesz przeniesiony do powłoki SQL. Tutaj możesz sprawdzić, czy wszystko działa, drukując wersję serwera:

SELECT @@VERSIONGO
 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ Microsoft SQL Server 2019 (RTM-CU9) (KB5000642) - 15.0.4102.2 (X64)    Jan 25 2021 20:16:12    Copyright (C) 2019 Microsoft Corporation    Developer Edition (64-bit) on Linux (Ubuntu 20.04.2 LTS) <X64>  (1 rows affected)

Aby wyjść z powłoki SQL i wrócić do wiersza poleceń, możesz wpisać:

EXIT


CentOS i Red Hat

Najprostszym sposobem na zainstalowanie SQL Server na CentOS lub Red Hat jest skorzystanie z repozytoriów dostarczonych przez Microsoft. Hosty z systemem Linux muszą mieć co najmniej 2 GB pamięci, aby zainstalować i uruchomić SQL Server.

Przed zainstalowaniem programu SQL Server należy zainstalować i skonfigurować jego zależności. Aby kontynuować, potrzebujemy zarówno Pythona 2, jak i OpenSSL 10:

sudo yum install python2 compat-openssl10

Po zainstalowaniu Pythona 2 skonfiguruj system tak, aby używał go jako domyślnej instancji Pythona:

sudo alternatives --config python

Z poniższej listy wybierz numer związany z instalacją Pythona 2. W poniższym przykładzie będzie to opcja 2:

 There are 2 programs which provide 'python'.    Selection    Command ----------------------------------------------- *+ 1           /usr/libexec/no-python    2           /usr/bin/python2  Enter to keep the current selection[+], or type selection number: 2

Mając istniejące zależności, możesz teraz skonfigurować repozytorium SQL Server YUM:

sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/$(rpm --eval %{rhel})/mssql-server-2019.repo

Następnie musisz skonfigurować dodatkowe repozytorium, aby uzyskać dostęp do sqlcmd i inne narzędzia:

sudo curl -o /etc/yum.repos.d/msprod.repo https://packages.microsoft.com/config/rhel/$(rpm --eval %{rhel})/prod.repo

Po skonfigurowaniu repozytoriów zainstaluj SQL Server, wpisując:

sudo yum install mssql-server mssql-tools unixODBC-devel

Po zakończeniu instalacji musisz skonfigurować nową instancję bazy danych. Aby to zrobić, uruchom dołączoną konfigurację mssql-conf skrypt do ustawienia niektórych podstawowych właściwości nowego systemu:

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

Zostaniesz poproszony o szereg pytań, aby skonfigurować serwer bazy danych.

Najpierw zapyta, jakiej wersji serwera SQL chcesz użyć:

Choose an edition of SQL Server:  1) Evaluation (free, no production use rights, 180-day limit)  2) Developer (free, no production use rights)  3) Express (free)  4) Web (PAID)  5) Standard (PAID)  6) Enterprise (PAID) - CPU Core utilization restricted to 20 physical/40 hyperthreaded  7) Enterprise Core (PAID) - CPU Core utilization up to Operating System Maximum  8) I bought a license through a retail sales channel and have a product key to enter.Details about editions can be found athttps://go.microsoft.com/fwlink/?LinkId=2109348&clcid=0x409Use of PAID editions of this software requires separate licensing through aMicrosoft Volume Licensing program.By choosing a PAID edition, you are verifying that you have the appropriatenumber of licenses in place to install and run this software.Enter your edition(1-8):

Jeśli masz płatną licencję, możesz wybrać odpowiednią wersję. Jeśli używasz serwera w środowisku nieprodukcyjnym, możesz bezpiecznie wybrać wersję programistyczną.

Następnie musisz ponownie zaakceptować postanowienia licencyjne:

The license terms for this product can be found in/usr/share/doc/mssql-server or downloaded from:https://go.microsoft.com/fwlink/?LinkId=2104294&clcid=0x409The privacy statement can be viewed at:https://go.microsoft.com/fwlink/?LinkId=853010&clcid=0x409Do you accept the license terms? [Yes/No]:

Na koniec musisz ustawić i potwierdzić hasło do konta administratora systemu SQL Server (w wielu miejscach nazywanego kontem SA):

Enter the SQL Server system administrator password:Confirm the SQL Server system administrator password:

Aby użyć sqlcmd klienta do łączenia się z instancją SQL Server, najłatwiej jest dodać mssql-tools katalog binarny do Twojej PATH . Aby to skonfigurować, wpisz:

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

Następnie zaczerpnij jeden z dwóch powyższych plików, aby ocenić nową PATH dla bieżącej sesji:

source ~/.bashrc

Możesz teraz połączyć się z instancją bazy danych, wpisując:

sqlcmd -U SA -S 127.0.0.1

Zostaniesz poproszony o podanie wcześniej skonfigurowanego hasła. Po pomyślnym uwierzytelnieniu zostaniesz przeniesiony do powłoki SQL. Tutaj możesz sprawdzić, czy wszystko działa, drukując wersję serwera:

SELECT @@VERSIONGO
 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ Microsoft SQL Server 2019 (RTM-CU9) (KB5000642) - 15.0.4102.2 (X64)    Jan 25 2021 20:16:12    Copyright (C) 2019 Microsoft Corporation    Developer Edition (64-bit) on Linux (CentOS Linux 8) <X64>  (1 rows affected)

Aby wyjść z powłoki SQL i wrócić do wiersza poleceń, możesz wpisać:

EXIT


Z Dockerem

Jeśli używasz dystrybucji Linuksa, dla której Microsoft nie dostarcza pakietów lub jeśli po prostu wolisz, inną opcją jest uruchomienie SQL Server z Dockerem. Aby pomyślnie uruchomić obraz, potrzebujesz co najmniej 2 GB pamięci (prawdopodobnie co najmniej trochę więcej).

Aby rozpocząć, upewnij się, że masz w swoim systemie silnik Docker Engine. Szczegółowe instrukcje dotyczące różnych platform można znaleźć w dokumentacji Docker Engine.

Po uruchomieniu platformy Docker możesz pobrać obraz platformy Docker SQL Server z Microsoft Container Registry, wpisując:

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

Spowoduje to pobranie wszystkich wymaganych warstw obrazu do systemu lokalnego, umożliwiając szybsze uruchamianie.

Gdy będziesz gotowy do uruchomienia kontenera, wpisz następujące polecenie.

Pamiętaj, aby zastąpić z wartością zamierzonego hasła i wybierz wartość zgodną z zasadami dotyczącymi haseł obrazu. W chwili pisania tego tekstu zasada jest zdefiniowana jako:„Hasło musi mieć co najmniej 8 znaków i zawierać znaki z trzech z następujących czterech zestawów:wielkie litery, małe litery, cyfry o podstawie 10 i symbole.”:

sudo docker run --env "ACCEPT_EULA=Y" --env "SA_PASSWORD=<password>" --publish 1433:1433 --name mssql --hostname mssql --detach mcr.microsoft.com/mssql/server:2019-latest

Kontener SQL Server zostanie uruchomiony w tle. Wyświetlany ciąg znaków to identyfikator nowego kontenera.

Możesz sprawdzić, czy kontener jest uruchomiony, wpisując:

sudo docker ps -a
CONTAINER ID   IMAGE                                        COMMAND                  CREATED          STATUS                      PORTS                    NAMESffa9ef357b5c   mcr.microsoft.com/mssql/server:2019-latest   "/opt/mssql/bin/perm…"   2 minutes ago    Up 2 minutes                0.0.0.0:1433->1433/tcp   mssqlae00765e36fb   hello-world                                  "/hello"                 24 minutes ago   Exited (0) 24 minutes ago                            dreamy_swanson

Powinieneś zobaczyć mssql pojemnik na liście. Jeśli kontener nie działa lub masz problemy, możesz spróbować przejrzeć jego dzienniki, aby sprawdzić, czy są jakieś pomocne komunikaty:

sudo docker logs mssql

Kontener SQL Server ma nie tylko zainstalowany serwer bazy danych, ale także niektóre z typowych dostępnych narzędzi, w tym sqlcmd klient wiersza poleceń. Aby użyć tego klienta do połączenia z instancją bazy danych, możesz użyć docker exec aby uzyskać dostęp do polecenia i uwierzytelnić się w bazie danych:

sudo docker exec --interactive --tty mssql /opt/mssql-tools/bin/sqlcmd -U SA -S 127.0.0.1 -P "<password>"

Zostaniesz uwierzytelniony na serwerze SQL Server wewnątrz kontenera i wrzucony do powłoki SQL. Możesz sprawdzić, czy wszystko działa, wpisując:

SELECT @@VERSION;GO
 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ Microsoft SQL Server 2019 (RTM-CU9) (KB5000642) - 15.0.4102.2 (X64)    Jan 25 2021 20:16:12    Copyright (C) 2019 Microsoft Corporation    Developer Edition (64-bit) on Linux (Ubuntu 18.04.5 LTS) <X64>  (1 rows affected)

Aby wyjść z sesji SQL i wrócić do normalnej powłoki, wpisz:

EXIT

Aby zamknąć kontener SQL Server po zakończeniu, możesz go zatrzymać, wpisując:

sudo docker stop mssql

Aby usunąć instancję kontenera (w tym wszystkie dane w środku!), wpisz:

sudo docker rm mssql

Aby zachować dane w kontenerze SQL Server, możesz użyć jednej z technik opisanych w dokumentacji Microsoft lub zapoznać się z dokumentacją Dockera dotyczącą używania woluminów danych z kontenerami.





  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Inna reprezentacja UUID w Java Hibernate i SQL Server

  2. Jak zaimportować plik Excel do SQL Server?

  3. Jak używać SqlCommand do tworzenia bazy danych ze sparametryzowaną nazwą bazy danych?

  4. Napraw komunikat 8117 „Operand typ danych varchar jest nieprawidłowy dla operatora sumy” w SQL Server

  5. konwersja znacznika czasu Epoch na serwer sql (format czytelny dla człowieka)