Różnice

Różnice między wybraną wersją a wersją aktualną.

Odnośnik do tego porównania

pl:dydaktyka:sbd:2009:projekty:skos-ldap:start [2010/02/11 12:59]
sbd09
pl:dydaktyka:sbd:2009:projekty:skos-ldap:start [2019/06/27 15:50]
Linia 1: Linia 1:
-====== Analiza warunków technicznych i implementacja prototypu modułu dostępu do danych Składu Osobowego AGH (SkOs) przy pomocy protokołu LDAP ====== 
-Kowalczyk, Curzytek 
- 
-  * Do zrobienia: 
-    * analiza struktury danych przechowywanych w SkOs, 
-    * wykonanie projektu bazy danych, 
-    * rozpoznanie możliwości pobierania danych z SkOs (uzyskanie dostępu do bazy, parsowanie HTML) i przygotowanie procedur importu, 
-    * wykonanie prostego interfejsu webowego dostępu do nowej bazy, 
-    * analiza protokołu LDAP i istniejących serwerów; określenie wymagań (serwer, itd.) i wybór rozwiązania,​ 
-    * udostępnienie danych z bazy przy pomocy protokołu LDAP. 
-  * Linki, itd.: 
-    * Administrator Danych Systemu SkOs - Sekretariat Uczelnianego Centrum Informatyki AGH (pawilon C1, pok.401) 
-    * [[http://​en.wikipedia.org/​wiki/​Lightweight_Directory_Access_Protocol]] 
-    * przykładowy link: [[http://​regent2.uci.agh.edu.pl/​skos/​search/​osoba_opis.php?​osoba_id=3401]] 
- 
-{{:​pl:​dydaktyka:​sbd:​2009:​projekty:​skos-ldap:​projekt_konceptualny_16.pdf|}} 
- 
-{{:​pl:​dydaktyka:​sbd:​2009:​projekty:​skos-ldap:​projekt_logiczny_16.pdf|}} 
- 
-====== Raport końcowy ====== 
- 
-Baza została stworzona w DBMS (Database Management System) PostgreSQL 8.4.2 na podstawie zaprojektowanego diagramu ERD. System operacyjny, na którym był realizowany projekt to Linux Debian, wersja testowa – squeeze. Pakiety były instalowane przy pomocą dostępnych repozytoriów systemu operacyjnego. Nazwa katalogu domowego: wojcieh. 
- 
-===== Etapy realizacji projektu baz danych LDAP pracowników AGH =====  
- 
-==== 1. Utworzenie i modyfikacja bazy danych ==== 
-Nazwa bazy danych przechowującej tabele LDAP: **ldap**. ​ 
- 
-Podczas testów okazało się, że do poprawnego odczytywania danych z bazy SQL do bazy hierarchicznej niezbędne jest ustawienie zmiennej //​client_encoding//​ na //latin1//. 
- 
-<​code>​ldap => SET client_encoding TO latin1; ​ 
-SET</​code>​ 
- 
-Po ustawieniu //​client_encoding//​ na wartość //utf-8// większość danych była gubiona. Nie wiemy jaka jest tego dokładna przyczyna i czy jest to tylko fenomen związany z Debianem, czy też na innych systemach operacyjnych dzieje się podobnie. Dokumentacja OpenLDAP mówi z kolei, że do przechowywania wszystkich tekstowych wartości atrybutów oraz nazw wyróżnionych używany jest zbiór znaków UTF-8.\\ ​ 
-Problem ten pociąga za sobą kilka istotnych konsekwencji. W celu administrowania bazą danych została wykorzystana strona administracyjna,​ jaką dostarcza framework DJANGO. Django wymaga kodowania znaków w formacie UTF-8. Dochodzi więc do konfliktu pomiędzy administrowaniem relacyjnej bazy danych, a poprawnym działaniem bazy hierarchicznej. Problem ten został rozwiązany w sposób prowizoryczny,​ poprzez utworzenie jeszcze jednej bazy danych przechowującej całą strukturę relacyjnej bazy danych. W tym celu został stworzony odpowiedni skrypt basha. Rozwiązanie takie nie jest najlepsze, ponieważ aby uwzględnić zmiany w bazie LDAP trzeba skopiować dane z jednej do drugiej bazy. 
- 
-Mamy więc dwie bazy danych: 
-  * **aghldap** z tabelami diagramu ERD, protokołu LDAP oraz tabelami utworzonymi przez framework Django, //​client_encoding = utf8// 
-  * **ldap** z tabelami i widokami protokołu LDAP, //​client_encoding = latin1//, utworzona na podstawie bazy **aghldap** przy pomocy skryptu basha 
- 
-Bazy są dostępne bez konieczności podawania hasła. Należy zmienić jedynie użytkownika i nadać mu odpowiednie prawa do modyfikacji struktury baz. 
- 
-==== 2. Konfiguracja ODBC – interfejsu pozwalającego połączyć się aplikacjom z systemem zarządzania bazą danych ==== 
- 
-Wymagane pakiety:  ​ 
-  * unixodbc, libiodbc2 – niezbędne biblioteki i narzędzia 
-  * odbc-postgresql – sterownik ODBC dla DBMS PostgreSQL 
- 
-Po zainstalowaniu pakietów w shellu sprawdzamy lokalizację plików konfiguracyjnych:​ 
-<​code>​ 
-$ odbcinst -j 
-unixODBC 2.2.11 
-DRIVERS............:​ etc/​odbcinst.ini 
-SYSTEM DATA SOURCES: etc/​odbc.ini 
-USER DATA SOURCES..: home/​wojcieh/​.odbc.ini 
-</​code>​ 
- 
-Wprowadzamy zmiany w plikach konfiguracyjnych:  ​ 
-  * **odbc.ini**\\ 
-<​code>​ 
-; 
-;  odbc.ini 
-; 
-[ODBC Data Sources] 
-PgSQL=PostgreSQL 
- 
-[PgSQL] 
-Driver ​         = usr/​lib/​odbc/​psqlodbc.so ​    ​  ​       // pełna ścieżka do drivera 
-Description ​    = Connection to LDAP/​POSTGRESQL 
-Servername ​     = localhost  
-Port            = 5432 // domyślnie 5432 
-Protocol ​       = 6.4  
-FetchBufferSize = 99 
-Username ​       = wojcieh //​ nazwa użytkownika bazy danych 
-Password ​       = wojcieh9 
-Database ​       = ldap // nazwa bazy danych z tabelami LDAPa 
-ReadOnly ​       = no 
-Debug           = 1 
-CommLog ​        = 1 
- 
-[ODBC] 
-InstallDir ​     = usr/​lib/​odbc // ścieżka do katalogu ze sterownikami 
- 
-</​code>​ 
-  * **odbcinst.ini**\\ 
-<​code>​ 
-[ODBC] 
-Trace           = 1 
-Debug           = 1 
-Pooling ​        = No 
- 
-[PostgreSQL] 
-Description ​    = ODBC for PostgreSQL 
-Driver ​         = usr/​lib/​odbc/​psqlodbc.so        // pełne ścieżki do driverów 
-Setup           = usr/​lib/​odbc/​libodbcpsqlS.so 
-UsageCount ​     = 2 
- 
-</​code>​ 
- 
-Sprawdzamy, czy konfiguracja przebiegła pomyślnie (ostatni argument to nazwa użytkownika):​ 
-<​code>​ 
-$ isql -v PgSQL wojcieh 
-+---------------------------------------+ 
-| Connected! ​                           | 
-|                                       | 
-| sql-statement ​                        | 
-| help [tablename] ​                     | 
-| quit                                  | 
-|                                       | 
-+---------------------------------------+ 
-SQL> 
-</​code>​ 
- 
-==== 3. Konfiguracja serwera LDAP (wersja 2.4.19) ==== 
-==== 4. Konfiguracja Django w celu zarządzania bazą danych (python wersja 2.5.5, django wersja 1.1.1) ==== 
- 
-===== Wygląd i opis interfejsów stron obsługujących bazy danych ===== 
-==== 1. Strona administracyjna relacyjnej bazy danych ==== 
-==== 2. Strony wykorzystane do wyszukiwania i prezentacji wyników ==== 
- 
-===== Inne opcje dostępu i wykorzystania bazy danych LDAP ===== 
- 
-===== Import danych z istniejącego systemu SKOS do bazy LDAP ===== 
- 
-===== Problemy jakie wystąpiły w trakcie realizacji projektu, proponowane rozwiązania i kierunki rozwoju ===== 
- 
- 
- 
- 
- 
- 
- 
- 
  
pl/dydaktyka/sbd/2009/projekty/skos-ldap/start.txt · ostatnio zmienione: 2019/06/27 15:50 (edycja zewnętrzna)
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0