Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:programu SQL Server — tylko system Windows
W programie SQL Server 2012 (11.x) i nowszych wersjach można zainstalować bazy danych systemowych (master
, model
, msdb
i tempdb
) oraz bazy danych użytkownika silnika bazy danych na serwerze plików SMB jako opcję magazynowania. Dotyczy to zarówno autonomicznych instalacji SQL Server, jak i instalacji w klastrze trybu failover (FCI) SQL Server.
Notatka
Funkcja FILESTREAM nie jest obecnie obsługiwana w udziale plików SMB.
Zagadnienia dotyczące instalacji
Formaty udziałów plików SMB
Po określeniu udziału plików SMB następujące wartości są obsługiwane w formatach ścieżek UNC dla autonomicznych baz danych i baz danych instancji klastra w środowisku trybu awaryjnego.
\\ServerName\ShareName\
\\ServerName\ShareName
Aby uzyskać więcej informacji, zobacz Universal Naming Convention.
Ścieżka UNC sprzężenia zwrotnego (ścieżka UNC, której nazwa serwera to localhost, 127.0.0.1
lub nazwa komputera lokalnego) nie jest obsługiwana. W specjalnym przypadku program SQL Server z klastrem serwera plików hostowanym w tym samym węźle co program SQL Server również nie jest obsługiwany. Aby zapobiec takiej sytuacji, należy utworzyć program SQL Server i klaster serwera plików w oddzielnych klastrach systemu Windows.
Następujące formaty ścieżek UNC nie są obsługiwane:
- Ścieżka sprzężenia zwrotnego, taka jak
\\localhost\...\
lub\\127.0.0.1\...\
- Udziały administracyjne, takie jak
\\servername\x$
- Inne formaty ścieżek UNC, takie jak
\\?\x:\
- Zmapowane dyski sieciowe
Obsługiwane instrukcje języka definicji danych (DDL)
Następujące instrukcje Transact-SQL DDL i procedury składowane silnika bazy danych obsługują zestawy plików SMB:
Opcje instalacji
W interfejsie użytkownika instalacji, na stronie Konfiguracja Aparatu Bazy Danych, na karcie Katalogi Danych, ustaw parametr Katalog Główny Danych jako
\\<FileServer>\<Share1>\
. Zastąp<FileServer>
i<Share1>
wartościami ze środowiska.W instalacji wiersza polecenia określ
/INSTALLSQLDATADIR
jako\\<FileServer>\<Share1>\
.Oto przykładowa składnia instalowania programu SQL Server na serwerze autonomicznym przy użyciu opcji udziału plików SMB:
Setup.exe /q /ACTION=Install /FEATURES=SQL /INSTANCENAME=MSSQLSERVER /SQLSVCACCOUNT="<DomainName\UserName>" /SQLSVCPASSWORD="<password>" /SQLSYSADMINACCOUNTS="<DomainName\UserName>" /AGTSVCACCOUNT="<DomainName\UserName>" /AGTSVCPASSWORD="<password>" /INSTALLSQLDATADIR="\\FileServer\Share1\" /IACCEPTSQLSERVERLICENSETERMS
Począwszy od programu SQL Server 2022 (16.x), przeczytaj postanowienia licencyjne dotyczące oprogramowania programu Microsoft SQL Server pod adresem aka.ms/useterms.
Aby zainstalować domyślne wystąpienie klastra trybu failover SQL Server z jednym węzłem z wykorzystaniem silnika bazy danych i usługi Analysis Services:
setup.exe /q /ACTION=InstallFailoverCluster /InstanceName=MSSQLSERVER /INDICATEPROGRESS /ASSYSADMINACCOUNTS="<DomainName\UserName>" /ASDATADIR=<Drive>:\OLAP\Data /ASLOGDIR=<Drive>:\OLAP\Log /ASBACKUPDIR=<Drive>:\OLAP\Backup /ASCONFIGDIR=<Drive>:\OLAP\Config /ASTEMPDIR=<Drive>:\OLAP\Temp /FAILOVERCLUSTERDISKS="<Cluster Disk Resource Name - for example, 'Disk S:'" /FAILOVERCLUSTERNETWORKNAME="<Insert Network Name>" /FAILOVERCLUSTERIPADDRESSES="IPv4;xx.xxx.xx.xx;Cluster Network;xxx.xxx.xxx.x" /FAILOVERCLUSTERGROUP="MSSQLSERVER" /Features=AS,SQL /ASSVCACCOUNT="<DomainName\UserName>" /ASSVCPASSWORD="<password>" /AGTSVCACCOUNT="<DomainName\UserName>" /AGTSVCPASSWORD="<password>" /INSTALLSQLDATADIR="\\FileServer\Share1\" /SQLCOLLATION="SQL_Latin1_General_CP1_CS_AS" /SQLSVCACCOUNT="<DomainName\UserName>" /SQLSVCPASSWORD="<password>" /SQLSYSADMINACCOUNTS="<DomainName\UserName> /IACCEPTSQLSERVERLICENSETERMS
Aby uzyskać więcej informacji na temat użycia różnych opcji parametrów wiersza polecenia w programie SQL Server, zobacz Install and configure SQL Server on Windows (Instalowanie i konfigurowanie programu SQL Server w systemie Windows) w wierszu polecenia.
Notatka
Hasła powinny 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.
Zagadnienia dotyczące systemu operacyjnego (protokół SMB vs. SQL Server)
Różne systemy operacyjne Windows mają różne wersje protokołu SMB, a wersja protokołu SMB jest niewidoczna dla programu SQL Server. Korzyści wynikające z różnych wersji protokołu SMB można znaleźć w odniesieniu do programu SQL Server.
System operacyjny | Wersja protokołu SMB2 | Korzyści z programu SQL Server |
---|---|---|
Windows Server 2012 i nowsze wersje, w tym Server Core | 3.0 | Obsługa przezroczystego przełączania awaryjnego udziałów plikowych zapewniających zerowy przestój, bez konieczności interwencji administratora bazy danych ani administratora serwera plików w konfiguracjach klastra serwera plików. Obsługa operacji we/wy przy użyciu wielu interfejsów sieciowych jednocześnie i tolerancja awarii interfejsu sieciowego. Obsługa interfejsów sieciowych z funkcjami RDMA. Aby uzyskać więcej informacji na temat tych funkcji i bloku komunikatów serwera, zobacz Server Message Block overview. Obsługa skalowalnego serwera plików (SoFS) z ciągłą dostępnością. |
Windows Server 2012 R2 i nowsze wersje, w tym Server Core | 3.2 | Obsługa przezroczystego przełączania awaryjnego udziałów plików, zapewniająca zerowy przestój, bez konieczności interwencji administratora bazy danych lub administratora serwera plików w konfiguracjach klastrów serwerów plików. Obsługa operacji I/O przy użyciu wielu interfejsów sieciowych jednocześnie i tolerancja awarii interfejsu sieciowego przy użyciu protokołu SMB Multichannel. Obsługa interfejsów sieciowych z funkcjami RDMA przy użyciu protokołu SMB Direct. Aby uzyskać więcej informacji na temat tych funkcji i bloku komunikatów serwera, zobacz Server Message Block overview. Obsługa skalowalnego poziomo serwera plików (SoFS) z ciągłą dostępnością. Zoptymalizowany pod kątem małych losowych operacji we/wy odczytu/zapisu typowych dla obciążeń w stylu transakcyjnym programu SQL Server. Maksymalna jednostka transmisji (MTU) jest domyślnie włączona, co znacznie zwiększa wydajność dużych transferów sekwencyjnych, takich jak magazyn danych programu SQL Server i tworzenie kopii zapasowej lub przywracanie bazy danych. |
Zagadnienia dotyczące zabezpieczeń
Konto usługi programu SQL Server i konto usługi agenta programu SQL Server powinny mieć
FULL CONTROL
uprawnienia udziału i uprawnienia NTFS w folderach udziału SMB. Konto usługi programu SQL Server może być kontem domeny lub kontem systemowym, jeśli jest używany serwer plików SMB. Aby uzyskać więcej informacji na temat uprawnień do udostępniania i systemu plików NTFS, zobacz uprawnienia do udostępniania i systemu plików NTFS na serwerze plików.Notatka
Uprawnienia udziału
FULL CONTROL
i uprawnienia systemu plików NTFS w folderach udziału SMB powinny być ograniczone do konta usługi programu SQL Server, konta usługi agenta programu SQL Server i użytkowników systemu Windows mających role administratora serwera.Użyj konta domeny jako konta usługi programu SQL Server. Jeśli konto systemowe jest używane jako konto usługi, przyznaj uprawnienia dla konta komputera w formacie
<domain-name>\<computer-name>*$*
.Notatka
Podczas instalacji programu SQL Server należy określić konto domeny jako konto usługi, gdy jako opcję magazynu określono udział plików SMB. W przypadku udziału plików SMB konto
System
można określić tylko jako konto usługi po zainstalowaniu programu SQL Server.Nie można uwierzytelnić kont wirtualnych w lokalizacji zdalnej. Wszystkie konta wirtualne używają uprawnień konta maszyny. Skonfiguruj konto maszyny w formacie
<domain-name>\<computer-name>*$*
.Konto używane do instalowania programu SQL Server powinno mieć uprawnienia PEŁNA KONTROLA nad folderem udziału plików SMB używanym jako katalog danych lub nad dowolnymi innymi folderami danych (katalog użytkownika, katalog logów bazy danych użytkownika, katalog
tempdb
, katalog logów tempdb, katalog kopii zapasowych) podczas instalacji klastra.Konto używane do instalowania programu SQL Server powinno mieć przyznane uprawnienia
SeSecurityPrivilege
na serwerze plików SMB. Aby przyznać to uprawnienie, użyj konsoli zasady zabezpieczeń lokalnych na serwerze plików, aby dodać konto konfiguracji programu SQL Server do zasad Zarządzanie inspekcją i dziennikiem zabezpieczeń. To ustawienie jest dostępne w sekcji Przypisywanie praw użytkownika w obszarze Zasady lokalne.
Znane problemy i ograniczenia
Po odłączeniu bazy danych programu SQL Server znajdującej się w magazynie dołączonym do sieci mogą wystąpić problemy z uprawnieniami bazy danych podczas próby ponownego dołączenia bazy danych programu SQL Server. Aby uzyskać więcej informacji, zobacz błąd 5120.
Jeśli udział plików SMB jest używany jako opcja magazynowania dla zklastrowanego wystąpienia SQL Server, domyślnie Dziennik diagnostyczny klastrów awaryjnych SQL Server nie może być zapisywany w udziale plików, ponieważ biblioteka DLL zasobu SQL Server nie ma uprawnień odczytu/zapisu w udziale plików. Aby rozwiązać ten problem, spróbuj wykonać jedną z następujących metod:
Udziel uprawnień do odczytu/zapisu w udziale plików wszystkim obiektom komputera w klastrze.
Ustaw lokalizację dzienników diagnostycznych na ścieżkę pliku lokalnego. Zobacz następujący przykład:
ALTER SERVER CONFIGURATION SET DIAGNOSTICS LOG PATH = 'C:\logs';
Podczas hostowania plików danych programu SQL Server w udziałach plików SMB wszystkie operacje we/wy na plikach przechodzą przez interfejs sieciowy na serwerze lub maszynie wirtualnej. Upewnij się, że przepustowość sieci jest wystarczająca do obsługi operacji we/wy wymaganych przez obciążenie.
Niedostępność udziału plików hostującego pliki danych programu SQL Server z powodu problemów z łącznością sieciową lub innych awarii może spowodować opóźnienia lub błędy wejścia/wyjścia w programie SQL Server. W przypadku obciążeń o znaczeniu krytycznym upewnij się, że istnieje nadmiarowość zastosowana do sieci i udziałów plików oraz że udziały plików obsługują przezroczyste przełączenie awaryjne w protokole SMB 3.0, znane również jako ciągła dostępność.