Udostępnij za pośrednictwem


Konfigurowanie programu SQL Server w systemie Linux za pomocą narzędzia mssql-conf

Dotyczy:programu SQL Server — Linux

mssql-conf to skrypt konfiguracji instalowany z programem SQL Server dla systemu Red Hat Enterprise Linux, SUSE Linux Enterprise Server i Ubuntu. Modyfikuje plik mssql.conf , w którym są przechowywane wartości konfiguracji.

mssql-conf to skrypt konfiguracji instalowany z programem SQL Server w systemie Linux. To narzędzie służy do ustawiania następujących parametrów:

Parametr Opis
Agent Włącz agenta programu SQL Server.
Uwierzytelnianie za pomocą systemu Windows Ustawienia uwierzytelniania usługi Active Directory systemu Windows Server.
Kolejność sortowania Ustaw nowe sortowanie dla programu SQL Server w systemie Linux.
Opinie klientów Wybierz, czy program SQL Server wysyła opinię do firmy Microsoft.
Profil poczty bazy danych Ustaw domyślny profil poczty bazy danych dla programu SQL Server w systemie Linux.
Domyślny katalog danych Zmień katalog domyślny dla nowych plików danych bazy danych programu SQL Server (.mdf).
Domyślny katalog logów Zmienia katalog domyślny dla nowych plików dziennika bazy danych programu SQL Server (ldf).
Domyślny katalog głównej bazy danych Zmienia domyślny katalog dla master bazy danych i plików dziennika.
Domyślna nazwa pliku bazy danych master Zmienia nazwę master plików bazy danych.
Domyślny katalog zrzutu Zmień domyślny katalog dla nowych zrzutów pamięci i innych plików rozwiązywania problemów.
Domyślny katalog dziennika błędów Zmienia katalog domyślny dla nowych plików dziennika błędów SQL Server, domyślnego śledzenia profilera, sesji kondycji systemu XE oraz plików sesji Hekaton XE.
Domyślny katalog kopii zapasowej Zmień katalog domyślny dla nowych plików kopii zapasowej.
Typ zrzutu Wybierz typ pliku zrzutu pamięci do zebrania.
Wydanie Ustaw wersję programu SQL Server.
Wysoka dostępność Włącz grupy dostępności.
Lokalny katalog inspekcji Ustaw katalog, aby dodać pliki inspekcji lokalnej.
ustawień regionalnych Ustaw ustawienia regionalne dla programu SQL Server do użycia.
Limit pamięci Ustaw limit pamięci dla programu SQL Server.
Ustawienia sieci Dodatkowe ustawienia sieciowe dla programu SQL Server.
Koordynator transakcji rozproszonych firmy Microsoft Konfigurowanie i rozwiązywanie problemów z MSDTC w systemie Linux.
Port TCP Zmień port, na którym program SQL Server nasłuchuje połączeń.
TLS Skonfiguruj zabezpieczenia na poziomie transportu.
flagi śledzenia Ustaw flagi śledzenia, których będzie używać usługa.
Parametr Opis
Agent Włączanie agenta programu SQL Server
Uwierzytelnianie za pomocą systemu Windows Ustawienia uwierzytelniania usługi Active Directory systemu Windows Server.
Kolejność sortowania Ustaw nowe sortowanie dla programu SQL Server w systemie Linux.
Opinie klientów Wybierz, czy program SQL Server wysyła opinię do firmy Microsoft.
Profil poczty bazy danych Ustaw domyślny profil poczty bazy danych dla programu SQL Server w systemie Linux.
Domyślny katalog danych Zmień katalog domyślny dla nowych plików danych bazy danych programu SQL Server (.mdf).
Domyślny katalog logów Zmienia katalog domyślny dla nowych plików dziennika bazy danych programu SQL Server (ldf).
Domyślny katalog plików bazy danych master Zmienia katalog domyślny dla master plików bazy danych w istniejącej instalacji SQL.
Domyślna nazwa pliku bazy danych master Zmienia nazwę master plików bazy danych.
Domyślny katalog zrzutu Zmień domyślny katalog dla nowych zrzutów pamięci i innych plików rozwiązywania problemów.
Domyślny katalog dziennika błędów Zmienia katalog domyślny dla nowych plików dziennika błędów SQL Server, domyślnego śledzenia profilera, sesji kondycji systemu XE oraz plików sesji Hekaton XE.
Domyślny katalog kopii zapasowej Zmień katalog domyślny dla nowych plików kopii zapasowej.
Typ zrzutu Wybierz typ pliku zrzutu pamięci do zebrania.
Wydanie Ustaw wersję programu SQL Server.
Wysoka dostępność Włącz grupy dostępności.
Lokalny katalog inspekcji Ustaw katalog, aby dodać pliki inspekcji lokalnej.
ustawień regionalnych Ustaw ustawienia regionalne dla programu SQL Server do użycia.
Limit pamięci Ustaw limit pamięci dla programu SQL Server.
Koordynator transakcji rozproszonych firmy Microsoft Konfigurowanie i rozwiązywanie problemów z MSDTC w systemie Linux.
Umowy EULA usług Machine Learning Services Zaakceptuj umowy EULA języka R i Python dla mlservices pakietów. Dotyczy tylko programu SQL Server 2019 (15.x).
Ustawienia sieci Dodatkowe ustawienia sieciowe dla programu SQL Server.
outboundnetworkaccess Włącz wychodzący dostęp sieciowy dla usług Machine Learning Services oraz rozszerzeń języka R, Python i Java.
Port TCP Zmień port, na którym program SQL Server nasłuchuje połączeń.
TLS Skonfiguruj zabezpieczenia na poziomie transportu.
flagi śledzenia Ustaw flagi śledzenia, których będzie używać usługa.
Parametr Opis
Agent Włączanie agenta programu SQL Server
Uwierzytelnij się przy użyciu Microsoft Entra ID Ustawienia uwierzytelniania za pomocą identyfikatora Entra firmy Microsoft (dawniej Azure Active Directory).
Uwierzytelnianie za pomocą systemu Windows Ustawienia uwierzytelniania usługi Active Directory systemu Windows Server.
Kolejność sortowania Ustaw nowe sortowanie dla programu SQL Server w systemie Linux.
Opinie klientów Wybierz, czy program SQL Server wysyła opinię do firmy Microsoft.
Profil poczty bazy danych Ustaw domyślny profil poczty bazy danych dla programu SQL Server w systemie Linux.
Domyślny katalog danych Zmień katalog domyślny dla nowych plików danych bazy danych programu SQL Server (.mdf).
Domyślny katalog logów Zmienia katalog domyślny dla nowych plików dziennika bazy danych programu SQL Server (ldf).
Domyślny katalog plików bazy danych master Zmienia katalog domyślny dla master plików bazy danych w istniejącej instalacji SQL.
Domyślna nazwa pliku bazy danych master Zmienia nazwę master plików bazy danych.
Domyślny katalog zrzutu Zmień domyślny katalog dla nowych zrzutów pamięci i innych plików rozwiązywania problemów.
Domyślny katalog dziennika błędów Zmienia katalog domyślny dla nowych plików dziennika błędów SQL Server, domyślnego śledzenia profilera, sesji kondycji systemu XE oraz plików sesji Hekaton XE.
Domyślny katalog kopii zapasowej Zmień katalog domyślny dla nowych plików kopii zapasowej.
Typ zrzutu Wybierz typ pliku zrzutu pamięci do zebrania.
Wydanie Ustaw wersję programu SQL Server.
Wysoka dostępność Włącz grupy dostępności.
Lokalny katalog inspekcji Ustaw katalog, aby dodać pliki inspekcji lokalnej.
ustawień regionalnych Ustaw ustawienia regionalne dla programu SQL Server do użycia.
Limit pamięci Ustaw limit pamięci dla programu SQL Server.
Koordynator transakcji rozproszonych firmy Microsoft Konfigurowanie i rozwiązywanie problemów z MSDTC w systemie Linux.
Umowy EULA usług Machine Learning Services Zaakceptuj umowy EULA języka R i Python dla mlservices pakietów. Dotyczy tylko programu SQL Server 2019 (15.x).
Ustawienia sieci Dodatkowe ustawienia sieciowe dla programu SQL Server.
Wychodzący dostęp sieciowy Włącz wychodzący dostęp sieciowy dla usług Machine Learning Services oraz rozszerzeń języka R, Python i Java.
Łącznik programu SQL Server Skonfiguruj poziom rejestrowania dla łącznika programu SQL Server.
Port TCP Zmień port, na którym program SQL Server nasłuchuje połączeń.
TLS Skonfiguruj zabezpieczenia na poziomie transportu.
flagi śledzenia Ustaw flagi śledzenia, których będzie używać usługa.
Parametr Opis
Agent Włączanie agenta programu SQL Server
Uwierzytelnij się przy użyciu Microsoft Entra ID Ustawienia uwierzytelniania za pomocą identyfikatora Entra firmy Microsoft (dawniej Azure Active Directory).
Uwierzytelnianie za pomocą systemu Windows Ustawienia uwierzytelniania usługi Active Directory systemu Windows Server.
Kolejność sortowania Ustaw nowe sortowanie dla programu SQL Server w systemie Linux.
Niestandardowe zasady haseł Zasady haseł wymuszają złożoność, wygaśnięcie i zmiany hasła.
Opinie klientów Wybierz, czy program SQL Server wysyła opinię do firmy Microsoft.
Profil poczty bazy danych Ustaw domyślny profil poczty bazy danych dla programu SQL Server w systemie Linux.
Domyślny katalog danych Zmień katalog domyślny dla nowych plików danych bazy danych programu SQL Server (.mdf).
Domyślny katalog logów Zmienia katalog domyślny dla nowych plików dziennika bazy danych programu SQL Server (ldf).
Domyślny katalog plików bazy danych master Zmienia katalog domyślny dla master plików bazy danych w istniejącej instalacji SQL.
Domyślna nazwa pliku bazy danych master Zmienia nazwę master plików bazy danych.
Domyślny katalog zrzutu Zmień domyślny katalog dla nowych zrzutów pamięci i innych plików rozwiązywania problemów.
Domyślny katalog dziennika błędów Zmienia katalog domyślny dla nowych plików dziennika błędów SQL Server, domyślnego śledzenia profilera, sesji kondycji systemu XE oraz plików sesji Hekaton XE.
Domyślny katalog kopii zapasowej Zmień katalog domyślny dla nowych plików kopii zapasowej.
Typ zrzutu Wybierz typ pliku zrzutu pamięci do zebrania.
Wydanie Ustaw wersję programu SQL Server.
Wysoka dostępność Włącz grupy dostępności.
Lokalny katalog inspekcji Ustaw katalog, aby dodać pliki inspekcji lokalnej.
ustawień regionalnych Ustaw ustawienia regionalne dla programu SQL Server do użycia.
Limit pamięci Ustaw limit pamięci dla programu SQL Server.
Koordynator transakcji rozproszonych firmy Microsoft Konfigurowanie i rozwiązywanie problemów z MSDTC w systemie Linux.
Umowy EULA usług Machine Learning Services Zaakceptuj umowy EULA języka R i Python dla mlservices pakietów. Dotyczy tylko programu SQL Server 2019 (15.x).
Ustawienia sieci Dodatkowe ustawienia sieciowe dla programu SQL Server.
Wychodzący dostęp sieciowy Włącz wychodzący dostęp sieciowy dla usług Machine Learning Services oraz rozszerzeń języka R, Python i Java.
Łącznik programu SQL Server Skonfiguruj poziom rejestrowania dla łącznika programu SQL Server.
Port TCP Zmień port, na którym program SQL Server nasłuchuje połączeń.
TLS Skonfiguruj zabezpieczenia na poziomie transportu.
flagi śledzenia Ustaw flagi śledzenia, których będzie używać usługa.

