Promotic

MS SQL Server - popis, instalace a správa

MS SQL Server Express

Pro potřeby menších databázových aplikací lze se systémem PROMOTIC využít i zdarma šiřitelné verze MS SQL Server Express. Tyto produkty, podle licenční politiky firmy Microsoft, lze se systémem PROMOTIC zdarma distribuovat, a tudíž jej použít jako databázový stroj pro aplikace PROMOTIC všude tam, kde tento produkt vyhovuje. Produkt je ke stažení na strankách firmy Microsoft, http://download.microsoft.com. Stahovat nejnovější verzi (např. MS SQL Server 2012 Express with Management Tools). Tyto zdarma produkty jsou plně kompatabilní s ostatními (placenými) verzemi MS SQL Serveru. Součástí je i správcovská textová konzola OSQL.EXE (nebo ISQL.EXE) s příkazovým řádkem.
MS SQL Server 2012 Express je následovníkem dřívějších verzí a odstraňuje některé jejich nedostatky (zejména odstranění omezení výkonu při paralelním vykonávání dotazů, zvětšení velikosti databáze ze 4GB (pro MS SQL Server 2005 Express) až na 10GB (pro MS SQL Server 2012 Express, MS SQL Server 2008 R2 Express), jsou k dispozici klientské nástroje MS SQL Server Management Studio Express, taktéž ke stažení na http://download.microsoft.com.

Charakteristika MS SQL Serveru a MS SQL Server Express

Výhody použití MS SQL Serveru nebo MS SQL Server Express v systému PROMOTIC:
1) Za použití MS SQL Server Express není potřeba platit žádné poplatky.
2) V případě přechodu na placenou verzi MS SQL Serveru snadný upgrade. Díky shodnému jádru, jsou data a programy uložené v MS SQL Server Express plně kompatabilní s placenými verzemi MS SQL Serveru.
3) Vysoce výkonný, stabilní a technologicky vyspělý produkt.
4) Snadná instalace s podporou na většině OS Windows verzích.
5) Snadné zálohování, omezení přístupovými právy, transakční zpracování, replikace, atd.
6) Síťový přístup bez nutnosti souborového sdílení.
7) Využítí vnitřního jazyka Transact SQL k naprogramování různých kontrol dat, přepočtů, filtrů přímo do MS SQL Serveru.
8) Běží jako služba (běží, i když není k počítači přihlášený žádný uživatel).
9) Projektant jej může využít k vývoji a ladění aplikace, která pak poběží u zákazníka na MS SQL Serveru.
10) Lze nastavit, aby i některé komponenty PROMOTIC zapisovaly svá data do MS SQL Serveru (např. alarmy, trendy).


Nevýhody a omezení MS SQL Server 2012 Express:
1) Velikost jedné databáze může být maximálně 10 GB (pro MS SQL Server 2012 Express, MS SQL Server 2008 R2 Express) a 4GB (pro MS SQL Server 2005 Express)
2) Maximálně možná využitelná RAM paměť je 1GB.
3) Není dostupná služba MS SQL Server Agent.
4) Využije se pouze pouze 1 fyzické CPU a maximálně 4 jádra tohoto CPU. (běží i na víceprocesorovém počítači, ale MS SQL Server Express této výhody neumí využít)

Instalace MS SQL Serveru nebo MS SQL Serveru Express

MS SQL Server a MS SQL Server Express se instalují příslušnými instalačními programy a lze je nainstalovat buď jako nepojmenovanou nebo pojmenovanou instanci MS SQL Serveru. Pro potřeby systému PROMOTIC je lepší využít nepojmenované instance, protože všechny následné konfigurační skripty dodávané s PROMOTIC se odkazují na tuto nepojmenovanou instanci. V případě použití pojmenované instance (např. z důvodů, že na cílovém počítači už nepojmenovaná instance existuje a pro aplikaci ji nelze použít) je nutno opravit příslušné konfigurační skripty (postup popsán přímo v souboru MSSqlInit.bat, viz dále Konfigurace MS SQL Serveru).
V případě MS SQL Server Express se instalace provádí taky instalačním programem, klientské nástroje MS SQL Server Management Studio Express se instalují samostatným instalačním programem, pro běh MS SQL Server Express je nutno nainstalovat Microsoft NET.Frameworks 2.0 nebo vyšší verze. V průběhu instalace ať už MS SQL Server nnebo MS SQL Server Express je nutno povolit autentizaci uživatelů prováděnou MS SQL Serverem (v jiném případě by autentizace byla založena pouze na autentizaci OS Windows NT a konfigurace MS SQL Serveru pro potřeby systému PROMOTIC by byla složitější).

