Wir überschreiten routinemäßig das ArcSDE-Verbindungslimit, etwa einmal pro Woche. Viele der "Verbindungen" sind nichts anderes als verwaiste Datensätze in der SDE.PROCESS_INFORMATION
Tabelle. Gibt es eine Möglichkeit, diese Verbindungen regelmäßig zu bereinigen? Ich habe gerade ArcSDE auf 9.3.1 SP2 gepackt, in der Hoffnung, dass dies das Problem lösen würde. (Hat es nicht.) Derzeit starte ich den arcsde
Dienst neu, um die Verbindungen zu bereinigen, eine ziemlich unelegante Lösung.
Dies ist übrigens der Fehler:
Failed to connect to database. Maximum number of connections to instance exceeded
Mein Workaround:
Meine Lösung war einfach: Starten Sie den SDE-Dienst wöchentlich neu und verdoppeln Sie die Anzahl der zulässigen Verbindungen. Dies ist natürlich keine Lösung ; Schande über ESRI für den Versand von Unternehmenssoftware, für die eine solche Problemumgehung erforderlich ist. Immerhin ist es immer noch möglich, die maximale Anzahl von Verbindungen zu überschreiten. Ich kann nur hoffen, dass unser aktueller Nutzungsgrad nicht dazu führt.
Ich habe das init.d
Skript geändert , um zu verhindern, dass sdemon
der Benutzer aufgefordert wird, das Beenden des Dienstes zu bestätigen (dies ist das -N
Argument). Ich habe auch eine restart
Option hinzugefügt .
#!/bin/bash
#
# arcsde Init file for starting and stopping ArcSDE 9.3
#
# chkconfig: 35 90 40
# description: ArcSDE startup script
# Source function library.
. /etc/rc.d/init.d/functions
SDE_OWNER="sde"
SDEHOME="/home/sde/sdeexe93"
case "$1" in
start)
echo -n $"Starting ArcSDE:"
su - $SDE_OWNER -c "$SDEHOME/bin/sdemon -o start -p pwd"
echo "OK"
;;
stop)
echo -n $"Stopping ArcSDE:"
su - $SDE_OWNER -c "$SDEHOME/bin/sdemon -o shutdown -p pwd -N"
echo "OK"
;;
restart)
cd "$CWD"
$0 stop
sleep 5
$0 start
;;
*)
echo $"Usage: $0 {start|stop|restart}"
esac
Dann habe ich einen Cron-Job erstellt, um den Dienst einmal wöchentlich neu zu starten:
# restart arcsde once weekly at 5am Saturdays
0 5 * * 6 service arcsde restart
Ich habe außerdem die maximale Anzahl zulässiger Verbindungen von 64 auf 128 erhöht, indem ich die $SDEHOME/etc/giomgr.defs
Datei bearbeitet habe :
CONNECTIONS 128 # maximum number of connections
# NOTE: On windows machines, you may need to
# increase server non-interactive desktop memory.
# Consult the ESRI support site for more information.
Dann habe ich die neuen Einstellungen importiert:
$ sdeconfig -o import -f $SDEHOME/etc/giomgr.defs -i esri_sde -u sde
Das war's. Wir werden sehen, wie es geht.