как поймать регистрацию, приостанавливают сценарий в Sybase?

Есть немного сценариев оболочки, которые используют isql выполнять некоторые sql заявления о сервере базы данных Sybase. Я вижу, что несколько Регистраций Приостанавливают сообщения в регистрациях, и проблема состоит в том, что сценарий оболочки выходит с успехом.

Журнал транзакций в базе данных MAIN_DB почти полон. Ваша сделка приостанавливается, пока пространство не сделано доступным в регистрации.

Я должен перехватить их, Регистрация приостанавливает сообщения и сообщает о правильной ошибке. Как я делаю это? Я не уверен в том, как продолжить двигаться здесь. Когда происходит, что нет никакого способа, которым это очищено, и администратор базы данных должен убить spid после некоторого времени, но сценарий уже выходит с успехом. Так, передача данных на самом деле не произошла и была прервана. Это - сценарий, с которым я должен обращаться.

Пожалуйста, сообщите мне, как мы были бы в состоянии перехватить Регистрацию, Приостанавливают и по крайней мере ждут в течение определенного времени?

0
nl ja de

3 ответы

У вас есть две проблемы. Каждый - сценарий, не обнаруживает ошибки правильно. Во-вторых, журнал транзакций заполняется часто.

First the script needs to have the standard output AND the error output go to your log file. When you use the > it is using file descriptor 1. When you want to capture error output you need to use 2> for file descriptor 2. So the command would look like the following.

isql > error.log 2> error.log

Еще лучше используйте это

isql 2>&1 > error.log

Предыдущее говорит, чтобы иметь дескриптор файла 2, идут в дескриптор файла 1.

Теперь, чтобы обнаружить ошибки ищут "Сообщение", которое все ошибки имеют впереди.

Во-вторых, чтобы решить пространство журнала транзакций, необходимо вырастить размер журнала, который должен быть на его собственном устройстве. Тогда необходимо установить порог, чтобы свалить законченные сделки к дисковому файлу автоматически. Необходимо исследовать следующие команды.

sp_helpthreshold
sp_addthreshold
sp_thresholdaction

Хороший SQL, хорошая ночь.

1
добавлено

У вас есть две проблемы. Каждый - сценарий, не обнаруживает ошибки правильно. Во-вторых, журнал транзакций заполняется часто.

First the script needs to have the standard output AND the error output go to your log file. When you use the > it is using file descriptor 1. When you want to capture error output you need to use 2> for file descriptor 2. So the command would look like the following.

isql > error.log 2> error.log

Еще лучше используйте это

isql 2>&1 > error.log

Предыдущее говорит, чтобы иметь дескриптор файла 2, идут в дескриптор файла 1.

Теперь, чтобы обнаружить ошибки ищут "Сообщение", которое все ошибки имеют впереди.

Во-вторых, чтобы решить пространство журнала транзакций, необходимо вырастить размер журнала, который должен быть на его собственном устройстве. Тогда необходимо установить порог, чтобы свалить законченные сделки к дисковому файлу автоматически. Необходимо исследовать следующие команды.

sp_helpthreshold
sp_addthreshold
sp_thresholdaction

Хороший SQL, хорошая ночь.

1
добавлено

Можно проверить процессы в базах данных и искать статус процесса 'РЕГИСТРАЦИЯ, ВРЕМЕННО ОТСТРАНЯЮТ' . Specifiying имя пользователя дополнительный.

sp_who {USERNAME}

0
добавлено