Obsah
- Zobrazí se chyba "Při načítání databázových souborů z databází Microsoft SQL Server došlo k chybě. Zkontrolujte, zda má účet 'NT AUTHORITY\SYSTEM' dostatečná oprávnění pro čtení dat ze systémových pohledů hlavních databází" v produktu ESET Windows server
- Při získávání vlastního umístění dat databáze se objeví chyba
- Povolení služby ESET pro získání vlastního umístění dat databáze
- Více instancí serveru Microsoft SQL Server na jednom serveru
Řešení
Při získávání vlastního umístění dat databáze se objeví chyba
Automatická vyloučení pro Microsoft SQL Server se skládají především z výchozích umístění databázových souborů. Skládá se však také z cest, kde jsou databázové soubory uloženy ve vlastních umístěních. V tomto případě je NT AUTHORITY\SYSTEM musí mít účet příslušná práva, aby mohl tyto informace získat z hlavní databáze.
V Microsoft SQL Serveru 2016 a novějších verzích společnost Microsoft odstranila serverovou roli sysadmin pro účet NT AUTHORITY\SYSTEM, což způsobilo, že serverové produkty ESET Windows ztratily přístup k datům v hlavní databázi, která obsahuje umístění databázových dat instance Microsoft SQL Serveru.
Serverové produkty ESET Windows o tomto problému informují prostřednictvím chybového hlášení. Klikněte na položku Soubory protokolu, z rozevírací nabídky vyberte možnost Události a zobrazte chybovou zprávu:
"Při načítání databázových souborů z databází Microsoft SQL Server došlo k chybě. Zkontrolujte, zda má účet 'NT AUTHORITY\SYSTEM' dostatečná oprávnění ke čtení dat ze systémových pohledů hlavních databází."
Kliknutím na obrázek se zobrazí větší v novém okně
Povolení služby ESET pro získání vlastního umístění dat databáze
Chcete-li naší službě umožnit získat vlastní umístění dat databáze, postupujte podle jednoho ze tří níže uvedených postupů pomocí aplikace Microsoft SQL Server Management Studio:
- Udělte oprávnění "Zobrazit libovolnou definici" účtu NT AUTHORITY\SYSTEM (doporučeno)
- Přidělení role serveru 'sysadmin' účtu NT AUTHORITY\SYSTEM
- Přiřazení role 'db_owner' databázi 'master' v účtu NT AUTHORITY\SYSTEM
A. Udělte oprávnění "Zobrazit libovolnou definici" účtu NT AUTHORITY\SYSTEM (doporučeno)
-
Přejděte do aplikace Microsoft SQL Server Management Studio a připojte se k vybrané instanci serveru Microsoft SQL Server.
-
Klikněte na položku Securables. Ve sloupci Grant zaškrtněte políčko vedle možnosti Zobrazit libovolnou definici. Klikněte na OK.
Obrázek 2-1
B. Přidělte serverovou roli "sysadmin" účtu NT AUTHORITY\SYSTEM
-
Přejděte do aplikace Microsoft SQL Server Management Studio a připojte se k vybrané instanci serveru Microsoft SQL Server.
-
Klikněte na položku Role serveru, zaškrtněte políčko vedle položky sysadmin a klikněte na tlačítko OK.
Obrázek 2-2
C. Přiřaďte databázovou roli "db_owner" databázi "master" v účtu NT AUTHORITY\SYSTEM
-
Přejděte do aplikace Microsoft SQL Server Management Studio a připojte se k vybrané instanci serveru Microsoft SQL Server.
-
Klikněte na možnost Mapování uživatelů. V části Uživatelé namapovaní na toto přihlášení zaškrtněte políčko vedle položky master. V části Členství v databázové roli pro zaškrtněte políčko vedle db_owner. Klikněte na OK.
Obrázek 2-3
Více instancí serveru MS SQL Server na jednom serveru
Ke konkrétní instanci serveru Microsoft SQL Server se můžete připojit pomocí dialogového okna připojení, které se zobrazí po spuštění aplikace Microsoft SQL Server Management Studio:
-
Přejděte do aplikace Microsoft SQL Server Management Studio a připojte se k vybranému serveru.
- Do pole Název serveru zadejte instanci v níže uvedeném formátu a klikněte na tlačítko Připojit.
<server_name>\<instance_name>
Obrázek 3-1
Získání seznamu instancí serveru Microsoft SQL Server
Existuje několik způsobů, jak získat seznam instancí serveru Microsoft SQL Server nainstalovaných na serveru:
-
Při instalaci nové instance serveru Microsoft SQL Server se v kroku zadávání názvu nové instance zobrazí seznam aktuálně nainstalovaných instancí.
-
Seznam nainstalovaných instancí se nachází v následující cestě registru systému Windows:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\Instance NamesChcete-li získat seznam, použijte následující příkaz prostředí PowerShell:
Get-Item "HKLM:\SOFTWARE\Microsoft\Microsoft SQL Server\Instance Names\SQL" | % {$_.Property} -
Každá instance serveru Microsoft SQL Server instaluje do systému odpovídající službu. Název této služby má následující formát:
SQL Server (<instance_name>)Tyto služby můžete v systému filtrovat a získat seznam nainstalovaných instancí Microsoft Server SQL pomocí následujícího příkazu prostředí PowerShell:Get-Service | ?{ $_.DisplayName -like "SQL Server (*" }