Wskazówka

Niektóre z tych ustawień można również skonfigurować za pomocą zmiennych środowiskowych. Aby uzyskać więcej informacji, zobacz Konfigurowanie ustawień programu SQL Server ze zmiennymi środowiskowymi w systemie Linux.

Porady dotyczące użycia

  • W przypadku zawsze włączonych grup dostępności i klastrów dysków udostępnionych zawsze wprowadź te same zmiany konfiguracji w każdym węźle.

  • W scenariuszu klastra dysków udostępnionych nie próbuj ponownie uruchamiać usługi mssql-server, aby zastosować zmiany. Program SQL Server działa jako aplikacja. Zamiast tego przełącz zasób w tryb offline, a następnie wróć do trybu online.

  • Te przykłady uruchamiają plik mssql-conf , określając pełną ścieżkę: /opt/mssql/bin/mssql-conf. Jeśli zamiast tego wybierzesz przejście do tej ścieżki, uruchom polecenie mssql-conf w kontekście bieżącego katalogu: ./mssql-conf.

  • Jeśli chcesz zmodyfikować mssql.conf plik wewnątrz kontenera, utwórz mssql.conf plik na hoście, na którym jest uruchomiony kontener z żądanymi ustawieniami, a następnie ponownie wdróż kontener. Na przykład następujący dodatek do mssql.conf pliku włącza program SQL Server Agent.

    [sqlagent]
    enabled = true
    

    Kontener można wdrożyć za pomocą następujących poleceń:

    docker run -e "ACCEPT_EULA=Y" -e "MSSQL_SA_PASSWORD=<password>" \
    -p 5433:1433 --name sql1 \
    -v /container/sql1:/var/opt/mssql \
    -d mcr.microsoft.com/mssql/server:2019-latest
    

    Ostrożność

    Hasło powinno być zgodne z domyślnymi zasadami haseł programu SQL Server. Domyślnie hasło musi mieć długość co najmniej ośmiu znaków i zawierać znaki z trzech z następujących czterech zestawów: wielkie litery, małe litery, cyfry podstawowe-10 i symbole. Hasła mogą mieć długość maksymalnie 128 znaków. Używaj haseł, które są tak długie i złożone, jak to możliwe.

    Aby uzyskać więcej informacji, zobacz Create the config files to be used by the SQL Server container (Tworzenie plików konfiguracji do użycia przez kontener programu SQL Server).

Włączanie agenta programu SQL Server

Ustawienie sqlagent.enabled włącza agenta programu SQL Server. Domyślnie program SQL Server Agent jest wyłączony. Jeśli sqlagent.enabled nie ma go w mssql.conf pliku ustawień, program SQL Server wewnętrznie zakłada, że program SQL Server Agent jest wyłączony.

Aby zmienić to ustawienie, wykonaj następujące kroki:

  1. Włącz agenta programu SQL Server:

    sudo /opt/mssql/bin/mssql-conf set sqlagent.enabled true
    
  2. Uruchom ponownie usługę PROGRAMU SQL Server:

    sudo systemctl restart mssql-server
    

Ustawianie domyślnego profilu poczty bazy danych dla programu SQL Server w systemie Linux

sqlagent.databasemailprofile pozwala ustawić domyślny profil DB Mail dla alertów e-mail.

