Probleme mit Datenbankverbindung unter Linux/Unix.

Einsatz von AvERP mit Linux als Server- und/oder Anwendungs-OS

Moderator: SYNERPY

Antworten
Smith
Beiträge: 4
Registriert: Di Dez 21, 2004 7:04 pm

Probleme mit Datenbankverbindung unter Linux/Unix.

Beitrag von Smith »

Ich habe erste mal Firebird installiert. Habe ich dazu noch verschiedene docs von Firebird gelesen. Kommt nichts. Ich bekomme keine Verbindung zu Datenbank Datei AvERP.gdb .
Richtige Dokumentation habe ich auch nicht gefunden. Kann jemand der das schon gemacht hat kurze Anleitung schreiben. Oder ein Link zur einen Dokument zeigen?
Was soll ich mit Datei GrUDF.so machen?

Ich habe versucht unter SUSE und FreeBSD. Installieren ohne Problem. Weiter nur Probleme. Ich sehe auch keine Prozesse unter Linux. Bei Eingabe ps aux | grep fb kommt nichts.

Danke.
rolf
Beiträge: 17
Registriert: Di Dez 21, 2004 9:43 pm

Linux

Beitrag von rolf »

Ich hab Averp unter Linux (SuSE 8.2) am laufen.

Zuerst habe ich Firebird als rpm-Paket installiert und mit
/etc/init.d/firebird start gestartet.

Die Datei GrUDF.so muss in das Installationsverzeichnis von Firebird in das Verzeichnis UDF kopiert werden.
Im Normalfall wird Fb im Verzeichnis /opt/firebird installiert.
Die Datei GrUDF.so enthält die ganzen Zusatzfunktionen die unter Windows in der Datei FreeUDFLib.dll enthalten sind.

Da die Datenbank von Synerpy für Windows vorbereitet ist, müssen alle UDFs neu registriert werden. Das Skript ist bei der Beschreibung zur GrUDF.so enthalten.
Mit IB Expert geht die Umstellung ganz einfach.

Optional kann in der Datei aliases.conf ein Verweis zur Datenbank gesetzt werden, so dass in der AVERPCONNECT.CFG von Averp nur noch der alias als Datenbank angegeben werden muss. ( Ab Firebird 1.5 ).

Zum Schluss macht es Sinn, Firebird beim Starten des Servers ebenfalls zu starten.
Unter SuSE mit chkconfig -s firebird on

Ich glaube, dass es nicht mehr zu beachten gibt und hoffe, dass es etwas verständlich ist.

Gruß
Rolf
Smith
Beiträge: 4
Registriert: Di Dez 21, 2004 7:04 pm

Re: Linux

Beitrag von Smith »

rolf hat geschrieben: Da die Datenbank von Synerpy für Windows vorbereitet ist, müssen alle UDFs neu registriert werden. Das Skript ist bei der Beschreibung zur GrUDF.so enthalten.
Mit IB Expert geht die Umstellung ganz einfach.
Hallo, Rolf!
Vielen dank für die schnelle Antwort. Aber paar zusätzliche Fragen habe ich trotzdem und alle für diese Satz oben.

Ich habe eine Datei GrUDF.so
Ich platziere GrUDF.so Datei in …./firebird/UDF Verzeichnis aber bevor muss ich diese Datei registrien?
Beschreibung habe ich natürlich dabei mit so ein Text drin:

Anhang:

Vollständiges Script

/* GrUDF - UDF for Interbase 6.x and Firebird 1.x
designed for Delphi and Kylix

Author...: Torsten Grundke und Ergänzungen von Gerd Kroll
E-mail...: tgrundke@freenet.de
gerd.kroll@tiscali.de

This library is Open-Source!
letzter Stand: 26.04.2004 Gerd Kroll */

DECLARE EXTERNAL FUNCTION F_COPY
CSTRING(254), INTEGER, INTEGER
RETURNS CSTRING(254)
ENTRY_POINT 'F_Copy' MODULE_NAME 'GrUDF';

DECLARE EXTERNAL FUNCTION F_MID
CSTRING(254), INTEGER, INTEGER
RETURNS CSTRING(254)..............................
.....................................

Und so weiter, und so weiter.

Jetzt bin ich total durcheinander. Wie kann ich mit Hilfe von diesen Skripttext und Datei GrUDF.so eine Datenbank erzeugen (registrieren)? Wie ich das verstehe das sollte eine datei mit Erweiterung .fdb sein?
rolf
Beiträge: 17
Registriert: Di Dez 21, 2004 9:43 pm

GrUDF

Beitrag von rolf »

Die Datenbank selber wird dabei nicht registriert oder generiert.
Es werden lediglich weitere Befehle (UDF) der Datenbank beigebracht.
Ohne diese Funktionen kann AvERP nicht verwendet werden.
Im IB-Expert werden alle UDFs zur Datenbank aufgelistet.
Im Auslieferungszustand von Averp existieren ca. 90 Einträge, die aber allesamt auf eine FreeUDFLib.dll verweisen.
Diese 90 Einträge sollten gelöscht werden und mit dem Skript in der Doku wieder registriert werden, sodass alle Funktionen auf die GrUDF verweisen.

