Kopplung von Datenbanken Die Kopplung von ACCESS-Datenbanken (ZEUHA, ZEUSEM) an andere Datenbanksysteme (MS-SQL, ORACLE) September 2000 19/04/2005 Bert Schöneich ACCESS (ZEUHA 19/04/2005 Bert Schöneich DESY Zeuthen 1 MS-SQL SMS) DESY Zeuthen 2 1 ZEUHA - der Stand z z z z z z z z Logins Januar- September 2000: > 1.299 Logins insgesamt: > 7.900 Nutzer, angemeldet: 27 Tabellen: > 93 Abfragen: > 363 Formulare: > 219 Berichte: > 161 Datensätze: > 179.700 (!) (davon Zeuthen: ~7.000) 19/04/2005 Bert Schöneich DESY Zeuthen DESY 3 SMS - der Stand z z z z z z z z z z SMS: System Management Service (von Microsoft) automatisiertes Erfassen und Verwalten von hard-, softwareund Netzwerkdaten der PC’s eines Netzwerkes Basis-Datenbanksystem: MicroSoft-SQL Rechner: im DESY Hamburg Datensätze: 172.706 verwaltete Zeuthener PC’s: > 153 Daten zur hardware u.a.: Speicher, Netzwerk-,Grafikkarte, ... Daten zur software u.a.: Betriebssystem, ServicePack, ... Daten zum Netzwerk: IP-Nummer, Hardwarenummer, ... Zugriff von anderen Datenbanken auf SMS möglich (MS-SQL) 19/04/2005 Bert Schöneich DESY Zeuthen DESY 4 2 Grund der Kopplung z ZEUHA: Zeuthen, ACCESS-DB, manuelle Dateneingabe z SMS: Hamburg, MS-SQL-DB, automatische Datenerfassung Automatik: 1. PC neu am Netz (Neuaufnahme der Daten) 2. PC logon (Überprüfung/Änderung der Daten) z in SMS erfaßte Daten sollen ZEUHA zum Datenabgleich zur Verfügung gestellt werden 19/04/2005 Bert Schöneich DESY Zeuthen DESY 5 Datenfluß ACCESS (ZEUHA) MS-SQL (SMS) ZEUHA / SMS in Inside / link to ZEUHA - tables ZEUHA PC Zeuthen (ACCESS) PC-SOFTWARE SMS SMS - tables Hamburg (MS - SQL) dbo_… ZEUHA - table SMS_DATA ZEUHA - queries SMS_Z_test_* 19/04/2005 Vorteil: sms Abfrage einmalig (Dauer) Nachteil: Aktualität : ständige Abfrage : temporäre Abfrage Bert Schöneich DESY Zeuthen DESY 6 3 Felder ZEUHA ZEUHA SMS sms 17.01.00 Funktion Feld Tabelle Feld Tabelle groupkey PC Name Domain Hardware Adresse NAM DOMAIN ET PC PC PC Name0 Domain0 NetCardID0 dbo_Identification_SPEC dbo_Identification_SPEC dbo_Identification_SPEC 1 1 1 IP Adresse IP PC IP_Address0 dbo_Network_SPEC 10 Netzkarte NETZKARTE PC Manufacturer0 dbo_Netcard_COMM 11 Haupspeicher MEM PC Total_Physical_Memory__KB0 dbo_PC_Memory_SPEC Grafikkarte GRAPHICCARD PC Adapter_Type0 dbo_Video_COMM 5 Servicepack Betriebssystem Version BS (softwarestring) (softwarestring) (softwarestring) PC_SOFTWARE PC_SOFTWARE PC_SOFTWARE Service_Pack_Version0 Operating_System_Name0 Version0 dbo_Operating_System_COMM dbo_Operating_System_COMM dbo_Operating_System_COMM 7 7 7 Installationsdatum (date_of_input) PC_SOFTWARE Installation_Date0 dbo_Operating_System_Spec 7 19/04/2005 Bert Schöneich DESY Zeuthen 9 DESY 7 Erstellen der Tabelle SMS_DATA ZEUHA SMS tables: queries table SMS_IP SMS_memory_size SMS_netcard SMS_operating_system SMS_video ... query SMS_DATA SMS_data_table link query dbo_Identification_SPEC dbo_MachineDataTable dbo_Netcard_COMM dbo_Network_SPEC dbo_Operating_System_COMM dbo_Operating_System_SPEC dbo_PC_Memory_SPEC dbo_Video_COMM SMS_name_from_zeuthen temporäre Nutzung ! query SMS_name_last Zeuthen 19/04/2005 Bert Schöneich Hamburg DESY Zeuthen DESY 8 4 ZEUHA-Tabelle SMS_DATA 19/04/2005 Bert Schöneich DESY Zeuthen DESY 9 Generieren von SMS_DATA in ZEUHA ZEUHA PC 19/04/2005 Bert Schöneich DESY Zeuthen DESY 10 5 Nutzen der SMS-Daten in ZEUHA checks ZEUHA ‘SMS’ data in table SMS_DATA ‘PC’ - data in tables PC PC_SOFTWARE queries SMS_Z_test_hardware_address SMS_Z_test_installation_date SMS_Z_test_IP SMS_Z_test_memory_size SMS_Z_test_netcard SMS_Z_test_operating_system SMS_Z_test_servicepack SMS_Z_test_video 19/04/2005 Bert Schöneich DESY Zeuthen DESY 11 Nutzen der SMS-Daten in ZEUHA checks ZEUHA 11 ZEUHA schiede 1 Unter SM S S MS A e ZEUH rschied te n U e kein 19/04/2005 Bert Schöneich DESY Zeuthen DESY 12 6 Nutzen der SMS-Daten in ZEUHA ZEUHA PC PC_search “znpbes” versus sms 19/04/2005 Bert Schöneich DESY Zeuthen DESY 13 ODBC-File: sms_HH.dsn [ODBC] DRIVER=SQL Server UID=schoene WSID=ZNPBES APP=Microsoft® Access SERVER=DESYNTSMS 19/04/2005 Bert Schöneich DESY Zeuthen DESY 14 7 Erfahrungen ACCESS z z z z z z z z MS-SQL physische Speicherung der Daten nach ZEUHA: -/+ Dauer ca. 2 ... 9 Minuten bei gleichem Datenbestand (!) + danach schneller Zugriff + danach unabhängig von der Verbindung nach DESY Hamburg - nicht immer aktuell SMS - Rechner in Hamburg langsam timeouts der Datenbankverbindungen auf relativ hohe Werte setzen SMS - Datenstrukturen schlecht oder gar nicht dokumentiert SMS im DESY: wenig Erfahrungen mit speziellen Interna läuft überraschend stabil Nutzung in ZEUHA erfolgt nur sporadisch Zeuthen wesentliche Nutzer der SMS-Daten 19/04/2005 Bert Schöneich DESY Zeuthen DESY 15 ACCESS ORACLE (ZEUSEM) 19/04/2005 Bert Schöneich DESY Zeuthen 16 8 ZEUSEM - der Stand z z z z z z 19/04/2005 Nutzer: 3 Tabellen: 18 Abfragen: 29 Formulare: 8 Berichte: 9 Datensätze: 651 Bert Schöneich DESY Zeuthen DESY 17 ORACLE - der Stand z z z z z 19/04/2005 ORACLE: Database Management System Rechner: im DESY Hamburg Betriebssytem: UNIX verwaltete Seminareinträge / Datensätze: 271 Zugriff von anderen Datenbanken auf ORACLE möglich Bert Schöneich DESY Zeuthen DESY 18 9 Grund der Kopplung z ZEUSEM: Zeuthen, ACCESS-DB, manuelle Dateneingabe, Datenausgabe u.a. auch per web-page z ORACLE: Hamburg, zentrale Rettung z Auslagern der Haupttabelle SEMINAR aus ACCESS nach ORACLE zum Routinetest von Datenbankverbindungen (u.a. in Vorbereitung der Kopplung von ZEUHA mit dem Asset-Management im DESY Hamburg) 19/04/2005 Bert Schöneich DESY Zeuthen DESY 19 Datenfluß in ZEUSEM ACCESS ORACLE ACCESS - ZEUHA (Zeuthen) ORACLE (Hamburg) ZEUSEM: tables queries forms reports table SEMINAR link bei jedem Zugriff auf einen Datensatz genutzt! Vorteil: Aktualität Nachteil: f (Netzverbindung) : ständige Nutzung 19/04/2005 Bert Schöneich DESY Zeuthen DESY 20 10 Erstellen der Tabelle in ORACLE ACCESS: Tabelle SEMINAR im Database-Fenster markieren File: save as / export einmalig to external file (type: ODBC, DNS: oracle_HH) ORACLE: Tabelle SEMINAR in ORACLE gespeichert 19/04/2005 Bert Schöneich DESY Zeuthen DESY 21 linken der ORACLE-Tabelle in’s ACCESS ACCESS File: Get external Data einmalig Link Tables (type: ODBC, DNS: oracle_HH) ACCESS: Tabelle SEMINAR in ZEUSEM eingebunden 19/04/2005 Bert Schöneich DESY Zeuthen DESY 22 11 ODBC-File: oracle_HH.dsn [ODBC] DRIVER=Microsoft ODBC for Oracle UID=schoene ConnectString=desy SERVER=desy 19/04/2005 Bert Schöneich DESY Zeuthen DESY 23 Definition der ORACLE-Tabelle in ZEUSEM 19/04/2005 Bert Schöneich DESY Zeuthen DESY 24 12 Nutzen der ORACLE-Daten in ZEUSEM 19/04/2005 Bert Schöneich DESY Zeuthen DESY 25 Sicherheit der Daten in ZEUSEM Daue rc 19/04/2005 a. 8 S ekund en Bert Schöneich DESY Zeuthen DESY 26 13 Erfahrungen ACCESS z z z z z ORACLE Zugiff fast immer so schnell, wie bei in ACCESS gespeicherten Tabellen ORACLE - Rechner in Hamburg ausreichend schnell läuft überraschend stabil Nutzung erfolgt in Routine seit einem Jahr Probleme: siehe nächste slides 19/04/2005 Bert Schöneich DESY Zeuthen Problem 1: ACCESS DESY 27 ORACLE ACCESS: default - Werte von Feldern der ACCESS-Tabelle werden beim Export nach ORACLE nicht übernommen! Lösung ACCESS: default - Werte in der open-form-procedure des store-Formulars setzen! 19/04/2005 Bert Schöneich DESY Zeuthen DESY 28 14 Problem 2: ACCESS ORACLE ACCESS: Eigenschaft “autonumber” wird beim Export nach ORACLE nicht mit übernommen! (Wichtig bei primary keys!) Lösung ACCESS: “autonumber” des primary keys in der open-form-procedure des store-Formulars setzen! [S_ID] = DMax([S_ID],”tablename”) + 1 19/04/2005 Bert Schöneich DESY Zeuthen Problem 3: ACCESS DESY 29 ORACLE ACCESS: der physisch(!) erste Satz (u.U. dummy-record) sollte vor dem Erstellen der ORACLE-Tabelle: - keine leeren Felder enthalten - korrekt ausgefüllte Zahlen (z.B. ‘echte’ float; ‘1.2’) enthalten Grund ORACLE: Dann wird die entstehende ORACLE-Tabelle korrekte Feldtypen besitzen. 19/04/2005 Bert Schöneich DESY Zeuthen DESY 30 15 Zusammenfassung z z z z Das Netz ist ausreichend stabil und verfügbar. Der ORACLE-Rechner in Hamburg ist ausreichend schnell. Der SMS-Rechner in Hamburg ist viel zu langsam. Die Kopplungen von ACCESS (Zeuthen) zu anderen Datenbanken (Hamburg) laufen seit ca. einem Jahr überraschend stabil und erfolgreich. 19/04/2005 Bert Schöneich DESY Zeuthen DESY 31 16