Archiív rubriky: SQL Administrace

Rubrika SQL Administrace sdružuje články zaměřené na MS SQL Server, konkrétně administraci serveru a databází.

SQL Server edice a verze – Jak jednoduše zjistit verzi a edici SQL Server

Způsobů jak zjistit verzi, na které běží SQL Server instance vč. edice je více. Jedním ze způsobů je zobrazit si vlastnosti (properities) nad SQL Server instancí. Tam uvidíme identifikátor verze. Jak z čísla poznat verzi SQL Serveru? Moje verze SQL serveru viz screenshot je 14.0.2002.14. Důležité je první předčíslí, které udává verzi, která je v… Čtěte více »

SQL Jak poslat email přes SQL Script (sp_send_dbmail) – Database mail (Díl 5.)

Tento díl o mailování ze SQL Serveru bude asi poslední, už mi docházejí nápady 🙂 Poslat email SQL scriptem můžete přes systémovou proceduru “sp_send_dbmail”. Před tím je ale potřeba něco ponastavovat. Jak poslat email přes SQL Script – procedura sp_send_dbmail (1) Především musíte mít nastaven database mail – nastavit email profil můžete podle článku z prvního… Čtěte více »

SQL Alerts a notifikace nad SQL Serverem -Database mail (Díl 4.)

Jako správci SQL Serveru bychom měli vědět, co se na serveru během dne děje a jestli tam nedochází k nějakým nežádoucím incidentům. K tomu se dají využít Alerts (upozornění). Pokud se vyskytne nějaká událost, kterou hlídá definovaný alert, tak dojde k odeslání notifikace přes email operátorovi, který může stav napravit nebo ho vezme na vědomí.… Čtěte více »

SQL Emaily v Reporting services přes Subscription – Database mail (Díl 3.)

Reporting services jsou featura, kterou můžete využívat již od Express edice a je to sada služeb pomocí které můžete vytvářet a publikovat reporty. O Reporting services jsem napsal seriál článků (první díl zde). Uživatelé reportů si je můžou prohlížet na URL v interní síti (Report manager neboli Web portál), kterou si definujete při instalaci –… Čtěte více »

SQL Vytvoření emailové notifikace – Database mail (Díl 2.)

Minulé 2 články které předcházely jsem věnoval nastavení database mailu a nastavení change trackingu (CDC) neboli automatického sledování změn nad tabulkou. Tak mě napadá proč tyto témata nespojit – popíšu, jak pomocí automatického emailu odreportovat změny nad určitou tabulkou. to se může hodit ne? 🙂 Připomínám, že tato funkce je dostupná v edici Standard a vyšší.… Čtěte více »

SQL Nastavení emailování z gmailu – Database mail (Díl 1.)

Funkce database mail je dostupná pouze v edici SQL Server Standard a vyšší. V edici SQL Server Express se s ním bohužel nesetkáme. Tato funkce je užitečná především pokud chcete posílat různé zprávy ze SQL Serveru na Váš email. Typicky jde o různé kontroly a notifikace a upozornění. V neposlední řadě je tato funkce využitelná při… Čtěte více »

SQL Change data capture (CDC) – Tracking změn nad tabulkou

V aplikacích nebo komplikovaných podnikových informačních architekturách často potřebujeme z různých důvodů řešit historizaci záznamů a trackování změn hodnot. Většinou to bývá zejména z bezpečnostních důvodů => potřebujeme sledovat kdo a co mění, případně být schopni opravit chybu třeba ze strany uživatele nebo db admina. Dalším dobrým důvodem pro nasazení CDC je třeba to, že… Čtěte více »

Jak vygenerovat skript pro všechny objekty (tabulky, views, procedury, funkce) v databázi?

Důvodů proč bychom mohli potřebovat vytvořit definici všech SQL objektů v určité databázi může být hromada – zálohování, source controll nebo nasazení databáze v jiném prostředí (na jiné SQL instanci). Je to celkem triviální, SQL Server má pro tyto účely integrován jednoduchý nástroj. Jak vygenerovat skripty pro tabulky, views, procedury, funkce v databázi? (1) Klikneme pravým… Čtěte více »

SQL Error hlášky a závažnost (severity) – sys.messages + Popis

V SQL Server existuje systémová tabulka, ve které jsou uloženy všechny možné Error stavy a jejich závažnost = severity. Error severity nabývá hodnot 0-25 a definuje závažnost chyby. Všechny zprávy se kterými se můžeme v SQL Server setkat jsou uloženy v tabulce sys.messages. USE MASTER SELECT * FROM SYS.MESSAGES WHERE language_id = 1033 Tabulka obsahuje… Čtěte více »

SQL Automatická oprava indexů v SQL Server + skript

V minulém článku (viz. Fragmentace indexů) jsem popisoval, jak zjistit fragmentaci indexů přes skript využívající systémové tabulky. Podle doporučení Microsoftu bychom měli indexy s fragmentací mezi 5 – 30 % reorganizovat (REORGANIZE) a indexy nad 30 % rebuildovat (REBUILD). Využijeme zde skript z minulého článku a vytvoříme automatický skript. Oprava indexů provedená tímto způsobem je… Čtěte více »

SQL Fragmentace indexů – ukázka + sql skripty

Indexy jsou základním pilířem optimalizace SQL dotazů z databáze. Pomocí nich můžeme výrazně zrychlovat operace typu čtení. Bohužel se nám v čase indexy kazí – fragmentují a uspořádání indexů se zhoršuje. Fragmentace indexu je dána tím, že do tabulky se postupně vkládají nebo mažou záznamy a indexy se poté už neoptimalizují. To znamená že jednotlivé… Čtěte více »

BCP utilita – rychlý bulk import a export v SQL Server

BCP je utilita, která je defaultně nainstalována s edicemi SQL Server a slouží k hromadnému importu nebo exportu velkého objemu dat v uživatelsky definovaném formátu. Tato utilita je optimalizována pro velké přesuny dat buďto mezi instancemi SQL serveru nebo mezi SQL instancí a nějakým textovým souborem. Utilita se používá jak pro jednorázový import/export dat, tak… Čtěte více »

xp_cmdshell – Jak zapnout cmdshell v SQL Server?

xp_cmdshell je opravdu velmi silná procedura, která umožňuje spouštět příkazy přes příkazovou řádku (cmd). Pomocí cmdshell můžete přes SQL platformu realizovat jakoukoliv operaci nad Windows serverem – např. kopírování souborů, vytváření, mazání, apod. Z ale toho ale plynou také velká bezpečnostní rizika. Proto je také procedura defaultně vypnutá a nedoporučuje se její trvalé zapnut z… Čtěte více »

SQL Server Agent pro SQL Express + návod

SQL Server agent je nástroj integrovaný do SQL Serveru, jehož hlavním účelem je automatické plánování a spouštění úloh. Prostřednictvím SQL Agenta si můžeme založit tzv. Job a v rámci Jobu naplánovat jednotlivé úlohy – třeba spuštění skriptu, SSIS package, powershellu a mnoho dalšího. SQL Server agent je ale bohužel dostupný až od edice Standard a… Čtěte více »

SQL SQLCMD (Server command line) – SQL přes cmd

V tomto krátkém článku představím možnost, jak lze spustit sql skript mimo SQL management studio nebo jiný SW nástroj. Použijeme utilitu SQL server command line, zkráceně sqlcmd. Tato utilita umožňuje pracovat se SQL serverem prostřednictvím příkazové řádky. Využití je zřejmé a to třeba práce s SQL z různých aplikací. Já si tímto příspěvkem připravuju půdu… Čtěte více »