Linux.postgresql

Aus OrgaMon Wiki
Zur Navigation springen Zur Suche springen

mit der Version 9.2 wird PostgreSQL den Funktionsumfang von FirebirdSQL wohl übersteigen. Ich denke über eine Migration der OrgaMon Datenhaltung zu PostgreSQL nach.

Installation

Benötigte Pakete

#zypper install postgresql94-server postgresql94-docs pgadmin3
# systemctl enable postgresql
# systemctl start postgresql

apt install postgresql-all

Netzwerk freischalten

joe /etc/postgresql/13/main/pg_hba.conf
#
# für das Netzwerk hinzu das zugreifen darf
#
host all all 192.168.115.0/24 trust

Interface freischalten

joe /etc/postgresql/13/main/postgresql.conf

#
# 
#
listen_addresses = 'localhost,192.168.115.28'           # what IP address(es) to listen on;


#
# Dienst neu starten
#
systemctl restart postgresql


SQL - Statements

#
# Einen "generator" erstellen
#
create sequence ARTIKEL_GID;

#
# Einen Datentyp erstellen
#
create domain DOM_REFERENCE as bigint;
#
# Tabelle erstellen
#
CREATE TABLE MWST (
 RID DOM_REFERENCE NOT NULL,
 VON_DATUM TIMESTAMP,
 BIS_DATUM TIMESTAMP,
 SATZ DOUBLE PRECISION NOT NULL,
 NAME VARCHAR(45),
 SYNC SMALLINT DEFAULT 1 );

#
# Trigger erstellen
#

http://www.postgresql.org/

http://www.pgadmin.org/

Die Tabellen einer Datenbank findest du in

 Schemata
   public
     Tabellen

erste Schritte

su postgres
$ create user orgamon1 with password 'OrgaMon1';
$ create database orgamon1;
$ grant all on DATABASE orgamon1 to orgamon1;

Administration

über phpPgAdmin

Migration der Datenbank

  • erst mit der Metadaten-Datei des OrgaMon eine UTF8-Datenbank erstellen
  • mit einem selbst erstellten 'cp' Util erst alle Rohdaten mit 'insert', dann alle Referenzen per 'update'


Zugriff mit OrgaMon Desktop

über Zeos

Laden der Client Bibliothek unter Windows

  • Den Pfad auf C:\Program Files(x86)\PostgreSQL\9.1\bin zu setzen brauchte keinen Erfolg.
  • Den .exe zunächst mal in PostgreSQL\bin speichern, alle anderen Referenzen mussten durch den Developer-Install befriedigt werden
  • Die Referenzen lauten im Einzelnen:
* LIBPQ.dll. 
* SSLEAY32.dll. 
* LIBEAY32.dll.
? WS2_32.dll. 
? NSI.dll. 
R MSVCR90.dll. 
* libintl-8.dll. 
* libiconv-2.dll. 
? WSOCK32.dll. 
? MSWSOCK.dll. 
? WSHTCPIP.dll. 
? WSHIP6.dll. 
? DNSAPI.dll. 
? WLIDNSP.dll. 
? IPHLPAPI.DLL. 
? WINNSI.DLL. 
? rasadhlp.dll. 
? fwpuclnt.dll.