Promotic

FireBird

FireBird - SQL serwer bazodanowy

Dla potrzeb mniejszych aplikacji bazodanowych z systemem PROMOTIC można zastosować również bezpłatnie dostępny SQL serwer bazy danych FireBird. Projekt ten powstał odłączeniem z produktu komercyjnego InterBase od firmy Borland. Jest open-source produkt z bardzo luźną licencją, która umożliwia dostarczać razem z aplikacją również instalacyjny pakiet serwera SQL i narzędzie klienckie. Licencja umożliwia również zastosowanie w sferze komercyjnej (w odróżnieniu od bazy danych MySQL). Ważnym faktem jest to, że FireBird nie posiada żadnego sztucznego ograniczenia funkcyjnego lub obniżoną funkcjonalność (na przykład MS SQL Express Edition posiada ograniczenie wielkości bazy danych, wykorzystania pamięci, procesora, itd.).
Produkt jest do dyspozycji na stronach projektu http://sourceforge.net/projects/firebird. Problematyce bazy danych FireBird oraz InterBase są poświęcone strony http://www.ibphoenix.com, gdzie są umieszczone odniesienia (sekcja Downloads) zarówno do własnych pakietów instalacyjnych FireBird, jak również do dużej ilości narzędzi pomocniczych (płatnych i bezpłatnych).
Częścią FireBird jest zawsze również tekstowa konsola administracyjna ISQL.EXE z wierszem poleceń, umożliwiającym administrację z wiersza poleceń oraz uruchamianie skryptów SQL z dysku twardego. Przy pomoca następnej konsoli tekstowej GSEC.EXE można administrować użytkowników SQL bazy danych. Opis instalacji bazy danych FireBird oraz jej podstawowa konfiguracja włącznie z dostępem do danych w tabelach jest opisana w podręczniku Quick Start Guide, który jest częścią instalacji i jest dostępny w menu Start w SO Windows.
Do konfiguracji serwera SQL jest wszelako szybsze, dogodniejsze i przede wszystkim łatwiejsze wykorzystanei któregoś z graficznych narzędzi administracyjnych. Prawdopodobnie najczęściej do tego jest stosowanie narzędzia IBOConsole, które jest również bezpłatne. Pakiet instalacyjny narzędzia administracyjnego IBOConsole można również pobrać z wcześniej przedstawionych stron lub bezpośrednio ze stron jego autora http://www.mengoni.it/Downloads/IBOConsoleSetup.exe. Częścią IBOConsole jest również lista i opis poleceń SQL w formie plików pomocy.

Do bazy danych można zapisywać:
- przy pomocy obiektu PmaTrendGroup, jeżeli w tym obiekcie konfigurator "Typ zapisu" jest ustawiony na Database FireBird cyclic
- przy pomocy obiektu PmaAdo
- przy pomocy obiektu PmaDatabase (przestarzałe) poprzez ustawione nazwane źródło danych ODBC

Właściwości FireBird

Zalety zastosowania FireBird w systemie PROMOTIC:
1) Za jego stosowanie nie trzeba płacić żadnych opłat.
2) Funkcjonalność produktu nie jest w żaden sposób sztucznie ograniczona.
3) Wydajny, stabilny i technologicznie zaawansowany produkt.
4) Funkcjonalnie i konfiguracyjnie chodzi o prostszy produkt niż na przykład MS SQL Serwer.
5) Każda baza danych jest w jedynym samodzielnym pliku, który może być dowolnie ulokowany na dysku.
6) Łatwa instalacja oraz wsparcie na większości systemów operacyjnych (SO Windows oraz Linux).
7) Prosta archiwizacja, ograniczanie dostępu przy pomocy uprawnień, wsparcie transkacji, replikacja, itd.
8) Dostęp sieciowy bez konieczności współdzielenia plików.
9) Wykorzystanie wewnętrznego języka SQL do naprogramowania różnych kontrol danych, przeliczeń, filtrów bezpośrednio do Serwera SQL.
10) Działa jako usługa Windows (działa nawet jeżeli nie jest zalogowany żaden użytkownik) lub jako uruchomiony program (ikona w tray).
11) Jest możliwe ustawienie systemu PROMOTIC tak, żeby niektóre komponenty zapisowały swe dane do FireBird (np. trendy).


Mankamenty i ograniczenia FireBird:
1) Chodzi o projekt wspólnotowy, który nie posiada oficjalnego wsparcia producenta. Ewentualne problemy projektant musi rozwiązywać we własnym zakresie. Z tym jest związana również mniejsza ilość w niektórych przypadkach niec przestarzałej dokumentacji.

Instalacja FireBird