sudo /opt/mssql/bin/mssql-conf set sqlagent.databasemailprofile <profile_name>

Dzienniki błędów agenta SQL

Ustawienia sqlagent.errorlogfile i sqlagent.errorlogginglevel umożliwiają ustawienie odpowiednio ścieżki pliku dziennika agenta SQL i poziomu rejestrowania.

sudo /opt/mssql/bin/mssql-conf set sqlagent.errorlogfile <path>

Poziomy rejestrowania Agenta SQL są wartościami maski bitów, które równe są:

  • 1 = Błędy
  • 2 = ostrzeżenia
  • 4 = Informacje

Jeśli chcesz przechwycić wszystkie poziomy, użyj wartości 7.

sudo /opt/mssql/bin/mssql-conf set sqlagent.errorlogginglevel <level>

Konfigurowanie uwierzytelniania Microsoft Entra

Począwszy od programu SQL Server 2022 (16.x), można skonfigurować identyfikator Entra firmy Microsoft dla programu SQL Server. Aby skonfigurować identyfikator Entra firmy Microsoft, należy zainstalować rozszerzenie platformy Azure dla programu SQL Server po instalacji programu SQL Server. Aby uzyskać informacje na temat konfigurowania identyfikatora entra firmy Microsoft, zobacz Samouczek: konfigurowanie uwierzytelniania entra firmy Microsoft dla programu SQL Server.

Zmiana domyślnej ścieżki certyfikatu Microsoft Entra ID

Domyślnie plik certyfikatu Entra firmy Microsoft jest przechowywany w pliku /var/opt/mssql/aadsecrets/. Tę ścieżkę można zmienić, jeśli używasz magazynu certyfikatów lub zaszyfrowanego dysku. Aby zmienić ścieżkę, możesz użyć następującego polecenia:

sudo /opt/mssql/bin/mssql-conf set network.aadcertificatefilepath /path/to/new/location.pfx

W poprzednim przykładzie /path/to/new/location.pfx jest twoją preferowaną ścieżką, zawierającą nazwę certyfikatu.

Certyfikat uwierzytelniania firmy Microsoft Entra pobrany przez rozszerzenie platformy Azure dla programu SQL Server jest przechowywany w tej lokalizacji. Nie można go zmienić na /var/opt/mssql/secrets.

Uwaga

Domyślna ścieżka certyfikatu Microsoft Entra ID może zostać zmieniona w dowolnym momencie po zainstalowaniu programu SQL Server, ale przed włączeniem tej funkcji ścieżka musi zostać zmieniona.

Opcje konfiguracji identyfikatora entra firmy Microsoft

Poniższe opcje są używane przez uwierzytelnianie Microsoft Entra dla instancji SQL Server działającej na systemie Linux.

Ostrzeżenie

Parametry identyfikatora entra firmy Microsoft są konfigurowane przez rozszerzenie platformy Azure dla programu SQL Server i nie należy ich ponownie konfigurować ręcznie. Są one wymienione tutaj w celach informacyjnych.

Program SQL Server 2022 (16.x) CU 19 wprowadza opcję ustawiania limitu rekordów IPv6 dla punktów końcowych uwierzytelniania entra firmy Microsoft. Jeśli protokół IPv6 jest włączony w systemie Linux, a adresy IPv6 punktów końcowych uwierzytelniania usługi Microsoft Entra nie są osiągalne, możesz ustawić opcję network.ipv6dnsrecordslimit dla uwierzytelniania Microsoft Entra w celu działania. Ustawienie tej opcji na dowolną wartość między wartościami 0 i 5 gwarantuje, że co najmniej jeden adres IPv4 próbuje uzyskać dostęp do punktów końcowych firmy Microsoft Entra.

Wartość 0 oznacza, że nie są wypróbowane żadne adresy punktów końcowych IPv6. Wartość 5 oznacza, że wypróbowano pięć adresów AAAA.

Uwaga

To network.ipv6dnsrecordslimit ustawienie jest konfigurowane na poziomie serwera i może mieć wpływ na inne usługi korzystające z protokołu IPv6.

Opcja Opis
network.aadauthenticationendpoint Punkt końcowy uwierzytelniania Microsoft Entra
network.aadcertificatefilepath Ścieżka do pliku certyfikatu na potrzeby uwierzytelniania w usłudze Microsoft Entra ID
network.aadclientcertblacklist Lista zablokowanych certyfikatów klienta Microsoft Entra ID
network.aadclientid Identyfikator GUID klienta Firmy Microsoft Entra
network.aadfederationmetadataendpoint Punkt końcowy dla metadanych federacyjnych Microsoft Entra
network.aadgraphapiendpoint Punkt końcowy dla API Azure AD Graph
network.aadgraphendpoint Punkt końcowy programu Azure AD Graph
network.aadissuerurl Adres URL wystawcy entra firmy Microsoft
network.aadmsgraphendpoint Punkt końcowy programu Microsoft Entra MS Graph
network.aadonbehalfofauthority Microsoft Entra ID w imieniu urzędu
network.aadprimarytenant Identyfikator GUID głównej dzierżawy Microsoft Entra
network.aadsendx5c Microsoft Entra ID Wyślij X5C
network.aadserveradminname Nazwa konta Microsoft Entra, które zostanie ustanowione jako sysadmin
network.aadserveradminsid Identyfikator SID konta Microsoft Entra, które otrzyma uprawnienia administratora systemu
network.aadserveradmintype Typ konta Microsoft Entra, które zostanie przydzielone jako sysadmin
network.aadserviceprincipalname Nazwa główna usługi Microsoft Entra
network.aadserviceprincipalnamenoslash Nazwa główna usługi Microsoft Entra bez ukośnika
network.aadstsurl Microsoft Entra STS URL

Konfigurowanie uwierzytelniania usługi Active Directory w systemie Windows

Opcja setup-ad-keytab może służyć do utworzenia tabki kluczy, ale użytkownik i główne nazwy usługi (SPN) muszą zostać utworzone, aby można było użyć tej opcji. Narzędzie usługi Active Directory, adutil, może służyć do tworzenia użytkowników, głównych nazw usług (SPN) oraz plików keytab.

Aby uzyskać opcje korzystania z programu setup-ad-keytab, uruchom następujące polecenie:

sudo /opt/mssql/bin/mssql-conf setup-ad-keytab --help

Opcja validate-ad-config weryfikuje konfigurację uwierzytelniania usługi Active Directory.

Zmienianie sortowania programu SQL Server

Opcja set-collation zmienia wartość sortowania na dowolne z obsługiwanych wartości sortowania. Aby wprowadzić tę zmianę, należy zatrzymać usługę PROGRAMU SQL Server.

  1. Najpierw utwórz kopię zapasową wszystkich baz danych użytkowników na serwerze.

  2. Następnie użyj procedury składowanej sp_detach_db , aby odłączyć bazy danych użytkowników.

  3. set-collation Uruchom opcję i postępuj zgodnie z monitami:

    sudo /opt/mssql/bin/mssql-conf set-collation
    
  4. Narzędzie mssql-conf próbuje zmienić określoną wartość sortowania i ponownie uruchomić usługę. Jeśli wystąpią jakiekolwiek błędy, cofa sortowanie do poprzedniej wartości.

  5. Przywracanie kopii zapasowych bazy danych użytkownika.

Aby uzyskać listę obsługiwanych sortowań, uruchom funkcję sys.fn_helpcollations: SELECT Name from sys.fn_helpcollations().

Niestandardowe zasady haseł

