Konfigurowanie usługi Azure SQL Database i wystąpienia usługi Azure SQL Managed Instance

Ukończone

Sprawdzono, czy wdrożenie zakończyło się pomyślnie, i wiesz, jakie zasoby są dostępne. Możesz teraz chcieć skonfigurować wystąpienie zarządzane SQL, bazę danych SQL lub bazy danych w ramach wystąpienia zarządzanego. Te bazy danych są nazywane zarządzanymi bazami danych.

Konfigurowanie wystąpienia usługi Azure SQL Managed Instance

Usługa Azure SQL Managed Instance to w zasadzie wystąpienie zarządzane programu SQL Server. Wiele konfiguracji dostępnych w programie SQL Server ma zastosowanie w jej przypadku. Można na przykład skonfigurować używanie i sp_configure niektóre globalne flagi śledzenia. Dostępne są również opcje dotyczące tempdb, modeli master. Masz kontrolę nad łącznością sieciową i konfiguracją.

Konfiguracja bazy danych

W przypadku zarządzanych baz danych w usługach Azure SQL Managed Instance i Azure SQL Database dostępne są opcje z poleceniem ALTER DATABASE. Dostępne są opcje SET i można wybrać wartość dbcompat. Ta wartość może pomóc w migracjach. Możesz również użyć polecenia ALTER DATABASE, aby zmienić wersję lub warstwę usługi.

W usłudze Azure SQL Database nie masz dostępu do źródłowej konfiguracji pliku. W usłudze Azure SQL Managed Instance można przeprowadzić konserwację plików. Podobnie jak w przypadku usługi SQL Managed Instance, dostępne są opcje łączności sieciowej, konfiguracji sieci i zarządzania przestrzenią.

W usłudze Azure SQL Database jest włączone wykrywanie nieaktualnych stron, a domyślne sortowanie SQL_Latin1_General_CP1_CI_AS serwera jest zawsze używane. Ponadto poniżej przedstawiono opcje domyślnie ustawione jako ON:

  • SNAPSHOT_ISOLATION_STATE
  • READ_COMMITTED_SNAPSHOT
  • FULL RECOVERY
  • CHECKSUM
  • QUERY_STORE
  • TDE
  • ACCELERATED_DATABASE_RECOVERY

Zarządzanie zadaniami

Agent programu SQL Server zapewnia system konfigurowania i planowania dla użytkowników programu SQL Server. Aby uzyskać równoważną funkcjonalność w usłudze Azure SQL, można skorzystać z następujących opcji:

Agent SQL w usłudze SQL Managed Instance

Agent SQL jest w pełni obsługiwaną usługą z usługą Azure SQL Managed Instance. Zadania agenta SQL są obsługiwane tylko dla kroków zadań T-SQL i SQL Server Integration Services. Kroki powłoki poleceń nie są obsługiwane. Mimo że alerty nie są obsługiwane, powiadomienia e-mail są obsługiwane za pośrednictwem poczty bazy danych.

Zadania elastyczne dla usługi SQL Database

Usługa Azure SQL Database nie obsługuje agenta programu SQL Server. Można jednak używać usługi agenta elastycznych zadań na platformie Azure do tworzenia i planowania zadań. Zadania to skrypty T-SQL, które można uruchamiać dla wielu baz danych, w tym wykonywania równoległego.

Azure Automation

Za pomocą usługi Azure Automation można organizować procesy za pomocą koncepcji nazywanej elementem Runbook. Element runbook może składać się z kodu, takiego jak kod programu PowerShell lub języka Python, i może zostać skierowany do dowolnego zasobu platformy Azure.

Opcje konfiguracji z ograniczeniami

Usługi Azure SQL Managed Instance i Azure SQL Database ograniczają następujące konfiguracje. Ograniczenia te mogą wpływać na sposób uruchamiania pewnych zadań.

  • Nie można zatrzymywać ani ponownie uruchamiać serwerów.
  • Nie można użyć:
    • Natychmiastowe inicjowanie pliku.
    • Zablokowane strony w pamięci.
    • FILESTREAM i grupy dostępności.
    • Sortowanie serwera. W usłudze SQL Managed Instance można wybrać sortowanie serwera podczas wdrażania, ale nie zmieniać go.
    • Parametry uruchamiania.
    • Raportowanie błędów i opinie klientów.
    • ALTER SERVER CONFIGURATION.
    • Konfiguracja ERRORLOG.
  • Zabezpieczenia trybu mieszanego są wymuszane.
  • Inspekcja logowania odbywa się za pośrednictwem inspekcji SQL.
  • Konto serwera proxy nie ma zastosowania.

Usługi Azure SQL Managed Instance i SQL Database są ofertami PaaS. Ograniczenie tych opcji nie powinno hamować możliwości pełnego korzystania z usługi zarządzanej programu SQL Server.

Zarządzanie magazynem

