ODBC Datenquellen Verbindung geht nicht

Das Langzeitarchiv für HomeMatic

Moderator: Co-Administratoren

Mathias
Beiträge: 1794
Registriert: 03.11.2010, 10:25
System: CCU
Wohnort: Aachen
Hat sich bedankt: 58 Mal
Danksagung erhalten: 261 Mal
Kontaktdaten:

Re: ODBC Datenquellen Verbindung geht nicht

Beitrag von Mathias » 11.12.2017, 13:01

RolandF hat geschrieben:Hat es inzwischen jemand geschafft von einem Windows-PC über ODBC auf die CCU-Historian Datenbank zuzugreifen?
Ja. :D

Dein Fehler besagt, dass Deine SQL-Applikation eine höhere ODBC-Version anfragt als der Treiber unterstützt. Hast Du den aktuellen Treiber installiert (Version 10, s.a. https://www.postgresql.org/ftp/odbc/versions/msi/)?

Ansonsten musst Du der SQL-Applikation (Welche ist das Überhaupt?) so konfigurieren, dass sie eine niedrigere ODBC-Version anfragt.

Diese Seite mit einigen HOWTOs kennst Du schon?

Gruß
Mathias

RolandF
Beiträge: 122
Registriert: 22.06.2014, 19:01
Hat sich bedankt: 3 Mal
Danksagung erhalten: 5 Mal

Re: ODBC Datenquellen Verbindung geht nicht

Beitrag von RolandF » 17.12.2017, 18:44

Hallo Matthias,
danke für die Rückmeldung und entschuldige bitte mein späte Reaktion auf Deine Antwort
Mathias hat geschrieben:
RolandF hat geschrieben:Hat es inzwischen jemand geschafft von einem Windows-PC über ODBC auf die CCU-Historian Datenbank zuzugreifen?
Ja. :D

Dein Fehler besagt, dass Deine SQL-Applikation eine höhere ODBC-Version anfragt als der Treiber unterstützt. Hast Du den aktuellen Treiber installiert (Version 10, s.a. https://www.postgresql.org/ftp/odbc/versions/msi/)?

Ansonsten musst Du der SQL-Applikation (Welche ist das Überhaupt?) so konfigurieren, dass sie eine niedrigere ODBC-Version anfragt.

Diese Seite mit einigen HOWTOs kennst Du schon?

Gruß
Mathias
Aus Gewohnheit habe ich auf Deiner angegeben URL der Postgress Treiber den oberen Treiber verwendet.
Später habe ich erst gesehen, dass da die älteste Version stand :oops:

Jetzt habe ich die aktuelle Version installiert, schaffe es aber leider immer noch nicht auf die Datenbank zuzugreifen.
Ich scheitere schon beim Connection Test aus dem ODBC-Datenquelle-Administrator:
Screenshot 2017-12-17 at 06.36.38 nachm..png
Screenshot 2017-12-17 at 06.36.38 nachm..png (19.46 KiB) 2024 mal betrachtet
Fehlermeldung:
Screenshot 2017-12-17 at 06.37.53 nachm..png
Screenshot 2017-12-17 at 06.37.53 nachm..png (18.98 KiB) 2024 mal betrachtet
Fehlermeldung aus c# Programm:

Code: Alles auswählen

ERROR [08001] server closed the connection unexpectedly
This probably means the server terminated abnormally
before or while processing the request.
Der Fehler liegt sicher wieder bei mir aber ich stehe noch auf der Leitung :?
Die HOWTOs habe ich auch schon gelesen.

Wer hat noch einen Tipp für mich?

Danke und Grüße
Roland

Mathias
Beiträge: 1794
Registriert: 03.11.2010, 10:25
System: CCU
Wohnort: Aachen
Hat sich bedankt: 58 Mal
Danksagung erhalten: 261 Mal
Kontaktdaten:

Re: ODBC Datenquellen Verbindung geht nicht

Beitrag von Mathias » 17.12.2017, 20:48

Unter Database muss ./data/history eingetragen werden. Die Port-Nr. war bei mir 5435.

Unbedingt bitte Abschnitt 6.6 ODBC-Schnittstelle im Handbuch lesen.

Gruß
Mathias

RolandF
Beiträge: 122
Registriert: 22.06.2014, 19:01
Hat sich bedankt: 3 Mal
Danksagung erhalten: 5 Mal

Re: ODBC Datenquellen Verbindung geht nicht

Beitrag von RolandF » 28.12.2017, 20:24

Mit der aktuellen Version 10.00 des ODBC-Treibers bin ich leider nicht weiter gekommen.
Ich denke ich habe jetzt wirklich alle Handbücher HOWTOS und Wikis gelesen.

Mit der Version 10.00 bekomme ich schon beim Verbindungstest im ODBC-Admin folgende Fehlermeldung:
ErrorVersion10.png
In meiner Verzweiflung habe ich verschiedene Treiber-Versionen ausprobiert.

Mit der Version 9.1 bin ich dann weiter gekommen. Verbindungstest im ODBC-Admin:
Successful V9.1.png
Successful V9.1.png (13.2 KiB) 1958 mal betrachtet
Im nächsten Schritt habe ich mir ein kleines C# Programm und eine Access-Datenbank erstellt und ein paar Tabellen eingebunden.
Lief alles problemlos, bis ich irgendwann feststellte, dass ich nicht alle Daten(Zeilen) der Tabellen bekomme.

In der Tabelle DATA_POINTS z.B. erhalte ich direkt auf der Datenbank per SQL-ABfrage 767 Rows, über die ODBC-Schnittstelle erhalte ich nur die ersten 251 Zeilen.
In anderen Tabellen sind es teilweise nur 5 oder 6 Zeilen die übertragen werden.
Wahrscheinlich wäre es aber am besten wenn ich die aktuelle Treiberversion 10.00 zum laufen bekäme.

Für weiter Hilfe wäre ich sehr,sehr dankbar!

Grüße
Roland

Mathias
Beiträge: 1794
Registriert: 03.11.2010, 10:25
System: CCU
Wohnort: Aachen
Hat sich bedankt: 58 Mal
Danksagung erhalten: 261 Mal
Kontaktdaten:

Re: ODBC Datenquellen Verbindung geht nicht

Beitrag von Mathias » 30.12.2017, 21:26

RolandF hat geschrieben:Mit der aktuellen Version 10.00 des ODBC-Treibers bin ich leider nicht weiter gekommen.
Ab einer bestimmten Version wurde in den PostgreSQL-ODBC-Treiber ein Verbindungstest eingebaut, der nur mit der originalen PostgreSQL-Datenbank funktioniert. Die im CCU-Historian eingebettete Datenbank ist eine H2Database, die die selbe Netzwerk-API wie eine PostgreSQL-Datenbank verwendet, aber nicht denselben SQL-Syntax.

Bei folgenden Versionen habe ich festgestellt, dass der Verbindungstest nicht mehr funktioniert: 9.6.500, 10.1.0

Bei folgender Version funktioniert bei mir der Verbindungstest: 9.3.200

Die Version 9.1.200 ist bei mir abgestürzt.

Für die Tests habe ich die 64bit-Versionen verwendet. Betriebssystem ist Windows 10. Als ODBC-Client habe ich das ODBC Management Studio (Freeware) verwendet.
RolandF hat geschrieben:Im nächsten Schritt habe ich mir ein kleines C# Programm und eine Access-Datenbank erstellt und ein paar Tabellen eingebunden.
Lief alles problemlos, bis ich irgendwann feststellte, dass ich nicht alle Daten(Zeilen) der Tabellen bekomme.
Der Fehler ist bei mir nicht reproduzierbar. Es werden immer alle Zeilen zurückgeliefert. Es ist auch ein ungewöhnliches Fehlerbild, das höchstwahrscheinlich nicht durch den CCU-Historian oder den ODBC-Treiber verursacht wird.

Gruß
Mathias

RolandF
Beiträge: 122
Registriert: 22.06.2014, 19:01
Hat sich bedankt: 3 Mal
Danksagung erhalten: 5 Mal

Re: ODBC Datenquellen Verbindung geht nicht

Beitrag von RolandF » 30.12.2017, 23:35

Mathias hat geschrieben: Ab einer bestimmten Version wurde in den PostgreSQL-ODBC-Treiber ein Verbindungstest eingebaut, der nur mit der originalen PostgreSQL-Datenbank funktioniert. Die im CCU-Historian eingebettete Datenbank ist eine H2Database, die die selbe Netzwerk-API wie eine PostgreSQL-Datenbank verwendet, aber nicht denselben SQL-Syntax.

Bei folgenden Versionen habe ich festgestellt, dass der Verbindungstest nicht mehr funktioniert: 9.6.500, 10.1.0

Bei folgender Version funktioniert bei mir der Verbindungstest: 9.3.200

Die Version 9.1.200 ist bei mir abgestürzt.

Für die Tests habe ich die 64bit-Versionen verwendet. Betriebssystem ist Windows 10. Als ODBC-Client habe ich das ODBC Management Studio (Freeware) verwendet.

Gruß
Mathias
Danke für die Info Mathias,
mit der von Dir verwendeten Version werde ich das mal ausprobieren. Bisher hatte ich nur die Version 10 in der 64-bit-Variante getestet.

Grüße
Roland

RolandF
Beiträge: 122
Registriert: 22.06.2014, 19:01
Hat sich bedankt: 3 Mal
Danksagung erhalten: 5 Mal

Re: ODBC Datenquellen Verbindung geht nicht

Beitrag von RolandF » 31.12.2017, 12:03

so, geschafft :D

Der Treiber in der Version 9.3.200 läuft sowohl in 32 wie auch in 64-Bit.
Das Problem mit den fehlenden Daten lag wie Du richtig vermutet hast nicht am Treiber sondern an meiner Angabe für die Database.

Interessanterweise wird mit der Angabe "./Data/history" auch ein Datenbank gefunden, die aber veraltet ist :o
Wenn ich den Pfad absolut angebe, also "/opt/ccu-historian/Data/history" dann habe ich alle aktuelle Daten.
Aufgefallen ist mir das, als ich die Timestamps verglichen habe.

Nur aus Interesse, kannst Du mir noch sagen, wie ich herausfinde wo der relative Pfad "./Data/history" hinzeigt?

ccu-historian ist in "/opt/ccu-historian" installiert und in der ccu-historian.config habe ich folgende Einträge:

Code: Alles auswählen

database.dir='/opt/ccu-historian/Data'
database.name='history'
Bin jetzt ganz happy, jetzt kann mein Langzeitarchiv gestartet werden!
Vielen Dank Mathias für Deine Arbeit an ccu-historin :!:

Grüße
Roland

Mathias
Beiträge: 1794
Registriert: 03.11.2010, 10:25
System: CCU
Wohnort: Aachen
Hat sich bedankt: 58 Mal
Danksagung erhalten: 261 Mal
Kontaktdaten:

Re: ODBC Datenquellen Verbindung geht nicht

Beitrag von Mathias » 31.12.2017, 17:44

RolandF hat geschrieben:so, geschafft :D
Das höre ich gerne.
RolandF hat geschrieben:Nur aus Interesse, kannst Du mir noch sagen, wie ich herausfinde wo der relative Pfad "./Data/history" hinzeigt?
Der Pfad ist relative zum Arbeitsverzeichnis des CCU-Historians. Jeder Prozess besitzt ein Arbeitsverzeichnis, von dem aus relative Pfade aufgelöst werden. Wenn von der Kommandozeile gestartet wird, ist dies das aktuelle Verzeichnis (s.a. pwd).

Es können aber auch absolute Pfade in der ccu-historian.config verwendet werden. Beim Start des CCU-Historians kann auch über eine Kommandozeilenoption ein absoluter Pfad zur ccu-historian.config angegeben werden. Dann ist die komplette Installation unabhängig vom gewählten Arbeitsverzeichnis.

Viele Grüße und einen guten Rutsch

Mathias

Antworten

Zurück zu „CCU-Historian“