Gruss
Rolf
Smith
Beiträge: 4
Registriert: Di Dez 21, 2004 7:04 pm

Beitrag von Smith »

Hallo Rolf,

vom Verständnis kann ich Dir folgen, aber mit der Umsetzung happert es!
Denn ich hab vorher nur mit MySQL Datenbanken gearbeitet. Firebird ist für mich Neuland und somit auch IB Expert...

Darum einfach mal Schritt für Schritt:

in IB Expert
1. ich nehme Menupunkt register Database (ok?)
2. in Fenster Database Registration unter general:

- Server: Remote
- Server Name: Linux
- Protocol: TCP/IP
- Server Version: Firebird 1.5
- Database File: C:\Programme\AvERP\AvERP.gdb
- Database Alias: AvERP
- USERNAME, PASSWORD, ROLE Angaben Admin
- Charset: ????? Was soll ich da nehmen????
- Path to ISC4.GDB: ??????? Was soll ich da schreiben? Wofür ist diese Datei?
- Client library file: soll ich da gds32.dll nehmen??? Oder welche Datei??
- Always capitalize database objects names: AN / AUS ?????
- Font Characters Set: ANSI_CHARSET (Voreinstellung) ändern????

Du siehst schon hier happert es bei mir :oops:

und danach würde es weitergehen...
- wie lösche ich die Einträge????
- und wie füge ich die neuen Einträge aus der Dokumentation ein???

Für Deine Hilfe bin ich super dankbar, denn lokal find ich das Programm spitze und jetzt versuche ich es in meinem Netzwerk auf dem LinuxServer laufen zu lassen, aber naja jeder Anfang ist schwer...
rolf
Beiträge: 17
Registriert: Di Dez 21, 2004 9:43 pm

Beitrag von rolf »

- Server Name: Linux
Wenn der Name so aufgelöst werden kann.
Alternativ geht auch die IP-Adresse des Servers.

- Database File: C:\Programme\AvERP\AvERP.gdb
Sicher nicht. Hier muss der Pfad von Linux gesehen werden z.b
/opt/Firebird/AvERP.gdb
Alternativ kann aber hier der verwendete Aliasname angegeben werden,
der einmalig unter /opt/firebird/aliases in der Form
averp = /opt/Firebird/AvERP.gdb
eingetragen wird.
Dann muss unter Database File nur averp eingetragen werden.
Der Alias kann dann auch in der AVERPCONNECT.CFG verwendet werden.

- Database Alias: AvERP
Ein Eintrag, der dann in IB-Expert angezeigt wird.
- USERNAME, PASSWORD, ROLE Angaben Admin
Username = sysdba
passwort = XXX
Das Passwort wird anders als bei Windows unter Linux nicht mit masterkey vorbelegt sondern per Zufall generiert.
Das Passwort steht in der Datei /opt/Firebird/SYSDBA.passwort

- Charset: ????? Was soll ich da nehmen????
ISO8859_1
- Path to ISC4.GDB: ??????? Was soll ich da schreiben? Wofür ist diese Datei?
Habe ich immer leer gelassen
- Client library file: soll ich da gds32.dll nehmen??? Oder welche Datei??
Ja ist OK
- Always capitalize database objects names: AN / AUS ?????
Hab ich auf Ja
- Font Characters Set: ANSI_CHARSET (Voreinstellung) ändern????
Belassen

und danach würde es weitergehen...
- wie lösche ich die Einträge????
Markieren Rechtsklick löschen.
- und wie füge ich die neuen Einträge aus der Dokumentation ein???
STRG+F12
Skript einfügen und ausführen.

[/quote]
Smith
Beiträge: 4
Registriert: Di Dez 21, 2004 7:04 pm

Beitrag von Smith »

Genau das selbe habe ich auch gemacht. Oder besser zu sagen ich habe mehrere Versuche gemacht mit verschiedene Einstellungen. Sogar über Samba habe ich versucht Pfade einzugeben. Bringt nichts. Bekomme ich immer solcher Fehlermeldung:

Bild

Mehr dazu. Firewall ist abgeschaltet. Einziger was mich stört das ich sehe das Prozesse von Firebird nicht laufen.

#ps aux | grep fb
root 1225 0.0 0.2 348 208 p0 R+ 4:21PM 0:00.00 grep fb

Auch beim manuelle Versuch Skript zu statten kommt zu gleiche Ergebniss.
rolf
Beiträge: 17
Registriert: Di Dez 21, 2004 9:43 pm

Beitrag von rolf »

Das grösste Problem ist dann ja, daß Firebird auf dem Server überhaupt nicht läuft.
Starte doch bitte Firebird mit "/etc/init.d/firebird start" und prüfe, ob irgendwelche Fehlermeldungen in den Datein von /opt/firebird/firebird.log und /var/log/messages erscheinen.
Was für ein Linux verwendest du überhaupt?
Antworten