Począwszy od wersji zapoznawczej programu SQL Server 2025 (17.x) w systemie Linux, można ustawić następujące parametry konfiguracji w pliku, mssql.conf aby wymusić niestandardowe zasady haseł.

Opcja konfiguracji Opis
passwordpolicy.passwordminimumlength Definiuje minimalną liczbę znaków wymaganą dla hasła. Hasła mogą mieć długość maksymalnie 128 znaków.
passwordpolicy.passwordhistorylength Określa liczbę poprzednich haseł, które należy zapamiętać.
passwordpolicy.passwordminimumage Określa minimalny czas trwania, który użytkownik musi czekać przed ponownym zmianą hasła.
passwordpolicy.passwordmaximumage Ustawia maksymalny czas trwania hasła, który można użyć przed jego zmianą.

Uwaga

Obecnie można ustawić passwordminimumlength na mniej niż osiem znaków. Hasło powinno być zgodne z domyślnymi zasadami haseł programu SQL Server. Domyślnie hasło musi mieć długość co najmniej ośmiu znaków i zawierać znaki z trzech z następujących czterech zestawów: wielkie litery, małe litery, cyfry podstawowe-10 i symbole. Hasła mogą mieć długość maksymalnie 128 znaków. Używaj haseł, które są tak długie i złożone, jak to możliwe.

Aby uzyskać więcej informacji, zobacz Ustawianie niestandardowej polityki haseł dla logowań SQL w programie SQL Server w systemie Linux.

Konfigurowanie opinii klientów

To telemetry.customerfeedback ustawienie zmienia, czy program SQL Server wysyła opinię do firmy Microsoft, czy nie. Domyślnie ta wartość jest ustawiona na true dla wszystkich edycji. Aby zmienić wartość, uruchom następujące polecenia:

Ważne

Nie można wyłączyć opinii klientów dla bezpłatnych wersji programów SQL Server, Express i Developer.

  1. Uruchom skrypt mssql-conf jako root za pomocą polecenia set dla telemetry.customerfeedback. Poniższy przykład wyłącza opinie klientów, określając wartość false.

    sudo /opt/mssql/bin/mssql-conf set telemetry.customerfeedback false
    
  2. Uruchom ponownie usługę PROGRAMU SQL Server:

    sudo systemctl restart mssql-server
    

Aby uzyskać więcej informacji, zobacz Configure usage and diagnostic data collection for SQL Server on Linux and the SQL Server privacy supplement (Konfigurowanie zbierania danych diagnostycznych dla programu SQL Server w systemie Linux ) i dodatek dotyczący prywatności programu SQL Server.

Zmienianie domyślnej lokalizacji danych lub katalogu dziennika

Ustawienia filelocation.defaultdatadir i filelocation.defaultlogdir zmieniają lokalizację, w której są tworzone nowe pliki bazy danych i dziennika. Domyślnie ta lokalizacja to /var/opt/mssql/data. Aby zmienić te ustawienia, wykonaj następujące czynności:

  1. Utwórz katalog docelowy dla nowych danych bazy danych i plików dziennika. Poniższy przykład tworzy nowy katalog /tmp/data:

    sudo mkdir /tmp/data
    
  2. Zmień właściciela i grupę katalogu na użytkownika mssql:

    sudo chown mssql /tmp/data
    sudo chgrp mssql /tmp/data
    
  3. Użyj narzędzia mssql-conf, aby zmienić domyślny katalog danych poleceniem set.

    sudo /opt/mssql/bin/mssql-conf set filelocation.defaultdatadir /tmp/data
    
  4. Uruchom ponownie usługę PROGRAMU SQL Server:

    sudo systemctl restart mssql-server
    
  5. Teraz wszystkie pliki bazy danych dla nowych utworzonych baz danych są przechowywane w tej nowej lokalizacji. Jeśli chcesz zmienić lokalizację plików dziennika (ldf) nowych baz danych, możesz użyć następującego set polecenia:

    sudo /opt/mssql/bin/mssql-conf set filelocation.defaultlogdir /tmp/log
    
  6. To polecenie zakłada również, że istnieje katalog /tmp/log i że należy on do użytkownika i grupy mssql.

Zmienianie domyślnej master lokalizacji katalogu plików bazy danych

Ustawienia filelocation.masterdatafile i filelocation.masterlogfile zmieniają lokalizację, w której silnik baz danych SQL Server szuka plików bazy danych master. Domyślnie ta lokalizacja to /var/opt/mssql/data.

Aby zmienić te ustawienia, wykonaj następujące czynności:

  1. Utwórz katalog docelowy dla nowych plików dziennika błędów. Poniższy przykład tworzy nowy katalog /tmp/masterdatabasedir:

    sudo mkdir /tmp/masterdatabasedir
    
  2. Zmień właściciela i grupę katalogu na użytkownika mssql:

    sudo chown mssql /tmp/masterdatabasedir
    sudo chgrp mssql /tmp/masterdatabasedir
    
  3. Użyj narzędzia mssql-conf , aby zmienić domyślny master katalog bazy danych dla plików danych głównych i plików dziennika za set pomocą polecenia :

    sudo /opt/mssql/bin/mssql-conf set filelocation.masterdatafile /tmp/masterdatabasedir/master.mdf
    sudo /opt/mssql/bin/mssql-conf set filelocation.masterlogfile /tmp/masterdatabasedir/mastlog.ldf
    

    Uwaga

    Oprócz przenoszenia danych głównych i plików dziennika przenosi również domyślną lokalizację dla wszystkich innych systemowych baz danych.

  4. Zatrzymaj usługę programu SQL Server:

    sudo systemctl stop mssql-server
    
  5. Przenieś pliki master.mdf i mastlog.ldf :

    sudo mv /var/opt/mssql/data/master.mdf /tmp/masterdatabasedir/master.mdf
    sudo mv /var/opt/mssql/data/mastlog.ldf /tmp/masterdatabasedir/mastlog.ldf
    
  6. Uruchom usługę SQL Server:

    sudo systemctl start mssql-server
    

    Uwaga

    Jeśli program SQL Server nie może znaleźć master.mdf plików i mastlog.ldf w określonym katalogu, kopia szablonów systemowych baz danych zostanie automatycznie utworzona w określonym katalogu, a program SQL Server zostanie pomyślnie uruchomiony. Jednak metadane, takie jak bazy danych użytkowników, identyfikatory logowania serwera, certyfikaty serwera, klucze szyfrowania, zadania agenta SQL lub stare sa hasło nie są aktualizowane w nowej master bazie danych. Musisz zatrzymać program SQL Server i przenieść stary master.mdf oraz mastlog.ldf do nowej określonej lokalizacji i uruchomić program SQL Server, aby nadal korzystać z istniejących metadanych.

Zmienianie nazwy master plików bazy danych

Ustawienia filelocation.masterdatafile i filelocation.masterlogfile zmieniają lokalizację, w której silnik baz danych SQL Server szuka plików bazy danych master. Można również użyć tej funkcji, aby zmienić nazwę master bazy danych i plików dziennika.

