MS SQL Server

Šifrované připojení (SSL) k SQL Serveru

Pro splnění bezpečnostních požadavků je v poslední době žádoucí šifrovat veškerou komunikaci klienta s SQL Serverem. Standardně probíhá komunikace nešifrovaně (šifruje se pouze výměna přihlašovacích údajů). Jak tedy nastavit šifrovanou komunikaci s SQL Serverem? První, co je potřeba pro zprovoznění šifrovaného spojení s SQL Serverem, je zajistit certifikát pro SQL Server. Jedná se o certifikát vydaný důvěryhodnou certifikační autoritou, resp....

Co je vlastně NULL?

Co je vlastně v SQL Serveru za hodnotu to NULL? Z pohledu Microsoft SQL Serveru je NULL popsána jako neznáma hodnota. Není to tedy nula [0], není to nic [], není to ani prázdný textový řetězec ['']. A z toho pak vyplývá i chování této hodnoty při porovnávání. Tím, že jde o neznámou hodnotu, tedy něco, co nevím, co je, nemohu ani jednoznačně říct, jestli se NULL = NULL. Například představme si následující tabulku...

Přidání skupiny Administrators do SQL Serveru

Od verze SQL Serveru 2008 již není lokální skupina Administrators defaultně nastavena jako Login SQL Serveru. Pokud potřebujeme přidat lokální skupinu uživatelů jako Login do SQL server je potřeba ji však zadat jako: BUILTIN\Administrators Pokud skupinu zadáme např. přes Management studio a vyhledáme ji přes Vybrat objekt, je tato skupina označena jako NAZEV_PC\Administrator a SQL Server ji nedokáže najít a následuje chyba: Create failed for Login...

Promazávání starých databází na SQL Serveru

Před nějakou dobou jsem narazil na problém se specifickými uživateli MS SQL Serveru. Specifické bylo v tomto případě to, že z důvodu své pracovní náplně vytvářeli tito uživatelé velké množství databází na SQL Serveru, které vždy dočasně použili, ale poté samozřejmě nesmazali. Vzhledem k tomu, že nad jednotlivými databázemi spolupracovalo více lidí a doba použití byla mezi jedním dnem až zhruba třemi měsíci, nebylo možné uživatele administrativně...

Komprimované zálohy databází

Microsoft SQL Server nabízí od verze 2008 možnost vytvářet přímo komprimované zálohy. Od verze 2008 R2 je toto možnost již od edice Standard. Jelikož je komprimovaná záloha podstatně menší než nekomprimovaná, zapisuje se méně dat a tím se výrazně snižuje potřeba diskových I/O operací. Z tohoto důvodu je provedení komprimované zálohy ve výsledku rychlejší než u běžné zálohy. Z důvodu provádění komprese dat se však významně zvyšuje využití...

Změna názvu počítače s instalovaným SQL Serverem

Pokud je na počítači nainstalován Microsoft SQL Server není možné změnit jeho název, resp. je, ale následně se k SQL Serveru nepůjde připojit. Po změně názvu počítače je nový název SQL Serverem při startu rozpoznán, je ale potřeba změnit i systémová metadata uložená v sys.servers. Změnu metadat je nutné provést před změnou názvu počítače. Nejprve se můžeme podívat jaký je název SQL Serveru v sys.servers. K tomu použijeme globální proměnou...

Přesun souborů databáze

Čas od času je potřeba změnit umístění databázových souborů databází uložených na fyzických discích MS SQL Serveru, např. z důvodů zvýšení kapacity (přidání nového disku pro data) nebo z důvodů zvýšení výkony a bezpečnosti (oddělení úložiště souborů dat a logů). Jakým způsobem je možné toto provést? V zásadě je možné použít následující způsoby: Je možné použít přesunutí pomocí příkazů Attach/Detach, tedy databázi...

Mapování databázového usera na serverový login

V Microsoft SQL Serveru existují na úrovni serveru Loginy, které zajišťují přístup k databázovému serveru. Tyto loginy jsou následně mapovány na databázové uživatele (users) v jednotlivých databází, kteří pak zajišťují přistup k daným databázím a objektům v nich. Vzhledem k tomu, že databázový User je vždy uložen v databázi, je s ní i zálohován, resp. je její součástí i při odpojení [Detach] a přenosu na jiný server. Pokud tedy obnovujeme...