Instalacja bazodanowego serwera SQL FireBird. Podczas instalacji jest konieczne przejść kilku oknami.
1) Okno wyboru komponentów (Select componets) umożliwia wybór typu instalacji.
a) Pełna instalacja serwera i narzędzie deweloperskich (Full installation of Server and development tools). Instalacja samego serwera SQL FireBird (włącznie z narzędziami klienckimi i driverem ODBC).
b) Minimalna instalacja kliencka (Minimum client install). Instalacja drivera ODBC do dostępu do serwera SQL FireBird na inym komputerze.
2) Okno wyboru zadań dodatkowych (Select Additional tasks) umożliwia podstawową konfigurację.
a) Zastosowanie "strażnika" do administracji serwera (Use Guardian to control the server).
b) Urucomienie serwera FireBird (Run FireBird server as) jako usługa Windows lub jako aplikacji (application). Na komputerze docelowym jest bezpieczniejsze uruchamianie serwera jako usługę Windows. Na komputerze deweloperskim jest bardziej dogodne uruchamianie serwera jako aplikacji w przypadku potrzeby.
c) Automatycznie uruchomienie serwera podczas uruchomienia komputera (Start FireBird automatically everytime you boot up).
d) Skopiowanie biblioteki klienta FireBird do foldera systemowego Windows (Copy Firebird client library to system folder). Uwaga: Opcja ta powinna być wybrana, żeby poprawnie działała graficzna aplikacja administracyjna IBOConsole.

Konfiguracja FireBird

Żeby zainstalowany FireBird można było stosować z aplikacji PROMOTIC, jest konieczne wykonać jego podstawową konfigurację (wytworzenie bazy danych i użytkowników z wstępnie ustawionymi prawami dostępu). To można najprościej wykonać przy pomocy zanistalowanych narzędzi klienckich IBOConsole. Dla systemu PROMOTIC zalecamy wytworzenie baz danych i użytkowników w podobny sposób, jak wprzypadku Serwera MS SQL (patrz: MS SQL Serwer - opis, instalacja oraz administracja).
Uwaga: konto Administratorskie w FireBird nazywa się SYSDBA i po instalacji ma wstępnie ustawiona hasło na masterkey. Przy pomocy graficznego narzędzia administracyjnego IBOConsole lub z konsoli tekstowej GSEC.EXE jest konieczne zmienić domyślne hasło.
Wytworzenie dwu baz danych:
- 'pm_data' dla danych użytkownika dostępnych przy pomocy obiektu PmaAdo
- 'pm_trend' do zapisu trendów przy pomocy obiektu PmaTrendGroup

Następnie wytworzyć 3 konta użytkowników:
- 'pm_admin' będzie mieć ustawione prawa administratora
- 'pm_writer' będzie mieć ustawione prawa do odczytu i zapisu oraz może wytwarzać, usuwać i zmieniać strukturę tabel
- 'pm_reader' którybędzie mieć dostęp do danych w tabelach tylko do odczytu

Następnie wytworzyć źródło ODBC 'pm_data' dla dostępu do bazy danych 'pm_data' poprzez interfejs ODBC, przy pomocy administratora źródeł danych ODBC (oprogramowanie ODBCAD32.EXE).

Dostęp do FireBird z aplikacji PROMOTIC

Baza danych 'pm_data' jest przeznaczona do danych aplikacji PROMOTIC i nie jest stosowana przez żaden komponent systemu PROMOTIC. W tej bazie danych mogą się więc znajdować tylko dane użytkownika. Aplikacja może pracować z danymi w opisywanej bazie danych poprzez interfejs ODBC (zarejestrowane źródło danych ODBC o nazwie 'pm_data') przy pomocy obiektów PmaAdo oraz PmaDatabase.
W obiekcie PmaDatabase jest konieczne ustawić następujace konfiguratory:
1) 'Technologia' na 'Dostęp przez ODBC'.
2) 'Typ bazy danych' na 'ODBC; Data source'.
3) 'Baza danych (plik, folder, źródło danych)' na nazwę zarejestrowanego źródła danych ODBC, na przykład na 'pm_data'.
4) 'Tabela (plik)' na nazwę tabeli, z którą będzie obiekt pracować (jeżeli nie będzie wykorzystana możliwość wprowadzania poleceń SQL SELECT przy otwarciu tabeli).
5) 'Użytkownik' na nazwę użytkownika Serwera SQL, na przykład na 'pm_reader'.
6) 'Hasło' na hasło odpowiedniego użytkownika Serwera SQL z powodu uwierzytelnienia.


Baza danych 'pm_trend' jest przeznaczona do zapisu danych systemu trendów aplikacji PROMOTIC, opisywana baza danych jest stosowana przez komponent trendów i projektant nie powninien w tej bazie danych wykonywać żadnych ingerencji. Dla trendów jest stosowany obiekt PmaTrendGroup.
W tym obiekcie jest konieczne ustawić następujace konfiguratory:
1) konfigurator "Typ zapisu" na Database MS SQL server backups (przestarzałe) lub Database MS SQL server cyclic.
2) a w oknie "Database FireBird cyclic" jest konieczne ustawienie pozycji odnoszących się do bazy danych, do której będą zapisywane dane.
Pozycje te są wstępnie ustawione na przykład następująco:
server=localhost, uid=pm_writer, pwd=writer, database=pm_trend
(nazwa serwera localhost może się różnić).

Następne opisy dotyczące Firebird patrz:
© MICROSYS, spol. s r.o.