Aby zmienić te ustawienia, wykonaj następujące czynności:

  1. Zatrzymaj usługę programu SQL Server:

    sudo systemctl stop mssql-server
    
  2. Użyj narzędzia mssql-conf, aby zmienić oczekiwane master nazwy baz danych dla master plików danych i dzienników za set pomocą polecenia:

    sudo /opt/mssql/bin/mssql-conf set filelocation.masterdatafile /var/opt/mssql/data/masternew.mdf
    sudo /opt/mssql/bin/mssql-conf set filelocation.mastlogfile /var/opt/mssql/data/mastlognew.ldf
    

    Ważne

    Nazwę bazy danych i plików dziennika można zmienić tylko po pomyślnym uruchomieniu master programu SQL Server. Przed początkowym uruchomieniem program SQL Server oczekuje, że pliki będą nazwane master.mdf i mastlog.ldf.

  3. Zmień nazwę master danych bazy danych i plików dziennika:

    sudo mv /var/opt/mssql/data/master.mdf /var/opt/mssql/data/masternew.mdf
    sudo mv /var/opt/mssql/data/mastlog.ldf /var/opt/mssql/data/mastlognew.ldf
    
  4. Uruchom usługę SQL Server:

    sudo systemctl start mssql-server
    

Zmienianie domyślnej lokalizacji katalogu zrzutu

Ustawienie filelocation.defaultdumpdir zmienia domyślną lokalizację, w której jest generowana pamięć i zrzuty SQL, gdy wystąpi awaria. Domyślnie te pliki są generowane w pliku /var/opt/mssql/log.

Aby skonfigurować tę nową lokalizację, użyj następujących poleceń:

  1. Utwórz katalog docelowy dla nowych plików zrzutu. Poniższy przykład tworzy nowy katalog /tmp/dump:

    sudo mkdir /tmp/dump
    
  2. Zmień właściciela i grupę katalogu na użytkownika mssql:

    sudo chown mssql /tmp/dump
    sudo chgrp mssql /tmp/dump
    
  3. Użyj narzędzia mssql-conf, aby zmienić domyślny katalog danych poleceniem set.

    sudo /opt/mssql/bin/mssql-conf set filelocation.defaultdumpdir /tmp/dump
    
  4. Uruchom ponownie usługę PROGRAMU SQL Server:

    sudo systemctl restart mssql-server
    

Zmienianie domyślnej lokalizacji katalogu pliku dziennika błędów

Ustawienie filelocation.errorlogfile zmienia lokalizację, w której są tworzone nowe pliki dziennika błędów XE, domyślne pliki śladu profilera XE, pliki sesji kondycji systemu XE oraz pliki sesji Hekaton XE. Domyślnie ta lokalizacja to /var/opt/mssql/log. Katalog, w którym jest ustawiony plik dziennika błędów programu SQL Server, staje się domyślnym katalogem dziennika dla innych dzienników.

Aby zmienić te ustawienia:

  1. Utwórz katalog docelowy dla nowych plików dziennika błędów. Poniższy przykład tworzy nowy katalog /tmp/logs:

    sudo mkdir /tmp/logs
    
  2. Zmień właściciela i grupę katalogu na użytkownika mssql:

    sudo chown mssql /tmp/logs
    sudo chgrp mssql /tmp/logs
    
  3. Użyj narzędzia mssql-conf , aby zmienić domyślną nazwę pliku dziennika błędów za set pomocą polecenia :

    sudo /opt/mssql/bin/mssql-conf set filelocation.errorlogfile /tmp/logs/errorlog
    
  4. Uruchom ponownie usługę PROGRAMU SQL Server:

    sudo systemctl restart mssql-server
    

Ustawienie errorlog.numerrorlogs pozwala określić liczbę dzienników błędów przechowywanych przed cyklicznym nadpisywaniem.

Zmienianie domyślnej lokalizacji katalogu kopii zapasowej

Ustawienie filelocation.defaultbackupdir zmienia domyślną lokalizację, w której są generowane pliki kopii zapasowej. Domyślnie te pliki są generowane w pliku /var/opt/mssql/data.

Aby skonfigurować tę nową lokalizację, użyj następujących poleceń:

  1. Utwórz katalog docelowy dla nowych plików kopii zapasowej. Poniższy przykład tworzy nowy katalog /tmp/backup:

    sudo mkdir /tmp/backup
    
  2. Zmień właściciela i grupę katalogu na użytkownika mssql:

    sudo chown mssql /tmp/backup
    sudo chgrp mssql /tmp/backup
    
  3. Użyj mssql-conf do zmiany domyślnego katalogu kopii zapasowej za pomocą polecenia set.

    sudo /opt/mssql/bin/mssql-conf set filelocation.defaultbackupdir /tmp/backup
    
  4. Uruchom ponownie usługę PROGRAMU SQL Server:

    sudo systemctl restart mssql-server
    

Określanie ustawień zrzutu podstawowego

Jeśli wystąpi wyjątek lub awaria w jednym z procesów programu SQL Server, program SQL Server utworzy zrzut pamięci. Przechwytywanie zrzutu pamięci może zająć dużo czasu i zajmować znaczną ilość miejsca. Aby zaoszczędzić zasoby i uniknąć powtarzających się zrzutów pamięci, możesz wyłączyć automatyczne przechwytywanie zrzutów za pomocą opcji coredump.disablecoredump.

sudo /opt/mssql/bin/mssql-conf set coredump.disablecoredump <true or false>

Użytkownicy mogą nadal generować zrzuty pamięci ręcznie, gdy automatyczne zrzuty rdzeni są wyłączone (coredump.disablecoredump ustaw wartość true).

Istnieją dwie opcje kontrolowania typu zrzutów pamięci zbieranych przez program SQL Server: coredump.coredumptype i coredump.captureminiandfull. Odnoszą się one do dwóch faz przechwytywania zrzutu rdzenia.

Pierwsze przechwytywanie fazy jest sterowane przez ustawienie coredump.coredumptype, które definiuje typ pliku zrzutu tworzonego w sytuacji wystąpienia wyjątku. Druga faza jest włączana, gdy ustawienie coredump.captureminiandfull jest aktywne. Jeśli coredump.captureminiandfull jest ustawiona wartość true, zostanie wygenerowany plik zrzutu określony przez coredump.coredumptype , a drugi mini zrzut zostanie również wygenerowany. Ustawienie coredump.captureminiandfull wartości false powoduje wyłączenie drugiej próby przechwytywania.

  1. Zdecyduj, czy przechwytywać zarówno mini, jak i pełne zrzuty za pomocą ustawienia coredump.captureminiandfull.

    sudo /opt/mssql/bin/mssql-conf set coredump.captureminiandfull <true or false>
    

    Ustawienie domyślne: false

  2. Określ typ pliku zrzutu z ustawieniem coredump.coredumptype .

    sudo /opt/mssql/bin/mssql-conf set coredump.coredumptype <dump_type>
    

    Ustawienie domyślne: miniplus

    W poniższej tabeli wymieniono możliwe coredump.coredumptype wartości.

    Typ Opis
    mini Mini jest najmniejszym typem pliku zrzutu. Używa informacji systemowych systemu Linux do określania wątków i modułów w procesie. Zrzut zawiera tylko stosy wątków i moduły środowiska hosta. Nie zawiera odwołań do pamięci pośredniej ani zmiennych globalnych.
    miniplus MiniPlus jest podobny do mini, ale zawiera dodatkową pamięć. Rozumie on wewnętrzne elementy SQLPAL i środowisko hosta, dodając następujące regiony pamięci do zrzutu:

    - Różne zmienne globalne
    — Cała pamięć powyżej 64 TB
    - Wszystkie nazwane regiony znalezione w /proc/$pid/maps
    - Pamięć pośrednia z wątków i stosów
    — Informacje o wątkach, w tym skojarzone bloki środowiska wątkowego (TEB) i bloki środowiska przetwarzania (PEB)
    - Informacje o module
    - Drzewo programu VMM i VAD
    filtered Filtrowane korzysta z projektu opartego na odejmach, w którym jest uwzględniona cała pamięć w procesie, chyba że została w szczególności wykluczona. Projekt uwzględnia wewnętrzną strukturę SQLPAL oraz środowisko hosta, wyłączając z zrzutu niektóre regiony.
    full Pełny to pełny zrzut procesu, który obejmuje wszystkie regiony znajdujące się w lokalizacji /proc/$pid/maps. To nie jest kontrolowane przez ustawienie coredump.captureminiandfull.

