Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Ошибка 3013: BACKUP DATABASE is terminating abnormally.  [new]
Игорь_UUS
Member

Откуда: г. Екатеринбург
Сообщений: 670
Добрый день.

Написан внутренний поток, который крутиться в MSSQL на базе ServiceBrocker. Написал к потоку задание, которое должно делать бекап базы данных в системную папку самого mssql

При выполнение бекапа через ServiceBrocker, вылетает ошибка:

[ACSH_DatabaseBackup], Строка 21. Ошибка 3013: BACKUP DATABASE is terminating abnormally.


В логе MSSQL не более той что написал.

Хранимка, которая выполняется в указанное время:

CREATE PROCEDURE [ACSH_DatabaseBackup]
  @RunUser		BIT
AS
SET NOCOUNT ON;

BEGIN TRY
  -- Делаем BACKUP.
  DECLARE @DBNAME SYSNAME
  DECLARE @BackupName NVARCHAR(256)

  IF @RunUser = 0
    SET @BackupName = 'Auto'
  ELSE
    SET @BackupName = 'User'

  SET @BackupName = @BackupName + '_' + REPLACE(CONVERT(NVARCHAR(10), GETUTCDATE(), 104), '.', '') + '_' + 
    REPLACE(CONVERT(NVARCHAR(8), GETUTCDATE(), 108), ':', '')
  SET @DBNAME = (SELECT db_name())

  BACKUP DATABASE @DBNAME
    TO DISK = @BackupName  
END TRY
BEGIN CATCH
  ;THROW
END CATCH

RETURN 0
GO


Если её выполнять через пользователя, она выполняется, в через ServiceBrocker ошибка.

Подскажите что можно попробовать?
2 сен 19, 14:54    [21961913]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка 3013: BACKUP DATABASE is terminating abnormally.  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 36694
Игорь_UUS
Подскажите что можно попробовать?
Почитать лог севера.
2 сен 19, 15:00    [21961922]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка 3013: BACKUP DATABASE is terminating abnormally.  [new]
Игорь_UUS
Member

Откуда: г. Екатеринбург
Сообщений: 670
Гавриленко Сергей Алексеевич
Игорь_UUS
Подскажите что можно попробовать?
Почитать лог севера.


В логе mssql:

Дата 02.09.2019 16:13:02
Журнал SQL Server (Текущий - 02.09.2019 16:13:00)

Источник spid48s

Сообщение
[ACSH_DatabaseBackup], Строка 21. Ошибка 3013: BACKUP DATABASE is terminating abnormally.
2 сен 19, 15:03    [21961924]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка 3013: BACKUP DATABASE is terminating abnormally.  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 36694
Странный у вас журнал, с одной строчкой.

И да, забыл спросить, зачем делать бэкапы через такой изврат, когда есть банальный Agent?
2 сен 19, 15:05    [21961927]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка 3013: BACKUP DATABASE is terminating abnormally.  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 6794
Игорь_UUS,

а в сервер брокере вы всё подавляете try catch поди, вот теперь и расшифровыйте
2 сен 19, 15:06    [21961928]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка 3013: BACKUP DATABASE is terminating abnormally.  [new]
Игорь_UUS
Member

Откуда: г. Екатеринбург
Сообщений: 670
Гавриленко Сергей Алексеевич,

"Банальный агент" только в "полновесе", тут использую Express...
2 сен 19, 15:06    [21961931]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка 3013: BACKUP DATABASE is terminating abnormally.  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 36694
Игорь_UUS,

Банальный windows scheduler тоже забанен?
2 сен 19, 15:07    [21961933]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка 3013: BACKUP DATABASE is terminating abnormally.  [new]
Игорь_UUS
Member

Откуда: г. Екатеринбург
Сообщений: 670
TaPaK
Игорь_UUS,

а в сервер брокере вы всё подавляете try catch поди, вот теперь и расшифровыйте


По большому счёту да... критические ошибки обрабатываются в блоке catch... пишется виндовый лог и происходит остановки задачи.


Ошибка "terminating abnormally" - неоднозначная... нашёл пару статеек на тему битой базы... но база тут не битая
2 сен 19, 15:13    [21961942]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка 3013: BACKUP DATABASE is terminating abnormally.  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 6794
Игорь_UUS
TaPaK
Игорь_UUS,

а в сервер брокере вы всё подавляете try catch поди, вот теперь и расшифровыйте


По большому счёту да... критические ошибки обрабатываются в блоке catch... пишется виндовый лог и происходит остановки задачи.
Ошибка "terminating abnormally" - неоднозначная... нашёл пару статеек на тему битой базы... но база тут не битая

ну так я ж и говорю: "гасите ошибки" - обратитесь к гадалке за остальной частью ошибки
2 сен 19, 15:15    [21961946]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка 3013: BACKUP DATABASE is terminating abnormally.  [new]
Игорь_UUS
Member

Откуда: г. Екатеринбург
Сообщений: 670
TaPaK
Игорь_UUS
пропущено...


По большому счёту да... критические ошибки обрабатываются в блоке catch... пишется виндовый лог и происходит остановки задачи.
Ошибка "terminating abnormally" - неоднозначная... нашёл пару статеек на тему битой базы... но база тут не битая

ну так я ж и говорю: "гасите ошибки" - обратитесь к гадалке за остальной частью ошибки



хм.. но THROW не должен "лочить верхнюю ошибку"... намёк понял, попробую посмотреть в этом напровлении
2 сен 19, 15:18    [21961950]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка 3013: BACKUP DATABASE is terminating abnormally.  [new]
Игорь_UUS
Member

Откуда: г. Екатеринбург
Сообщений: 670
TaPaK,

Спасибо... разобрался... ошибка действительно глушилась))

просто стало интересно... я вытаскиваю текст ошибки в блоке CATCH... примерно так:

DECLARE	@errmsg			NVARCHAR(2048)	= ERROR_MESSAGE(),
		@errno			INT				= ERROR_NUMBER(),
		@proc			SYSNAME			= ERROR_PROCEDURE(),
		@lineno			INT				= ERROR_LINE()
       
  SET @errmsg = COALESCE(QUOTENAME(@proc), '<dynamic SQL>') + 
                ', Строка ' + LTRIM(STR(@lineno)) + '. Ошибка ' + 
                LTRIM(STR(@errno)) + ': ' + @errmsg


Но, получается эта ошибка последняя... THROW тащит обе ошибки... есть ли способ получить предыдущую ошибку в блоке CATCH?
2 сен 19, 16:00    [21961997]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка 3013: BACKUP DATABASE is terminating abnormally.  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 30778
Игорь_UUS
есть ли способ получить предыдущую ошибку в блоке CATCH?
Увы, это известный недостаток сиквельного обработчика try catch
2 сен 19, 16:19    [21962018]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка 3013: BACKUP DATABASE is terminating abnormally.  [new]
Игорь_UUS
Member

Откуда: г. Екатеринбург
Сообщений: 670
alexeyvg,

Спасибо... я так и думал))
2 сен 19, 16:55    [21962045]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить