MS SQL Serwer Express
Dla potrzeb mniejszych aplikacji z bazami danych można z systemem PROMOTIC wykorzystać także bezpłatnie rozszerzane wersje
MS SQL Serwer Express.
Produkty te, według polityki licancyjnej firmy Microsoft, można
darmowo dystrybuować razem z systemem PROMOTIC, i tym samym zastosować je jako maszynę bazy danych dla PROMOTIC wszędzie tam, gdzie produkt ten spełnia wymagania.
Produkt jest do pobrania na stronach firmy Microsoft,
http://download.microsoft.com. Pobrać najnowszę wersję (np.
MS SQL Serwer 2012 Express with Management Tools).
MS SQL Serwer 2012 Express with Management Tools jest w
pełni kompatybilny z pozostałymi (odpłatnymi) wersjami
MS SQL Serwera. Częścią składową jest również tekstowa konsola administracyjna
OSQL.EXE (lub
ISQL.EXE) z wierszem poleceń.
MS SQL Serwer 2012 Express jest następcą wcześniejszych wersji i eliminuje niektóre ich braki (zwłaszcza usunięcie ograniczenia wydajności przy równoległym wykonywaniu poleceń, zwiększenie wielkości bazy danych z 4GB (dla
MS SQL Serwer 2005 Express) aż do 10GB (dla
MS SQL Serwer 2012 Express,
MS SQL Serwer 2008 R2 Express), są także do dyspozycji narzędzia klientskie
MS SQL Serwer Management Studio Express, również do pobrania na
http://download.microsoft.com.
Właściwości MS SQL Serwera oraz MS SQL Serwer Express
Zalety zastosowania MS SQL Serwera lub MS SQL Serwer Express w systemie PROMOTIC:
1) Wykorzystanie MS SQL Serwer Express produktu jest bezpłatne.
2) W przypadku przejścia na odpłatną wersję MS SQL Serwera łatwy upgrade. Dzięki zgodnemu rdzeniowi, są dane i programy zapisane w MS SQL Serwer Express w pełni kompatybilne z odpłatnymi wersjami MS SQL Serwera.
3) Wysoko wydajny, stabilny i technologicznie dojrzały produkt.
4) Łatwa instalacja ze wsparciem na większości wersji SO Windows.
5) Łatwa archiwizacja, ograniczenie praw dostępu, przetwarzanie transakcyjne, replikacja, itd.
6) Dostęp sieciowy bez konieczności współdzielenia plików.
7) Wykorzystanie wbudowanego języka Transact SQL do programowania różnych kontroli danych, przeliczeń, filtrów bezpośrednio w Serwerze SQL.
8) Jest uruchomiony jako usługa Windows (jest uruchomiony nawet jeżeli nie jest zalogowany żaden użytkownik do komputera).
9) Może być wykorzystany przez projektantowo wytwarzanie i rozruchu aplikacji, która następnie zostanie uruchomiona u klienta z wykorzystaneim MS SQL Serwera.
10) Można ustawić, żeby niektóre z komponentów PROMOTIC zapisywały własne dane do MS SQL Serwera (np. alarmy, trendy).
Mankamenty i ograniczenia MS SQL Serwer 2012 Express:
1) Wielkość jednej bazy danych może wynosić maksymalnie 10 GB (dotyczy MS SQL Server 2012 Express, MS SQL Server 2008 R2 Express) i 4GB (dotyczy MS SQL Serwer 2005 Express)
2) Maksymalnie możliwa wielkość pamięci RAM do wykorzystania jest ograniczona do 1GB.
3) Nie jest dostępna usługa MS SQL Server Agent.
4) Wykorzystany zostanie tylko jeden procesor a maksymalnie 4 rdzenie tego procesora. (działa także na komputerze kilkuprocesorowym, lecz MS SQL Serwer Express nie potrafi tego wykorzystać)
Instalacja MS SQL Serwera lub MS SQL Serwera Express
MS SQL Serwer oraz
MS SQL Serwer Express można zainstalować przy pomocy odpowienich programów instalacyjnych i można je zainstalować jako nie nazwaną lub nazwaną instancją SQL serwera.
Dla potrzeb systemu PROMOTIC jest lepiej zastosować nie nazwanej instancji, ponieważ wszystkie następne skrypty konfiguracyjne odnoszą się właśnie do tej nie nazwanej instancji.
W przypadku zastosowania nazwanej instancji (np. z powodów, że na konputerze już istnieje nie nazwana isntancja i nie jest możliwe jej wykorzystanie) jest konieczne zmienić odpowienie skrypty konfiguracyjne (poszczególne kroki są opisane bezpośrednio w pliku
MSSqlInit.bat, patrz dalej
Konfigurace MS SQL Serweru).
W przypadku
MS SQL Serwer Express instalacja wykonuje się również przy pomocy programu instalacyjnego, narzędzia klienckie
MS SQL Server Management Studio Express są instalowane przez samodzielny program instalacyjny, dla biegu
MS SQL Serwer Express jest konieczne instalacja
Microsoft NET.Frameworks 2.0 lub nowszej wersji. Podczas instalacji dowolnie
MS SQL Serwer lub
MS SQL Serwer Express jest konieczne ustawić uwierzytelnienie użytkowników wykonywaną przez Serwer
MS SQL (w innym przypadku uwierzytelnienie było by założone wyłącznie na uwierzytelnieniu SO
Windows NT i konfiguracja Serwera SQL dla potrzeb systemu PROMOTIC byłaby bardziej złożona).
Konfiguracja MS SQL Serwera lub MS SQL Serwera Express
Żeby zainstalowany
MS SQL Serwer lub
MS SQL Serwer Express można było wykorzystywać z aplikacji PROMOTIC, jest konieczne przeprowadzić jego podstawową konfigurację (wytworzenie baz danych i użytkowników z wstępnie ustawionymi prawami dostępu). To można wykonać albo przy pomocy zainstalowanych narzędzi klienckich
MS SQL Server Management Studio Express lub przy pomocy uprzednio przygotowanych plików wsadowych.
Ustawienie przy pomocy
pliku wsadowego wykonuje się poprzez edycję pliku (edycja jest konieczna tylko jeżeli nazwa serwera, nazwa użytkownika oraz hasło z instalacji różni się od wartości wpisanych w pliku) i uruchomieniem wsadowego pliku
MsSQLInit.bat w folderze
\Promotic\Tools\MsSQL.
Podczas konfiguracji zostanie wytworzona nowa baza danych,
'pm_data' dostępna dla danych użytkowników przy pomocy obiektu
PmaAdo,
PmaDatabase, do zapisu trendów przy pomocy obiektu
PmaTrendGroup, do zapisu alarmów przy pomocy obiektu
PmaAlarmGroup oraz do zapisu eventów przy pomocy obiektu
PmaEventGroup. Poza tym są wytworzone 3 konta użytkowników, gdzie
'pm_admin' posiada uprawnienia administratora,
'pm_writer' posiada prawa do odczytu i zapisu, może wytwarzać, usuwać i zmieniać strukturę tablic oraz
'pm_reader' posiada prawo tylko do odczytu danych z tablic. Ponadto jest zarejestrowane źródło ODBC
'pm_data' dla dostępu poprzez interfejs ODBC do bazy danych
'pm_data'.
Opis samego ustawienia:
1) Otwórz okno wiersza poleceń.
2) Ustaw folder
C:\Promotic\Tools\MsSQL jako folder aktywny przy pomocy polecenia
cd \Promotic\Tools\MsSQL.
3) Uruchom wsadowy plik MsSQLInit.bat.
4) Skontroluj, czy podczas biegu pliku wsadowego nie są wypisane komunikaty o błędach.
5) Jeżeli baza danych ma być dostępna również poprzez sieć (domyślnie: lokalnie), wtedy przy pomocy narzędzia MS SQL Server Configuration Manager jest konieczne ustawić protokoł TCP/IP na Enabled w sekcji MS SQL Server Network Configuration/Protocols for SQLEXPRESS(MSSQLSERVER)/. Zmiana ustawienia wymaga restartu SQL serwera.
Opis czynności przeprowadzanych podczas konfiguracji:
1) Plik wsadowy uruchomi konfiguracyjny skrypt SQL MsSQLInit.sql przy pomocy programu użytkowego OSQL.
2) Jest wytworzona nowa baza danych 'pm_data' dla danych użytkowników aplikacji.
3) Są założona nowe konta użytkowników 'pm_admin', 'pm_writer' oraz 'pm_reader', jest ustawiona ich początkowa baza danych 'pm_data' oraz są ustawione ich hasła początkowe.
4) Kontom jest ustawiony dostęp do bazy danych 'pm_data'.
5) Dla konta 'pm_admin' dla bazy danych 'pm_data' jest ustawiona rola systemowa 'sysadmin'.
6) Dla konta 'pm_writer' dla bazy danych 'pm_data' są ustawione role bazy danych 'db_ddladmin', 'db_datareader' oraz 'db_datawriter'.
7) Dla konta 'pm_reader' dla bazy danych 'pm_data' są ustawione role bazy danych 'db_datareader'.
8) Jest zarejestrowane ODBC źródło danych 'pm_data' do dostępu do bazy danych 'pm_data' poprzez ODBC.
Dostęp do MS SQL Serwera z aplikacji PROMOTIC
Baza danych 'pm_data': jest w systemie PROMOTIC przeznaczona do danych użytkowników (obiekty
PmaAdo oraz
PmaDatabase) tak również do danych komponent systemu PROMOTIC (trendy, alarmy).
Obiekt PmaAdo: aplikacja może przystępować albo bezpośrednio na przykład przy pomocy
ADO Provider 'SQLOLEDB' lub poprzez ODBC przy pomocy
ADO Provider 'MSDASQL' (nie jest potrzebne zarejestrowane ODBC źródło danych
'pm_data'). W tym obiekcie jest konieczne ustawić następujace konfiguratory:
Obiekt PmaDatabase: aplikacja może pracować z danymi w tej bazie danych poprzez interfejs ODBC (jest potrzebne zarejestrowane ODBC źródło danych
'pm_data'). W tym obiekcie jest konieczne ustawić następujace konfiguratory:
4) '
Tabela (plik)' na nazwę tabeli, z którą będzie się pracować (jeżeli nie zostanie wykorzystana możliwość polecenia SQL
SELECT podczas otwarcia tabeli).
5) '
Użytkownik' na nazwę użytkownika MS SQL Serveru, na przykład na
'pm_writer'.
6) '
Hasło' na hasło odpowiedniego użytkownika MS SQL Serveru w celu uwierzytelnienia.
Obiekt PmaTrendGroup: komponent trendów może zapisywać/czytać swe dane do/z bazy danych. W tym obiekcie jest konieczne ustawić następujace konfiguratory:
Obiekt PmaAlarmGroup: komponent alarmów może zapisywać/czytać swe dane do/z bazy danych. W tym obiekcie jest konieczne ustawić następujace konfiguratory:
1) konfigurator "
Typ zapisania" na
Baza danych MS SQL Server cyclic.
2) a w oknie "
Baza danych MS SQL Server cyclic" jest konieczne ustawić pozycje odnoszące się do bazy danych, do której dane będą zapisywane.
Te są ustawione wstępnie na przykład w taki sposób:
"server=.\SQLEXPRESS;database=pm_data;uid=pm_writer;pwd=pmwriter;"
(nazwa instancji serwera
.\SQLEXPRESS może się różnić).
Konsola tekstowa do administracji MS SQL Serwera
Do administracji
MS SQL serwera (Express) można zastosować tekstową konsolę z wierszem poleceń (
OSQL.EXE lub
ISQL.EXE według typu
MS SQL Serwera). Przy uruchomieniu konsoli można wprowadzić parametry do połączenia do odpowiedniego
MS SQL Serwera. Lista możliwych parametrów zostanie wyprowadzona na konsolę po wpisaniu parametru
'/?':
"C:\Program Files\Microsoft SQL Server\90\Tools\Binn\OSQL.EXE" /?
Uruchomienie konsoli dla domyślnie zainstalowanego
MS SQL Serwer i zalogowanie użytkownika
'pm_admin':
"C:\Program Files\Microsoft SQL Server\90\Tools\Binn\OSQL.EXE" -S(local) -Upm_admin -Padmin
Konsola umożliwia interaktywną pracę z Serwerem SQL. Z wiersza poleceń można wykonywać dowolne polecenie SQL (
Transact SQL). Jeżeli polecenie SQL zwraca dane, wtedy tą są one wyświetlone z wiersza poleceń. Każde wprowadzone polecenie SQL zostanie wykonane dopiero po wprowadzeniu specjalnego polecenia
GO. Polecenie SQL nie musi być wprowadzone na jednym wierszu, lecz może być rozdzielone na większą ilość wierszy, kiedy polecenie zostanie wykonane za jednym razem po wprowadzeniu polecenia
GO. Wcześniej wprowadzone linie są zapamiętywane i można w nich wertować przy pomocy klawiszy
"klawisz do góry" lub
"klawisz w dół". W wierszu poleceń można się poruszać i edytować przy pomocy klawiszy
"klawisz w lewo" oraz
"klawisz w prawo".
Wiersz poleceń umożliwia pełną administrację serwera SQL, w dodatku nawet z innego komputera. Na przykład konfigurację
MS SQL Serwera, wytwarzenie i usuwanie baz danych, wytwarzanie i odtwarzanie kopii zapasowych, wytwarzanie, zmianę i usuwanie tablic, dodawanie, zmianę i usuwanie danych w poszczególnych tablicach, wyświetlenie i wyszukiwanie danych, dodawanie i usuwanie użytkowników, zmianę haseł wejściowych, ustawianie praw dostępu do poszczególnych obiektów w bazie danych, itd.
Wskazówka: W SO
Windows jest możliwe wytworzenie skrótu do programu
OSQL.EXE (
ISQL.EXE) i we właściwościach skrótu następnie uzupełnić wyżej przedstawione parametry logowanie. Wynikiem tego jest skrót (ikona) w SO
Windows, po którgo aktywacji zostanie otwarta konsola dla odpowiedniego
MS SQL Serwera pod odpowiednim kontem użytkownika.
Wskazówka: Skasowanie zawartości konsoli można wykonać przy pomocy polecenia:
!!CLS.