Wydanie

Edycję programu SQL Server można zmienić przy użyciu set-edition opcji . Aby zmienić wersję programu SQL Server, najpierw należy zatrzymać usługę SQL Server. Aby uzyskać więcej informacji na temat dostępnych wersji programu SQL Server w systemie Linux, zobacz Wersje programu SQL Server.

Wysoka dostępność

Opcja hadr.hadrenabled włącza grupy dostępności w wystąpieniu programu SQL Server. Następujące polecenie włącza grupy dostępności, ustawiając wartość hadr.hadrenabled 1. Aby ustawienie zaczęły obowiązywać, należy ponownie uruchomić program SQL Server.

sudo /opt/mssql/bin/mssql-conf set hadr.hadrenabled  1
sudo systemctl restart mssql-server

Aby uzyskać informacje na temat sposobu użycia tej funkcji z grupami dostępności, zobacz następujące dwa artykuły.

Ustawianie lokalnego katalogu inspekcji

Ustawienie telemetry.userrequestedlocalauditdirectory włącza inspekcję lokalną i umożliwia ustawienie katalogu, w którym są tworzone dzienniki inspekcji lokalnej.

  1. Utwórz katalog docelowy dla nowych lokalnych logów audytu. Poniższy przykład tworzy nowy katalog /tmp/audit:

    sudo mkdir /tmp/audit
    
  2. Zmień właściciela i grupę katalogu na użytkownika mssql:

    sudo chown mssql /tmp/audit
    sudo chgrp mssql /tmp/audit
    
  3. Uruchom skrypt mssql-conf jako root z poleceniem set dla telemetry.userrequestedlocalauditdirectory:

    sudo /opt/mssql/bin/mssql-conf set telemetry.userrequestedlocalauditdirectory /tmp/audit
    
  4. Uruchom ponownie usługę PROGRAMU SQL Server:

    sudo systemctl restart mssql-server
    

Aby uzyskać więcej informacji, zobacz Konfigurowanie zbierania danych diagnostycznych i użycia dla programu SQL Server w systemie Linux.

Zmienianie ustawień regionalnych programu SQL Server

Ustawienie language.lcid zmienia ustawienia regionalne programu SQL Server na dowolny obsługiwany identyfikator języka (LCID).

  1. Poniższy przykład zmienia ustawienia regionalne na francuski (1036):

    sudo /opt/mssql/bin/mssql-conf set language.lcid 1036
    
  2. Uruchom ponownie usługę SQL Server, aby zastosować zmiany:

    sudo systemctl restart mssql-server
    

Ustawianie limitu pamięci

Ustawienie memory.memorylimitmb steruje ilością pamięci fizycznej (w MB) dostępnej dla programu SQL Server. Wartość domyślna to 80% pamięci fizycznej, aby zapobiec warunkom braku pamięci (OOM).

Ważne

Ustawienie memory.memorylimitmb ogranicza ilość pamięci fizycznej dostępnej dla procesu programu SQL Server. Ustawienie maksymalnej pamięci serwera (MB) może służyć do dostosowywania ilości pamięci dostępnej dla puli programu SQL Server, ale nigdy nie może przekraczać ilości pamięci fizycznej dostępnej dla programu SQL Server. Aby uzyskać więcej informacji na temat opcji konfiguracji serwera maksymalnej pamięci serwera (MB), zobacz Opcje konfiguracji pamięci serwera.

  1. Uruchom skrypt mssql-conf jako root za pomocą polecenia set dla memory.memorylimitmb. W poniższym przykładzie pamięć dostępna dla programu SQL Server zmienia się na 3,25 GB (3328 MB).

    sudo /opt/mssql/bin/mssql-conf set memory.memorylimitmb 3328
    
  2. Uruchom ponownie usługę SQL Server, aby zastosować zmiany:

    sudo systemctl restart mssql-server
    

Dodatkowe ustawienia pamięci

Następujące opcje są dostępne dla ustawień pamięci.

Opcja Opis
memory.disablememorypressure Wyłącz nacisk na pamięć w SQL Serverze. Wartości mogą być true lub false (domyślnie). Wyłączenie ciśnienia pamięci hamuje sygnały używane przez program SQL Server w celu ograniczenia użycia pamięci fizycznej do memory.memorylimitmb, co powoduje, że użycie ostatecznie wykracza poza ten limit.
memory.memory_optimized Włączanie lub wyłączanie funkcji zoptymalizowanych dla pamięci w programie SQL Server — uświadomienie dla plików trwałej pamięci, ochrona pamięci. Wartości mogą mieć wartość true lub false.
memory.enablecontainersharedmemory Dotyczy tylko kontenerów programu SQL Server. Użyj tego ustawienia, aby włączyć pamięć udostępnioną wewnątrz kontenerów programu SQL Server. Aby uzyskać więcej informacji, zobacz Włączanie tworzenia i przywracania kopii zapasowych VDI w kontenerach. Wartości mogą być true lub false (domyślnie).

Konfigurowanie usługi MSDTC

Ustawienia network.rpcport i distributedtransaction.servertcpport służą do konfigurowania koordynatora transakcji rozproszonych firmy Microsoft (MSDTC). Aby zmienić te ustawienia, uruchom następujące polecenia:

  1. Uruchom skrypt mssql-conf jako root z poleceniem set dla network.rpcport:

    sudo /opt/mssql/bin/mssql-conf set network.rpcport <rcp_port>
    
  2. Następnie skonfiguruj distributedtransaction.servertcpport.

    sudo /opt/mssql/bin/mssql-conf set distributedtransaction.servertcpport <servertcpport_port>
    

Oprócz ustawiania tych wartości należy również skonfigurować routing i zaktualizować zaporę dla portu 135. Aby uzyskać więcej informacji na temat tego, jak to zrobić, zobacz Jak skonfigurować koordynator transakcji rozproszonych firmy Microsoft (MSDTC) w systemie Linux.

Istnieje kilka innych ustawień mssql-conf, których można użyć do monitorowania i rozwiązywania problemów z MSDTC. W poniższej tabeli krótko opisano te ustawienia. Aby uzyskać więcej informacji na temat ich użycia, zobacz szczegóły w artykule pomocy technicznej systemu Windows Włączanie śledzenia diagnostycznego ms DTC na komputerze z systemem Windows 10.

Opcja Opis
distributedtransaction.allowonlysecurerpccalls Konfigurowanie bezpiecznych wywołań RPC tylko dla transakcji rozproszonych
distributedtransaction.fallbacktounsecurerpcifnecessary Konfigurowanie wywołań RPC wyłącznie dla zabezpieczeń w transakcjach rozproszonych
distributedtransaction.maxlogsize Rozmiar pliku dziennika transakcji DTC w MB. Wartość domyślna to 64 MB
distributedtransaction.memorybuffersize Rozmiar buforu cyklicznego, w którym są przechowywane ślady. Ten rozmiar jest w MB, a wartość domyślna to 10 MB
distributedtransaction.servertcpport Port serwera RPC MSDTC
distributedtransaction.trace_cm Ślady w menedżerze połączeń
distributedtransaction.trace_contact Śledzi bazę kontaktów i kontakty
distributedtransaction.trace_gateway Źródło śledzenia bramy sieciowej
distributedtransaction.trace_log Śledzenie logów
distributedtransaction.trace_misc Ślady, których nie można podzielić na inne kategorie
distributedtransaction.trace_proxy Ślady generowane na serwerze proxy MSDTC
distributedtransaction.trace_svc Uruchamianie usługi Traces i pliku .exe
distributedtransaction.trace_trace Sama infrastruktura śledzenia
distributedtransaction.trace_util Śledzi programy narzędziowe wywoływane z wielu miejsc.
distributedtransaction.trace_xa Źródło śledzenia menedżera transakcji XA (XATM)
distributedtransaction.tracefilepath Folder, w którym powinny być przechowywane pliki śledzenia
distributedtransaction.turnoffrpcsecurity Włączanie lub wyłączanie zabezpieczeń RPC dla transakcji rozproszonych

