X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/mfinanz.git/blobdiff_plain/b948bb619c8086b8f05aac962d44d075aea17822..HEAD:/doc/html/ch02s06.html diff --git a/doc/html/ch02s06.html b/doc/html/ch02s06.html index 0cfc2a9bb..80c32dd7e 100644 --- a/doc/html/ch02s06.html +++ b/doc/html/ch02s06.html @@ -1,63 +1,73 @@
-Der Task-Server ist ein Prozess, der im Hintergrund läuft, in - regelmäÃigen Abständen nach abzuarbeitenden Aufgaben sucht und diese zu - festgelegten Zeitpunkten abarbeitet (ähnlich wie Cron). Dieser Prozess - wird bisher nur für die Erzeugung der wiederkehrenden Rechnungen - benutzt, wird aber in Zukunft deutlich mehr Aufgaben übertragen - bekommen.
Die Konfiguration erfolgt über den Abschnitt
- [task_server] in der Datei
- config/lx_office.conf. Die dort verfügbaren
- Optionen sind:
login
- gültiger Lx-Office-Benutzername, der benutzt wird, um die - zu verwendende Datenbankverbindung auszulesen. Der Benutzer muss - in der Administration angelegt werden. Diese Option muss - angegeben werden.
run_as
- Wird der Server vom Systembenutzer root
- gestartet, so wechselt er auf den mit run_as
- angegebenen Systembenutzer. Der Systembenutzer muss dieselben
- Lese- und Schreibrechte haben, wie auch der Webserverbenutzer
- (siehe see Manuelle Installation des Programmpaketes). Daher
- ist es sinnvoll, hier denselben Systembenutzer einzutragen,
- unter dem auch der Webserver läuft.
debug
- Schaltet Debug-Informationen an und aus.
Der Task-Server verhält sich von seinen Optionen her wie ein - reguläres SystemV-kompatibles Boot-Script. AuÃerdem wechselt er beim - Starten automatisch in das Lx-Office-Installationsverzeichnis.
Deshalb ist es möglich, ihn durch Setzen eines symbolischen - Links aus einem der Runlevel-Verzeichnisse heraus in den Boot-Prozess - einzubinden. Da das bei neueren Linux-Distributionen aber nicht - zwangsläufig funktioniert, werden auch Start-Scripte mitgeliefert, die - anstelle eines symbolischen Links verwendet werden können.
Kopieren Sie die Datei
- scripts/boot/system-v/lx-office-task-server
- nach /etc/init.d/lx-office-task-server. Passen
- Sie in der kopierten Datei den Pfad zum Task-Server an (Zeile
- DAEMON=....). Binden Sie das Script in den
- Boot-Prozess ein. Dies ist distributionsabhängig:
Debian-basierende Systeme:
update-rc.d lx-office-task-server defaults -# Nur bei Debian Squeeze und neuer: -insserv lx-office-task-server
OpenSuSE und Fedora Core:
chkconfig --add lx-office-task-server
Danach kann der Task-Server mit dem folgenden Befehl gestartet - werden: /etc/init.d/lx-office-task-server - start -
Kopieren Sie die Datei
- scripts/boot/upstart/lx-office-task-server.conf
- nach /etc/init/lx-office-task-server.conf.
- Passen Sie in der kopierten Datei den Pfad zum Task-Server an (Zeile
- exec ....).
Danach kann der Task-Server mit dem folgenden Befehl gestartet - werden: service lx-office-task-server - start -
Der Task-Server wird wie folgt kontrolliert:
./scripts/task_server.pl Befehl
- Befehl ist dabei eine der folgenden
- Optionen:
- start startet eine neue Instanz des
- Task-Servers. Die Prozess-ID wird innerhalb des
- users-Verzeichnisses abgelegt.
- stop beendet einen laufenden
- Task-Server.
- restart beendet und startet ihn
- neu.
- status berichtet, ob der Task-Server
- läuft.
Der Task-Server wechselt beim Starten automatisch in das - Lx-Office-Installationsverzeichnis.
Dieselben Optionen können auch für die SystemV-basierenden - Runlevel-Scripte benutzt werden (siehe oben).
PostgreSQL muss auf verschiedene Weisen angepasst werden.
Dies variert je nach eingesetzter Distribution, da distributionsabhängig unterschiedliche Strategien beim Upgrade der Postgres Version eingesetzt werden. + Als Hinweis einige Links zu den drei Distribution (Stand Dezember 2018):
kivitendo setzt zwingend voraus, dass die Datenbank + Unicode/UTF-8 als Encoding einsetzt. Bei aktuellen + Serverinstallationen braucht man hier meist nicht einzugreifen.
Das Encoding des Datenbankservers kann überprüft werden. Ist das + Encoding der Datenbank "template1" "Unicode" bzw. "UTF-8", so braucht + man nichts weiteres diesbezüglich unternehmen. Zum Testen:
su postgres +echo '\l' | psql +exit
Andernfalls ist es notwendig, einen neuen Datenbankcluster mit + Unicode-Encoding anzulegen und diesen zu verwenden. Unter Debian und + Ubuntu kann dies z.B. für PostgreSQL 9.3 mit dem folgenden Befehl + getan werden:
pg_createcluster --locale=de_DE.UTF-8 --encoding=UTF-8 9.3 clustername
Die Datenbankversionsnummer muss an die tatsächlich verwendete + Versionsnummer angepasst werden.
Unter anderen Distributionen gibt es ähnliche Methoden.
Das Encoding einer Datenbank kann in psql mit
+ \l geprüft werden.
In der Datei postgresql.conf, die je nach
+ Distribution in verschiedenen Verzeichnissen liegen kann (z.B.
+ /var/lib/pgsql/data/ oder
+ /etc/postgresql/), muss sichergestellt werden,
+ dass TCP/IP-Verbindungen aktiviert sind. Das Verhalten wird über den
+ Parameter listen_address gesteuert. Laufen
+ PostgreSQL und kivitendo auf demselben Rechner, so kann dort der Wert
+ localhost verwendet werden. Andernfalls müssen
+ Datenbankverbindungen auch von anderen Rechnern aus zugelassen werden,
+ was mit dem Wert * geschieht.
In der Datei pg_hba.conf, die im gleichen
+ Verzeichnis wie die postgresql.conf zu finden
+ sein sollte, müssen die Berechtigungen für den Zugriff geändert
+ werden. Hier gibt es mehrere Möglichkeiten. Sinnvoll ist es nur die
+ nötigen Verbindungen immer zuzulassen, für eine lokal laufende
+ Datenbank zum Beispiel:
local all kivitendo password +host all kivitendo 127.0.0.1 255.255.255.255 scram-sha-256
In der Datenbank template1 muss die
+ Unterstützung für servergespeicherte Prozeduren eingerichet werden.
+ Melden Sie sich dafür als Benutzer âpostgresâ an der Datenbank an:
+
su - postgres +psql template1
führen Sie die folgenden Kommandos aus:
CREATE EXTENSION IF NOT EXISTS plpgsql; +\q
![]() | Anmerkung |
|---|---|
+ CREATE LANGUAGE 'plpgsql'; +\q |
Ab Version 3.5.1 wird die Trigram-Index-Erweiterung benötigt. + Diese wird mit dem SQL-Updatescript + sql/Pg-upgrade2/trigram_extension.sql und Datenbank-Super-Benutzer + Rechten automatisch installiert. Dazu braucht der + DatenbankSuperbenutzer "postgres" ein Passwort.
su - postgres +psql +\password postgres + +Eingabe Passwort +\q
Benutzername Postgres und Passwort können jetzt beim Anlegen + einer Datenbank bzw. bei Updatescripten, die SuperuserRechte + benötigen, eingegeben werden.
![]() | Anmerkung |
|---|---|
+ select * from pg_available_extensions where name ='pg_trgm'; + in template1 sollte entsprechend erfolgreich sein. Andernfalls muss + das Paket nachinstalliert werden, bspw. bei debian/ubuntu + apt install postgresql-contrib + |
Wenn Sie nicht den Datenbanksuperuser âpostgresâ zum Zugriff + benutzen wollen, so sollten Sie bei PostgreSQL einen neuen Benutzer + anlegen. Ein Beispiel, wie Sie einen neuen Benutzer anlegen + können:
Die Frage, ob der neue User Superuser sein soll, können Sie mit + nein beantworten, genauso ist die Berechtigung neue User (Roles) zu + generieren nicht nötig.
su - postgres +createuser -d -P kivitendo +exit
Wenn Sie später einen Datenbankzugriff konfigurieren, verändern + Sie den evtl. voreingestellten Benutzer âpostgresâ auf âkivitendoâ + bzw. den hier gewählten Benutzernamen.