Installation & Konfiguration » Datenbank
Meine PostgreSQL akzeptiert maximal 40 Verbindungen. Es erscheint ständig die Fehlermeldung: FATAL: connection limit exceeded for non-superusers Was kann ich tun?
Die Fehlermeldung im Postgresql-Logfile deutet darauf hin, dass zuwenig Verbindungen konfiguriert sind. Folgende Paramter sollten Sie überprüfen:
- in der postgresql.conf kann man die max_connections definieren. Setzen Sie hier einen Wert, der zu den Werten der PHP.ini und der Apache-Konfiguration passt, so dass jeder Apache und PHP.CLI Prozess eine Verbindung haben könnte. Achten Sie bei der Definition dieser max-connections auf die entsprechende Anpassung des shared-memory und der shared-buffers.
- vermeiden Sie persistente Verbindungen und setzen Sie diese Option in der php.ini auf off (pgsql.allow_persistent = Off) achten Sie bitte auch darauf, diese Einstellung nicht nur für php.ini des Apache sondern auch in der php.ini der CLI Version durchzuführen!
- Es gibt Linux Distributionen, die, standardmäßig installiert eine Resourcenlimitierung enthalten (z.b. GENTOO Postgresql 8.2.7). hier ist ein Verbindungslimit Limit von 40 Standard. Trotz der Einstellung in der postgresql.conf lässt das System nur 40 Verbindungen zu. Es gibt eine Datei. postmaster.opts mit dem Inhalt:
/usr/bin/postgres -D /data/postgresql/data --silent-mode=true -N 40 -B 80
Eine Änderung dieser Datei hat keine Folge, das sind die System-Optionen, die hier nur visualisiert werden. Abhilfe schafft nur, wenn man im init-script beim start der DB:
start-stop-daemon --start \
--pidfile "${PGDATA}/postmaster.pid" \
--chuid ${PGUSER}:${PGGROUP} \
--exec /usr/bin/postmaster \
-- \
-D "${PGDATA}" \
--silent-mode=true \
# ${PGOPTS}
die PGOPTS auskommentiert, so dass nicht die einkompilierten Werte genutzt werden, sondern die aus der postgres.conf.
Nach einem Neustart der PostgreSQL OHNE diese PGOPTS und mit den o.a. Einstellungen, werden die richtigen Werte genutzt und die postgresql.conf-Einträge greifen.
Tags: -
Verwandte Artikel:
- Wie kann ich eine Shopstruktur aus dem Commerce-Bereich im Sitemenü ausgeben?
- Ich habe die Meta-tags einer Seite verändert und sehe die Änderung nicht im Livebereich?
- Wie lege ich eine weiße Seite an, ohne hinterlegtes Template? Wenn ich ein neues Dokument anlege, dann kann ich nur rsys-Dokumente mit Template anlegen. Wie umgehe ich das Template?
- Wie lege ich die Rechte für Gruppen und Rollen fest, so dass nur eine bestimmte Benutzergruppe auf die Seiten zugreifen kann
- Ich habe in der Community "Kundenattribute" mit "Attributseiten" und "Attributgruppen" angelegt, aber ich sehe keine Felder, wenn ich einen Kunden anlege.
Letzte Änderung des Artikels: 2008-10-23 09:18
Verfasser des Artikels: RedSYS Dev Team
Revision: 1.0
Es ist möglich, diesen Artikel kommentieren