Akceptowanie umów EULA usług Machine Learning Services

Dodanie pakietów języka R lub Python uczenia maszynowego do aparatu bazy danych wymaga zaakceptowania postanowień licencyjnych dotyczących dystrybucji open source języków R i Python. W poniższej tabeli wymieniono wszystkie dostępne polecenia lub opcje związane z mlservices EULA. Ten sam parametr EULA jest używany dla języków R i Python w zależności od zainstalowanego elementu.

# For all packages: database engine and mlservices
# Setup prompts for mlservices EULAs, which you need to accept
sudo /opt/mssql/bin/mssql-conf setup

# Add R or Python to an existing installation
sudo /opt/mssql/bin/mssql-conf setup accept-eula-ml

# Alternative valid syntax
# Adds the EULA section to the INI and sets acceptulam to yes
sudo /opt/mssql/bin/mssql-conf set EULA accepteulaml Y

# Rescind EULA acceptance and removes the setting
sudo /opt/mssql/bin/mssql-conf unset EULA accepteulaml

Możesz również dodać akceptację umowy EULA bezpośrednio do pliku mssql.conf:

[EULA]
accepteula = Y
accepteulaml = Y

Włączanie dostępu do sieci wychodzącej

Dostęp do sieci wychodzącej dla rozszerzeń języka R, Python i Java w funkcji usług SQL Server Machine Learning Services jest domyślnie wyłączony. Aby włączyć żądania wychodzące, ustaw outboundnetworkaccess właściwość logiczną przy użyciu mssql-conf.

Po ustawieniu właściwości uruchom ponownie usługę Launchpad programu SQL Server, aby odczytać zaktualizowane wartości z pliku INI. Komunikat ponownego uruchomienia przypomina o każdej modyfikacji ustawienia związanego z rozszerzalnością.

# Adds the extensibility section and property.
# Sets "outboundnetworkaccess" to true.
# This setting is required if you want to access data or operations off the server.
sudo /opt/mssql/bin/mssql-conf set extensibility outboundnetworkaccess 1

# Turns off network access but preserves the setting
sudo /opt/mssql/bin/mssql-conf set extensibility outboundnetworkaccess 0

# Removes the setting and rescinds network access
sudo /opt/mssql/bin/mssql-conf unset extensibility.outboundnetworkaccess

Możesz również dodać outboundnetworkaccess bezpośrednio do pliku mssql.conf:

[extensibility]
outboundnetworkaccess = 1

Zmień poziom rejestrowania łącznika SQL Server dla usługi Azure Key Vault

W programie SQL Server 2022 (16.x) CU 14 i nowszych wersjach program SQL Server w systemie Linux obsługuje rozszerzone zarządzanie kluczami TDE za pomocą usługi Azure Key Vault. Poziom rejestrowania można ustawić na jedną z następujących wartości:

Poziom Opis
0 (ustawienie domyślne) Informacja
1 Błąd
2 Brak dziennika

Aby zmienić poziom rejestrowania dla konektora SQL Server, użyj następującego przykładu:

sudo /opt/mssql/bin/mssql-conf set sqlconnector.logginglevel 1

Aby uzyskać więcej informacji, zobacz Używanie łącznika programu SQL Server z funkcjami szyfrowania SQL.

Zmienianie portu TCP

Ustawienie network.tcpport zmienia port TCP, na którym program SQL Server nasłuchuje połączeń. Domyślnie ten port jest ustawiony na 1433. Aby zmienić port, uruchom następujące polecenia:

  1. Uruchom skrypt mssql-conf jako root z poleceniem set dla network.tcpport:

    sudo /opt/mssql/bin/mssql-conf set network.tcpport <new_tcp_port>
    
  2. Uruchom ponownie usługę PROGRAMU SQL Server:

    sudo systemctl restart mssql-server
    
  3. Podczas nawiązywania połączenia z programem SQL Server należy teraz określić port niestandardowy z przecinkiem (,) po nazwie hosta lub adresie IP. Aby na przykład nawiązać połączenie z narzędziem sqlcmd, użyj następującego polecenia:

    sqlcmd -S localhost,<new_tcp_port> -U test -P test
    

Określanie ustawień protokołu TLS

Poniższe opcje umożliwiają skonfigurowanie protokołu TLS dla wystąpienia programu SQL Server uruchomionego w systemie Linux.

Opcja Opis
network.forceencryption Jeśli wartość 1, program SQL Server wymusza szyfrowanie wszystkich połączeń. Domyślnie ta opcja to 0.
network.tlscert Ścieżka bezwzględna do pliku certyfikatu używanego przez program SQL Server do obsługi protokołu TLS. Przykład: /etc/ssl/certs/mssql.pem plik certyfikatu musi być dostępny dla konta mssql. Firma Microsoft zaleca ograniczenie dostępu do pliku przy użyciu polecenia chown mssql:mssql <file>; chmod 400 <file>.
network.tlskey Ścieżka bezwzględna do pliku klucza prywatnego używanego przez program SQL Server do obsługi protokołu TLS. Przykład: /etc/ssl/private/mssql.key plik certyfikatu musi być dostępny dla konta mssql. Firma Microsoft zaleca ograniczenie dostępu do pliku przy użyciu polecenia chown mssql:mssql <file>; chmod 400 <file>.
network.tlsprotocols Rozdzielona przecinkami lista protokołów TLS dozwolonych przez program SQL Server. Program SQL Server zawsze próbuje negocjować najsilniejszy dozwolony protokół. Jeśli klient nie obsługuje żadnego dozwolonego protokołu, program SQL Server odrzuca próbę połączenia. W celu zachowania zgodności wszystkie obsługiwane protokoły są domyślnie dozwolone (1.2, 1.1, 1.0). Jeśli klienci obsługują protokół TLS 1.2, firma Microsoft zaleca zezwolenie tylko na protokół TLS 1.2.
network.tlsciphers Określa, które szyfry są dozwolone przez program SQL Server dla protokołu TLS. Ten ciąg musi być sformatowany zgodnie z formatem listy szyfrów openSSL. Ogólnie rzecz biorąc, nie należy zmieniać tej opcji.
Domyślnie następujące szyfry są dozwolone:
ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA
network.kerberoskeytabfile Ścieżka do pliku keytab Kerberos

Przykład użycia ustawień protokołu TLS można znaleźć w temacie Szyfrowanie połączeń z programem SQL Server w systemie Linux.

Ustawienia sieciowe

Zobacz Samouczek: używanie uwierzytelniania usługi Active Directory z programem SQL Server w systemie Linux , aby uzyskać kompleksowe informacje na temat korzystania z uwierzytelniania usługi Active Directory z programem SQL Server w systemie Linux.

Poniższe opcje to dodatkowe ustawienia sieciowe konfigurowalne przy użyciu narzędzia mssql-conf.

