powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Процедура зеркалирования
1 сообщений из 1, страница 1 из 1
Процедура зеркалирования
    #39799984
dmitriymerkush
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день. Требуется написать процедуру для зеркалирования баз данных.
Не до конца понимаю как реализовать проверку серверов (если уже есть зеркало, то разрушить и создать новое, если нет, то просто создать) и попеременное выполнение: создать бэкап на основном, сделать рестор на зеркале, затем указать порт на зеркале на SrcPort и на основном на MirrPort. Как я понял создавать каждый раз заново эндпоинты, сертификаты и указывать логины и пользователей необходимости нет.

CREATE PROCEDURE MirrorProc
@db_name,
@SrcLinkedServer, @SrcBackupPath ='C:\bkups\', @SrcPort = 'TCP://name:port1',
@MirrLinkedServer, @MirrBackupPath ='Z:\bkups\', @MirrPort = 'TCP://name:port2'

AS
BEGIN
DECLARE @sql varchar(max)

SELECT @SrcBackupPath=@SrcBackupPath+'\'+@db_name+'.bak'
SET @sql='exec(''
...
'')'+case when isnull(@SrcLinkedServer,'')='' then '' else ' AT '+@SrcLinkedServer end
print @sql
--exec(@sql)


SELECT @MirrBackupPath=@MirrBackupPath+'\'+@db_name+'.bak'
SET @sql='exec(''
...
'')'+case when isnull(@MirrLinkedServer,'')='' then '' else ' AT '+@MirrLinkedServer end

END

На данный момент представляю себе это как-то так, подскажите, пожалуйста, если у кого то есть идеи.
...
Рейтинг: 0 / 0
1 сообщений из 1, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Процедура зеркалирования
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]