Połączenie do maszyny wirtualnej z programem SQL Server na platformie Azure

Dotyczy:SQL Server na maszynie wirtualnej platformy Azure

Omówienie

W tym artykule opisano sposób nawiązywania połączenia z usługą SQL na maszynie wirtualnej platformy Azure. Obejmuje on niektóre ogólne scenariusze łączności. Jeśli musisz rozwiązać problemy lub skonfigurować łączność poza portalem, zapoznaj się z konfiguracją ręczną na końcu tego tematu.

Jeśli wolisz zapoznać się z pełnym przewodnikiem dotyczącym aprowizacji i łączności, zobacz Aprowizowanie maszyny wirtualnej z programem SQL Server na platformie Azure.

scenariusze Połączenie ion

Sposób, w jaki klient nawiązuje połączenie z maszyną wirtualną z programem SQL Server, różni się w zależności od lokalizacji klienta i konfiguracji sieci.

Jeśli aprowizujesz maszynę wirtualną z programem SQL Server w witrynie Azure Portal, możesz określić typ łączności SQL.

Screenshot showing the public SQL connectivity option during provisioning.

Dostępne są następujące opcje łączności:

Opcja Opis
Public Połączenie do programu SQL Server przez Internet.
Private Połączenie do programu SQL Server w tej samej sieci wirtualnej.
Lokalnych Połączenie do programu SQL Server lokalnie na tej samej maszynie wirtualnej.

W poniższych sekcjach opisano bardziej szczegółowo opcje publiczne i prywatne .

Łączenie się z programem SQL Server przez Internet

Jeśli chcesz nawiązać połączenie z aparatem bazy danych programu SQL Server z Internetu, wybierz pozycję Publiczny dla typu łączności SQL w portalu podczas aprowizacji. Portal automatycznie wykonuje następujące czynności:

  • Włącza protokół TCP/IP dla programu SQL Server.
  • Konfiguruje regułę zapory, aby otworzyć port TCP programu SQL Server (domyślnie 1433).
  • Włącza uwierzytelnianie programu SQL Server wymagane do dostępu publicznego.
  • Konfiguruje sieciowa grupa zabezpieczeń na maszynie wirtualnej do całego ruchu TCP na porcie programu SQL Server.

Ważne

Obrazy maszyn wirtualnych dla wersji SQL Server Developer i Express nie włączają automatycznie protokołu TCP/IP. W przypadku wersji Developer i Express należy użyć programu SQL Server Configuration Manager, aby ręcznie włączyć protokół TCP/IP po utworzeniu maszyny wirtualnej.

Każdy klient z dostępem do Internetu może nawiązać połączenie z wystąpieniem programu SQL Server, określając publiczny adres IP maszyny wirtualnej lub dowolną etykietę DNS przypisaną do tego adresu IP. Jeśli port programu SQL Server to 1433, nie musisz określać go w parametry połączenia. Poniższe parametry połączenia łączą się z maszyną wirtualną SQL z etykietą sqlvmlabel.eastus.cloudapp.azure.com DNS przy użyciu uwierzytelniania SQL (można również użyć publicznego adresu IP).

Server=sqlvmlabel.eastus.cloudapp.azure.com;Integrated Security=false;User ID=<login_name>;Password=<your_password>

Mimo że ten ciąg umożliwia łączność dla klientów przez Internet, nie oznacza to, że każda osoba może połączyć się z wystąpieniem programu SQL Server. Klienci zewnętrzni muszą używać poprawnej nazwy użytkownika i hasła. Jednak w przypadku dodatkowych zabezpieczeń można uniknąć dobrze znanego portu 1433. Jeśli na przykład skonfigurowano program SQL Server do nasłuchiwania na porcie 1500 i ustanawiania odpowiednich reguł zapory i sieciowej grupy zabezpieczeń, możesz nawiązać połączenie, dołączając numer portu do nazwy serwera. Poniższy przykład zmienia poprzedni, dodając niestandardowy numer portu 1500 do nazwy serwera:

Server=sqlvmlabel.eastus.cloudapp.azure.com,1500;Integrated Security=false;User ID=<login_name>;Password=<your_password>"

Uwaga

Podczas wykonywania zapytań dotyczących programu SQL Server na maszynie wirtualnej przez Internet wszystkie dane wychodzące z centrum danych platformy Azure podlegają normalnym cenom transferów danych wychodzących.

Łączenie się z programem SQL Server w ramach sieci wirtualnej

Po wybraniu opcji Prywatny dla typu łączności SQL w portalu platforma Azure konfiguruje większość ustawień identycznych z publicznymi. Jedną z różnic jest to, że nie ma reguły sieciowej grupy zabezpieczeń zezwalających na ruch zewnętrzny na porcie programu SQL Server (domyślnie 1433).

Ważne

Obrazy maszyn wirtualnych dla wersji SQL Server Developer i Express nie włączają automatycznie protokołu TCP/IP. W przypadku wersji Developer i Express należy użyć programu SQL Server Configuration Manager, aby ręcznie włączyć protokół TCP/IP po utworzeniu maszyny wirtualnej.