Opcja Opis
network.disablesssd Zaprzestań wykonywania zapytań do usługi SSSD o informacje o koncie Active Directory i przejdź na domyślne wywołania LDAP. Wartości mogą mieć wartość true lub false.
network.enablekdcfromkrb5conf Włącz wyszukanie informacji KDC w pliku krb5.conf. Wartości mogą mieć wartość true lub false.
network.forcesecureldap Wymuś używanie protokołu LDAPS do kontaktu z kontrolerem domeny. Wartości mogą mieć wartość true lub false.
network.ipaddress Adres IP dla połączeń przychodzących.
network.kerberoscredupdatefrequency Czas w sekundach między sprawdzaniem poświadczeń Kerberos, które należy zaktualizować. Wartość jest liczbą całkowitą.
network.privilegedadaccount Uprzywilejowany użytkownik usługi Active Directory do użycia na potrzeby uwierzytelniania w usłudze Active Directory. Wartość to <username>. Aby uzyskać więcej informacji, zobacz Samouczek: używanie uwierzytelniania usługi Active Directory z programem SQL Server w systemie Linux
network.ipv6dnsrecordslimit Ustaw konfigurowalny limit liczby rekordów usługi AAAA zwracanych przez żądania DNS. Wartość jest dodatnią liczbą całkowitą między 0 i 5. Ta opcja gwarantuje, że żądania WinHTTP z domyślną liczbą ponownych prób (6) próbują użyć co najmniej jednego adresu IPv4.
uncmapping Mapuje ścieżkę UNC na ścieżkę lokalną. Na przykład sudo /opt/mssql/bin/mssql-conf set uncmapping //servername/sharename /tmp/folder.
ldaphostcanon Określ, czy OpenLDAP powinien kanonikalizować nazwy hostów podczas etapu uwierzytelniania. Wartości mogą mieć wartość true lub false.

Włącz lub wyłącz flagi śledzenia

Opcja traceflag włącza lub wyłącza flagi śledzenia dla uruchamiania usługi SQL Server. Aby włączyć/wyłączyć flagę śledzenia, użyj następujących poleceń:

  1. Włącz flagę śledzenia przy użyciu następującego polecenia. Na przykład w przypadku flagi śledzenia 1234:

    sudo /opt/mssql/bin/mssql-conf traceflag 1234 on
    
  2. Możesz włączyć wiele flag śledzenia, określając je oddzielnie:

    sudo /opt/mssql/bin/mssql-conf traceflag 2345 3456 on
    
  3. W podobny sposób można wyłączyć jedną lub więcej włączonych flag śledzenia, określając je i dodając parametr off:

    sudo /opt/mssql/bin/mssql-conf traceflag 1234 2345 3456 off
    
  4. Uruchom ponownie usługę SQL Server, aby zastosować zmiany:

    sudo systemctl restart mssql-server
    

Usuwanie ustawienia

Aby usunąć dowolne ustawienie wykonane za pomocą mssql-conf set, użyj mssql-conf z opcją unset i nazwą ustawienia. Spowoduje to wyczyszczenie ustawienia, co skutecznie zwróci jego wartość domyślną.

  1. Poniższy przykład czyści network.tcpport opcję.

    sudo /opt/mssql/bin/mssql-conf unset network.tcpport
    
  2. Uruchom ponownie usługę SQL Server.

    sudo systemctl restart mssql-server
    

Wyświetlanie bieżących ustawień

Aby wyświetlić wszystkie skonfigurowane ustawienia, uruchom następujące polecenie, aby wyświetlić zawartość mssql.conf pliku:

sudo cat /var/opt/mssql/mssql.conf

Wszystkie ustawienia, które nie są wyświetlane w tym pliku, używają ich wartości domyślnych. W następnej sekcji przedstawiono przykładowy mssql.conf plik.

Wyświetlanie różnych opcji

Aby wyświetlić różne opcje, które można skonfigurować za pomocą narzędzia mssql-conf , uruchom help polecenie:

sudo /opt/mssql/bin/mssql-conf --help

Wyniki zawierają różne opcje konfiguracji i krótki opis dla każdego z ustawień.

Format: "mssql.conf"

Poniższy plik /var/opt/mssql/mssql.conf zawiera przykład dla każdego ustawienia. Możesz użyć tego formatu, aby ręcznie wprowadzać zmiany w pliku według potrzeb mssql.conf. Jeśli ręcznie zmienisz plik, musisz ponownie uruchomić program SQL Server przed zastosowaniem zmian. Aby używać pliku z mssql.conf w Dockerze, musisz zapewnić przechowywanie danych. Najpierw dodaj pełny mssql.conf plik do katalogu hostów, a następnie uruchom kontener. Jest przykład tego w Konfigurowanie zbierania danych diagnostycznych i użycia dla programu SQL Server w systemie Linux.

[EULA]
accepteula = Y

[coredump]
captureminiandfull = true
coredumptype = full

[filelocation]
defaultbackupdir = /var/opt/mssql/data/
defaultdatadir = /var/opt/mssql/data/
defaultdumpdir = /var/opt/mssql/data/
defaultlogdir = /var/opt/mssql/data/

[hadr]
hadrenabled = 0

[language]
lcid = 1033

[memory]
memorylimitmb = 4096

[network]
forceencryption = 0
ipaddress = 10.192.0.0
kerberoskeytabfile = /var/opt/mssql/secrets/mssql.keytab
tcpport = 1401
tlscert = /etc/ssl/certs/mssql.pem
tlsciphers = ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA
tlskey = /etc/ssl/private/mssql.key
tlsprotocols = 1.2,1.1,1.0

[sqlagent]
databasemailprofile = default
errorlogfile = /var/opt/mssql/log/sqlagentlog.log
errorlogginglevel = 7

[telemetry]
customerfeedback = true
userrequestedlocalauditdirectory = /tmp/audit

[traceflag]
traceflag0 = 1204
traceflag1 = 2345
traceflag = 3456
[EULA]
accepteula = Y
accepteulaml = Y

[coredump]
captureminiandfull = true
coredumptype = full

[distributedtransaction]
servertcpport = 51999

[filelocation]
defaultbackupdir = /var/opt/mssql/data/
defaultdatadir = /var/opt/mssql/data/
defaultdumpdir = /var/opt/mssql/data/
defaultlogdir = /var/opt/mssql/data/

[hadr]
hadrenabled = 0

[language]
lcid = 1033

[memory]
memorylimitmb = 4096

[network]
forceencryption = 0
ipaddress = 10.192.0.0
kerberoskeytabfile = /var/opt/mssql/secrets/mssql.keytab
rpcport = 13500
tcpport = 1401
tlscert = /etc/ssl/certs/mssql.pem
tlsciphers = ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA
tlskey = /etc/ssl/private/mssql.key
tlsprotocols = 1.2,1.1,1.0

[sqlagent]
databasemailprofile = default
errorlogfile = /var/opt/mssql/log/sqlagentlog.log
errorlogginglevel = 7

[telemetry]
customerfeedback = true
userrequestedlocalauditdirectory = /tmp/audit

[traceflag]
traceflag0 = 1204
traceflag1 = 2345
traceflag = 3456

Współtworzenie dokumentacji SQL

Czy wiesz, że możesz samodzielnie edytować zawartość SQL? Jeśli to zrobisz, nie tylko pomożesz ulepszyć naszą dokumentację, ale także zostaniesz uznany za współautora strony.

Aby uzyskać więcej informacji, zobacz Edytowanie dokumentacji środowiska Microsoft Learn.