Konfigurace MS SQL Serveru nebo MS SQL Serveru Express

Aby se nainstalovaný MS SQL Server nebo MS SQL Server Express mohl začít používat z aplikace PROMOTIC, je nutno provést jeho základní konfiguraci (vytvoření databází a uživatelů s předkonfigurovanými přístupovými právy). Toto lze provést buď pomocí instalovaných klientských nástrojů MS SQL Server Management Studio Express nebo pomocí předpřipravených povelových souborů.
Postup pomocí povelového souboru se provádí úpravou (upravuje se pouze pokud název serveru, název uživatele a heslo z instalace je odlišné od hodnot v souboru) a spuštěním povelového souboru MsSQLInit.bat ve složce \Promotic\Tools\MsSQL.
Během konfigurace se vytvoří nová databáze 'pm_data' přístupná pro uživatelská data objektem PmaAdo, PmaDatabase, pro ukládání trendů objektem PmaTrendGroup, pro ukládání alarmů objektem PmaAlarmGroup a pro ukládání eventů objektem PmaEventGroup. Dále jsou vytvořeny 3 uživatelské učty, kde 'pm_admin' má nastaveny administrátorská práva, 'pm_writer' má nastaveny práva pro čtení i zápis a má povoleno zakládat, mazat a měnit strukturu tabulek a 'pm_reader' má nastaven přístup k tabulkám jen pro čtení. Navíc je zaregistrován ODBC zdroj 'pm_data' pro přístup přes ODBC do databáze 'pm_data'.

Postup vlastní konfigurace:
1) Otevřete okno příkazového řádku.
2) Nastavte složku C:\Promotic\Tools\MsSQL jako pracovní složku příkazem cd \Promotic\Tools\MsSQL.
3) Spusťte povelový soubor MsSQLInit.bat.
4) Zkontrolujte, zda během běhu povelového souboru nejsou vypsány chybová hlášení.
5) Pokud databáze má být zpřístupněna na síti (přednastaveno: lokální) pak je nutno nastavit nástrojem MS SQL Server Configuration Manager v MS SQL Server Network Configuration/Protocols for SQLEXPRESS(MSSQLSERVER)/ protocol TCP/IP na Enabled. Přepnutí nastavení vyžaduje restart SQL serveru.


Popis činností provedených během konfigurace:
1) Povelový soubor spustí SQL konfigurační skript MsSQLInit.sql pomocí nástroje OSQL.
2) Vytvoří se nová databáze 'pm_data' pro uživatelská data aplikace.
3) Založí se nové přihlašovací účty 'pm_admin', 'pm_writer' a 'pm_reader', nastaví se jejich výchozí databáze 'pm_data' a nastaví se počáteční hesla.
4) Účtům se povolí přístup do databáze 'pm_data'.
5) Účtu 'pm_admin' se přířadí pro databázi 'pm_data' systémová role 'sysadmin'.
6) Účtu 'pm_writer' se přířadí pro databázi 'pm_data' databázové role 'db_ddladmin', 'db_datareader' a 'db_datawriter'.
7) Účtu 'pm_reader' se přířadí pro databázi 'pm_data' databázové role 'db_datareader'.
8) Je zaregistrován ODBC datový zdroj 'pm_data' pro přístup přes ODBC do databáze 'pm_data'.

Přístup z PROMOTIC k MS SQL Serveru

Databáze 'pm_data': je v systému PROMOTIC určena jak pro uživatelská data (objekty PmaAdo a PmaDatabase) tak pro data komponent systému PROMOTIC (trendy, alarmy).

Objekt PmaAdo: aplikace může přistupovat buď přímo například pomocí ADO Provider 'SQLOLEDB' nebo přes ODBC pomocí ADO Provider 'MSDASQL' (není nutný zaregistrovaný datový ODBC zdroj 'pm_data'). V tomto objektu je nutno nastavit následující konfigurátory:
1) 'Parametry připojení k databázi', například "provider=SQLOLEDB;server=.\SQLEXPRESS;database=pm_data;uid=pm_writer;pwd=pmwriter;".


Objekt PmaDatabase: aplikace může pracovat s daty v této databázi přes ODBC rozhraní (nutný zaregistrovaný datový ODBC zdroj 'pm_data'). V tomto objektu je nutno nastavit následující konfigurátory:
1) 'Technologie' na Přístup přes ODBC.
2) 'Typ databáze' na 'ODBC; Data source'.
3) 'Databáze (soubor, složka, datový zdroj)' na název zaregistrovaného ODBC zdroje, například na 'pm_data'.
4) 'Tabulka (soubor)' na název tabulky, se kterou se bude pracovat (pokud nebude využita možnost SQL příkazu SELECT při otevření tabulky).
5) 'Uživatel' na název uživatele MS SQL Serveru, například na 'pm_writer'.
6) 'Heslo' na heslo příslušného uživatele MS SQL Serveru kvůli autentizaci.
7) 'Parametry připojení k databázi' například "provider=SQLOLEDB;server=.\SQLEXPRESS;database=pm_data;uid=pm_writer;pwd=pmwriter;".


Objekt PmaTrendGroup: komponenta trendů může ukládat/číst svá data do/z databáze. V tomto objektu je nutno nastavit následující konfigurátory:
2) a v okně Database MS SQL server backups (zastaralé) nebo Database MS SQL server cyclic je nutno nakonfigurovat položky odkazující databázi, do níž se budou zapisovat data.
Tyto jsou předkonfigurovány například takto:
"server=.\SQLEXPRESS;database=pm_data;uid=pm_writer;pwd=pmwriter;"
(název instance serveru .\SQLEXPRESS se může lišit).


Objekt PmaAlarmGroup: komponenta alarmů může ukládat/číst svá data do/z databáze. V tomto objektu je nutno nastavit následující konfigurátory:
1) konfigurátor "Typ uložení" na MS SQL databáze.
2) a v okně "MS SQL databáze" je nutno nakonfigurovat položky odkazující databázi, do níž se budou zapisovat data.
Tyto jsou předkonfigurovány například takto:
"server=.\SQLEXPRESS;database=pm_data;uid=pm_writer;pwd=pmwriter;"
(název instance serveru .\SQLEXPRESS se může lišit).

Textová konzola pro správu MS SQL Serveru

Ke správě MS SQL Serveru (Express) lze použít textové konzoly s příkazovým řádkem (OSQL.EXE nebo ISQL.EXE podle typu MS SQL Serveru). Při spuštění konzoly lze zadat parametry pro připojení k příslušnému MS SQL Serveru. Seznam možných parametrů vypíše konzola po zadání parametru '/?':
  "C:\Program Files\Microsoft SQL Server\90\Tools\Binn\OSQL.EXE" /?
Spuštění konzoly pro implicitně nainstalovaný MS SQL Server a přihlášení uživatele 'pm_admin':
  "C:\Program Files\Microsoft SQL Server\90\Tools\Binn\OSQL.EXE" -S(local) -Upm_admin -Padmin
Konzola umožňuje interaktivní práci s MS SQL Serverem. Z příkazové řádky lze provádět libovolné SQL příkazy (Transact SQL). Pokud SQL příkaz vrací výsledná data, pak jsou tato data zobrazena v příkazové řádce. Každý zadaný SQL příkaz se provede teprve po zadání speciálního příkazu GO. SQL příkaz není nutno zadat na jediném řádku, ale může se rozdělit na více řádků, kdy příkaz se provede najednou zadáním příkazu GO. Dříve zadané řádky se pamatují a lze jimi listovat pomocí kurzorových kláves <Up> nebo <Down>. V příkazu se dá pohybovat a editovat pomocí <Left> a <Right>.
Příkazová řádka umožňuje úplnou správu MS SQL Serveru a to i z jiného počítače. Například konfiguraci MS SQL Serveru, vytváření a mazání databází, vytváření a obnovování záloh, vytváření, změnu a mazaní tabulek, přidávání, změnu a mazání dat v jednotlivých tabulkách, zobrazení a vyhledání dat, přidávání a mazání uživatelů, změna přihlašovacích hesel, nastavování přístupových práv k jednotlivým objektům v databázi, atd.
Tip: Lze udělat v OS Windows zástupce na program OSQL.EXE (ISQL.EXE) a ve vlastnostech zástupce pak přidat výše uvedené přihlašovací parametry. Výsledkem je zástupce (ikona) v OS Windows, po jehož aktivaci se otevře konzola pro příslušný MS SQL Server s přihlášeným uživatelem.
Tip: Smazání obsahu konzoly lze příkazem: !!CLS.
© MICROSYS, spol. s r. o.Tavičská 845/21 703 00 Ostrava-Vítkovice