Łączność prywatna jest często używana w połączeniu z siecią wirtualną, co umożliwia kilka scenariuszy. Maszyny wirtualne można połączyć w tej samej sieci wirtualnej, nawet jeśli te maszyny wirtualne istnieją w różnych grupach zasobów. Za pomocą sieci VPN typu lokacja-lokacja można utworzyć architekturę hybrydową łączącą maszyny wirtualne z sieciami lokalnymi i maszynami.

Sieci wirtualne umożliwiają również dołączanie maszyn wirtualnych platformy Azure do domeny. Jest to jedyny sposób używania uwierzytelniania systemu Windows do programu SQL Server. Inne scenariusze połączeń wymagają uwierzytelniania SQL z nazwami użytkowników i hasłami.

Zakładając, że skonfigurowano system DNS w sieci wirtualnej, możesz nawiązać połączenie z wystąpieniem programu SQL Server, określając nazwę komputera maszyny wirtualnej z programem SQL Server w parametry połączenia. W poniższym przykładzie założono również, że skonfigurowano uwierzytelnianie systemu Windows i że użytkownik otrzymał dostęp do wystąpienia programu SQL Server.

Server=mysqlvm;Integrated Security=true

Włączanie protokołu TCP/IP dla wersji Developer i Express

Podczas zmieniania ustawień łączności z programem SQL Server platforma Azure nie włącza automatycznie protokołu TCP/IP dla wersji SQL Server Developer i Express. W poniższych krokach omówiono, jak ręcznie włączyć protokół TCP/IP w celu zdalnego nawiązania połączenia przy użyciu adresu IP.

Najpierw połącz się z maszyną wirtualną programu SQL Server przy użyciu pulpitu zdalnego.

  1. Po utworzeniu i uruchomieniu maszyny wirtualnej platformy Azure wybierz pozycję Maszyna wirtualna, a następnie wybierz nową maszynę wirtualną.

  2. Wybierz pozycję Połączenie, a następnie z listy rozwijanej wybierz pozycję RDP, aby pobrać plik RDP.

    Connect to VM in portal

  3. Otwórz plik RDP, który przeglądarka pobiera dla maszyny wirtualnej.

  4. Funkcja Podłączanie pulpitu zdalnego powiadomi, że nie można zidentyfikować wydawcy tego połączenia zdalnego. Kliknij pozycję Połącz, aby kontynuować.

  5. W oknie dialogowym Zabezpieczenia systemu Windows kliknij pozycję Użyj innego konta. Może być konieczne kliknięcie pozycji Więcej opcji, aby ją wyświetlić. Podaj nazwę użytkownika i hasło, które zostały skonfigurowane podczas tworzenia maszyny wirtualnej. Musisz dodać ukośnik odwrotny przed nazwą użytkownika.

    Remote desktop authentication

  6. Kliknij przycisk OK, aby nawiązać połączenie.

Następnie włącz protokół TCP/IP za pomocą programu SQL Server Configuration Manager.

  1. Po nawiązaniu połączenia z maszyną wirtualną przy użyciu pulpitu zdalnego wyszukaj pozycję Menedżer konfiguracji:

    Open SSCM

  2. W Menedżerze konfiguracji programu SQL Server w okienku konsoli rozwiń pozycję Konfiguracja sieciowa programu SQL Server.

  3. W okienku konsoli kliknij pozycję Protokoły dla serwera MSSQLSERVER (domyślna nazwa wystąpienia). W okienku szczegółów kliknij prawym przyciskiem myszy pozycję TCP i kliknij pozycję Włącz , jeśli nie jest jeszcze włączona.

    Enable TCP

  4. W okienku konsoli kliknij pozycję Usługi programu SQL Server. W okienku szczegółów kliknij prawym przyciskiem myszy pozycję SQL Server (nazwa wystąpienia) (domyślne wystąpienie to SQL Server (MSSQLSERVER)), a następnie kliknij przycisk Uruchom ponownie, aby zatrzymać i ponownie uruchomić wystąpienie programu SQL Server.

    Restart Database Engine

  5. Zamknij Menedżera konfiguracji programu SQL Server.

Aby uzyskać więcej informacji na temat włączana protokołów dla aparatu bazy danych programu SQL Server, zobacz Włączanie lub wyłączanie protokołu sieciowego serwera.

Nawiązywanie połączenia z programem SSMS

W poniższych krokach pokazano, jak utworzyć opcjonalną etykietę DNS dla maszyny wirtualnej platformy Azure, a następnie nawiązać połączenie z programem SQL Server Management Studio (SSMS).

Konfigurowanie etykiety DNS dla publicznego adresu IP

Aby połączyć się z aparatem bazy danych programu SQL Server z Internetu, rozważ utworzenie etykiety DNS dla publicznego adresu IP. Możesz połączyć się przy użyciu adresu IP, ale etykieta DNS tworzy rekord A, który jest łatwiejszy do zidentyfikowania i streszcza podstawowy publiczny adres IP.