W przypadku usługi Azure SQL Managed Instance istnieje możliwy maksymalny rozmiar magazynu dozwolony dla wystąpienia na podstawie wybranego celu slo. Możesz wybrać maksymalny magazyn dla wystąpienia do tego możliwego maksymalnego rozmiaru. Jeśli osiągniesz maksymalny rozmiar magazynu, może zostać wyświetlony komunikat 1105 dla zarządzanej bazy danych lub komunikat 1133 dla wystąpienia.

Podobnie jak w przypadku programu SQL Server rozmiar każdej nowej bazy danych zależy od rozmiaru modelowej bazy danych. Modelowa baza danych jest plikiem danych o rozmiarze 100 MB i plikiem dziennika o rozmiarze 8 MB. Podobnie jak w programie SQL Server, rozmiar modelu można skonfigurować. Możesz zmienić rozmiar i liczbę plików, ale nie masz kontroli nad ich lokalizacją fizyczną. Firma Microsoft zobowiązuje się zapewniać określoną wydajność operacji we/wy na podstawie wybranego wdrożenia. Ponadto ponieważ magazyn zdalny jest używany w warstwie usługi Ogólnego przeznaczenia, rozmiar pliku danych i pliku dziennika może mieć wpływ na wydajność.

W przypadku usługi Azure SQL Database istnieje możliwy maksymalny rozmiar plików bazy danych na podstawie wybranego celu slo. Możesz wybrać maksymalny rozmiar danych do tego możliwego maksymalnego rozmiaru. Wartość Maxsize dla plików bazy danych, zgodnie z definicją w kolumnie, może wzrosnąć do maksymalnego rozmiaru sys.database_files.max_sizedanych.

Aby zrozumieć tę koncepcję maksymalnego rozmiaru danych w porównaniu z wartością Maxsize, rozważmy przykład wdrożenia bazy danych ogólnego przeznaczenia o rozmiarze 1 TB (maksymalny rozmiar danych). W przypadku tego wdrożenia baza danych wymaga tylko ok. 500 GB, a nie 1 TB. Wraz ze wzrostem bazy danych i zbliżaniu się do maksymalnego rozmiaru danych, maksymalny rozmiar plików bazy danych również rośnie do poziomu 1 TB.

Dziennik transakcji jest dodatkiem do rozmiaru danych i jest uwzględniany w tym, co płacisz za magazyn. Jest on regularnie obcinany z powodu automatycznych kopii zapasowych, ponieważ przyspieszone odzyskiwanie bazy danych jest domyślnie włączone. Maksymalny rozmiar dziennika to zawsze 30% maksymalnego rozmiaru danych. Jeśli na przykład maksymalny rozmiar danych to 1 TB, maksymalny rozmiar dziennika transakcji wynosi 0,3 TB, a łączny maksymalny rozmiar danych i rozmiar dziennika to 1,3 TB.

Warstwa Hiperskala usługi Azure SQL Database różni się od innych warstw usług. Tworzy bazę danych, która początkowo wynosi 40 GB i automatycznie zwiększa rozmiar do limitu 100 TB. Ograniczenie rozmiaru dziennika transakcji jest stałe i wynosi 1 TB.

Architektura i zasady łączności

Część konfigurowania serwera logicznego usługi Azure SQL Database lub konfigurowania usługi Azure SQL Managed Instance obejmuje określenie trasy połączenia z bazami danych.

W przypadku usługi Azure SQL Managed Instance można wybrać typ połączenia lub zasady podczas wdrażania. W usłudze Azure SQL Database można wybrać typ połączenia po wdrożeniu.

Możesz zachować domyślny serwer proxy dla połączeń z zewnątrz i przekierowywać połączenia na platformie Azure lub skonfigurować coś innego.

Diagram of the connection policies in Azure SQL.

Na najwyższym poziomie w trybie proxy wszystkie połączenia są nawiązywane za pośrednictwem bramy. W trybie przekierowania po nawiązaniu połączenia i użyciu bramy połączenie może łączyć się bezpośrednio z bazą danych lub wystąpieniem zarządzanym. Brama znajduje się redirect-find-db na powyższej ilustracji.

Połączenie bezpośrednie (przekierowanie) umożliwia zmniejszenie opóźnienia i zwiększenie przepływności. Wymaga również otwarcia większej liczby portów, aby umożliwić komunikację przychodzącą i wychodzącą w zakresie od 11000 do 11999.

W następnym ćwiczeniu zobaczysz niektóre polecenia służące do konfigurowania usługi Azure SQL przy użyciu interfejsu wiersza polecenia platformy Azure. Następnie zapoznaj się z oceną zasad serwera proxy i przekierowywania połączeń.

Test wiedzy

1.

Jeśli maksymalny rozmiar danych w usłudze Azure SQL Database wynosi 10 GB, to jaki jest maksymalny rozmiar dziennika transakcji?

2.

Jakie są domyślne zasady połączeń dla usług Azure SQL Database i Azure SQL Managed Instance?