Ми звичайно перевищуємо ліміт підключення ArcSDE, приблизно один раз на тиждень. Багато з "зв'язків" - це не що інше, як осиротілі записи в SDE.PROCESS_INFORMATION
таблиці. Чи є можливість періодично очищати ці з'єднання? Я просто упакував ArcSDE до 9.3.1 SP2, сподіваючись, що це вирішить проблему. (Так не було.) В даний час я перезапускаю arcsde
службу очищення з'єднань, досить неелегантне рішення.
Це, до речі, помилка:
Failed to connect to database. Maximum number of connections to instance exceeded
Моє вирішення:
Моє рішення було простим: перезапускайте службу SDE щотижня і подвоюйте кількість дозволених з'єднань. Це, звичайно, не рішення ; ганьба ESRI за відвантаження програмного забезпечення для підприємств, яке потребує такого вирішення. Адже все-таки можливо перевищити максимальний зв’язок; Я можу лише сподіватися, що наш сучасний рівень використання до цього не призводить.
Я змінив init.d
сценарій, щоб запобігти sdemon
спонуканню користувача підтвердити, що він хоче зупинити послугу (це те, що -N
робить аргумент). Я також додав restart
варіант.
#!/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
Потім я створив cron завдання, щоб перезапустити сервіс один раз на тиждень:
# restart arcsde once weekly at 5am Saturdays
0 5 * * 6 service arcsde restart
Я також збільшив максимальну кількість дозволених з'єднань з 64 до 128, редагуючи $SDEHOME/etc/giomgr.defs
файл:
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.
Потім я імпортував нові налаштування:
$ sdeconfig -o import -f $SDEHOME/etc/giomgr.defs -i esri_sde -u sde
Це було все. Ми побачимо, як це йде.