Uwaga

Etykiety DNS nie są wymagane, jeśli planujesz tylko połączenie z wystąpieniem programu SQL Server w ramach tej samej sieci wirtualnej lub połączenie lokalne.

Aby utworzyć etykietę DNS, wybierz najpierw maszyny wirtualne w portalu. Wybierz maszynę wirtualną programu SQL Server, aby wyświetlić jej właściwości.

  1. W przeglądzie maszyny wirtualnej wybierz publiczny adres IP.

    public ip address

  2. We właściwościach publicznego adresu IP rozwiń sekcję Konfiguracja.

  3. Wprowadź nazwę etykiety DNS. Ta nazwa to rekord A, którego można użyć do nawiązania połączenia z maszyną wirtualną programu SQL Server przy użyciu nazwy, a nie bezpośrednio adresu IP.

  4. Wybierz przycisk zapisywania.

    dns label

Nawiązywanie połączenia z aparatem bazy danych z innego komputera

  1. Na komputerze podłączonym do Internetu otwórz program SQL Server Management Studio (SSMS). Jeśli nie masz programu SQL Server Management Studio, możesz pobrać go tutaj.

  2. W oknie dialogowym Connect to Server (Łączenie z serwerem) lub Connect to Database Engine (Łączenie z aparatem bazy danych) edytuj wartość Server name (Nazwa serwera). Wprowadź adres IP lub pełną nazwę DNS maszyny wirtualnej (określoną w poprzednim zadaniu). Możesz także dodać przecinek i podać port TCP programu SQL Server. Na przykład tutorial-sqlvm1.westus2.cloudapp.azure.com,1433.

  3. W polu Authentication (Uwierzytelnianie) wybierz opcję SQL Server Authentication (Uwierzytelnianie programu SQL Server).

  4. W polu Login (Logowanie) wpisz nazwę prawidłowego identyfikatora logowania SQL.

  5. W polu Password (Hasło) wpisz hasło logowania.

  6. Wybierz pozycję Połącz.

    ssms connect

Ręczna konfiguracja i rozwiązywanie problemów

Chociaż portal udostępnia opcje automatycznego konfigurowania łączności, warto wiedzieć, jak ręcznie skonfigurować łączność. Zrozumienie wymagań może również pomóc w rozwiązywaniu problemów.

W poniższej tabeli wymieniono wymagania dotyczące nawiązywania połączenia z programem SQL Server na maszynie wirtualnej platformy Azure.

Wymaganie opis
Włączanie trybu uwierzytelniania programu SQL Server Uwierzytelnianie programu SQL Server jest wymagane do zdalnego nawiązywania połączenia z maszyną wirtualną, chyba że skonfigurowano usługę Active Directory w sieci wirtualnej.
Tworzenie identyfikatora logowania SQL Jeśli używasz uwierzytelniania SQL, potrzebujesz identyfikatora logowania SQL z nazwą użytkownika i hasłem, który ma również uprawnienia do docelowej bazy danych.
Włączanie protokołu TCP/IP Program SQL Server musi zezwalać na połączenia za pośrednictwem protokołu TCP.
Włączanie reguły zapory dla portu programu SQL Server Zapora na maszynie wirtualnej musi zezwalać na ruch przychodzący na porcie programu SQL Server (domyślnie 1433).
Tworzenie reguły sieciowej grupy zabezpieczeń dla protokołu TCP 1433 Musisz zezwolić maszynie wirtualnej na odbieranie ruchu na porcie programu SQL Server (domyślnie 1433), jeśli chcesz nawiązać połączenie za pośrednictwem Internetu. Połączenia lokalne i tylko z siecią wirtualną nie wymagają tego. Jest to jedyny krok wymagany w witrynie Azure Portal.

Napiwek

Kroki opisane w poprzedniej tabeli są wykonywane podczas konfigurowania łączności w portalu. Wykonaj te kroki tylko, aby potwierdzić konfigurację lub skonfigurować łączność ręcznie dla programu SQL Server.

Połączenie do programu SQL Server na maszynie wirtualnej platformy Azure przy użyciu identyfikatora Entra firmy Microsoft

Włącz uwierzytelnianie przy użyciu identyfikatora Entra firmy Microsoft (dawniej Azure Active Directory) dla programu SQL Server na maszynach wirtualnych platformy Azure za pośrednictwem witryny Azure Portal. Program SQL Server z uwierzytelnianiem entra firmy Microsoft jest obsługiwany tylko w programie SQL Server 2022 (16.x) i nowszych wersjach.

Następne kroki

Aby wyświetlić instrukcje aprowizacji wraz z tymi krokami łączności, zobacz Aprowizowanie maszyny wirtualnej z programem SQL Server na platformie Azure.

Inne tematy dotyczące uruchamiania programu SQL Server na maszynach wirtualnych platformy Azure można znaleźć w temacie SQL Server on Azure virtual machines (Program SQL Server na maszynach wirtualnych platformy Azure).