Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Проблема с восстановлением репликаций
|
|||
|---|---|---|---|
|
#18+
Добрый день, парни нужна помощь. Ситуация следующая, есть два сервера между которыми настроена репликация, издатель и распространитель находятся на одном сервере. С базой распространителя (distribution) случился какой-то сбой (скорее всего отключился жесткий диск и она перешла в режим восстановления). Восстановил ее с помощью checkdb: ALTER DATABASE DISTRIBUTION set single_user DBCC CHECKDB (DISTRIBUTION, REPAIR_ALLOW_DATA_LOSS) ALTER DATABASE DISTRIBUTION set multi_user Далее увидел, что базы не синхронизированы и переинициализировал все подписки для всех публикаций с созданием новых моментальных снимков. Данные действия не помогли. Агент лога везде выдавал ошибку "Процесс не смог выполнить "sp_repldone/sp_replcounters" на "SQL". (Источник: MSSQL_REPL, номер ошибки: MSSQL_REPL20011) Попробовал восстановить на чуть более ранее состояние distribution из бэкапа, что тоже не дало никакого эффекта. Далее попробовал для отдельной публикации пересоздать подписку - не помогло. Попробовал пересоздать публикацию и добавить к ней подписку - создались без проблем, но агент чтения журнала выдавал ту же самую ошибку. В итоге решил удалить все публикации, благо есть скрипты и информация для ручного создания, если потребуется, а также отключить распространитель. Все публикации кроме одной удалились корректно, последняя выдавала ошибку, к сожалению текст не сохранил. После чего принудительно удалил все используя команду: EXEC sp_removedbreplication 'моя_база_данных' Отключился от распространителя, назад подключил, повторно создал одну публикацию и подписку к ней и все равно вижу следующую ошибку: Сообщения об ошибках: Процесс не смог выполнить "sp_repldone/sp_replcounters" на "мой_сервер". (Источник: MSSQL_REPL, номер ошибки: MSSQL_REPL20011) Получить справку: http://help/MSSQL_REPL20011 Only one Log Reader Agent or log-related procedure (sp_repldone, sp_replcmds, and sp_replshowcmds) can connect to a database at a time. If you executed a log-related procedure, drop the connection over which the procedure was executed or execute sp_replflush over that connection before starting the Log Reader Agent or executing another log-related procedure. (Источник: MSSQLServer, номер ошибки: 18752) Получить справку: http://help/18752 Процесс не смог установить последнюю распределенную транзакцию. (Источник: MSSQL_REPL, номер ошибки: MSSQL_REPL22017) Получить справку: http://help/MSSQL_REPL22017 Процесс не смог выполнить "sp_repldone/sp_replcounters" на "мой_сервер". (Источник: MSSQL_REPL, номер ошибки: MSSQL_REPL22037) Получить справку: http://help/MSSQL_REPL22037 Просмотр состояния синхронизации выдает ошибку о конкурирующем снимке: авторThe concurrent snapshot for publication 'xxx' is not available because it has not been fully generated or the Log Reader Agent is not running to activate it. If generation of the concurrent snapshot was interrupted, the Snapshot Agent for the publicatio DBCC OPENTRAN выдает следующий результат: авторTransaction information for database 'Axapta_base_test2'. Replicated Transaction Information: Oldest distributed LSN : (0:0:0) Oldest non-distributed LSN : (2709635:202065:265) DBCC execution completed. If DBCC printed error messages, contact your system administrator. Находил похожие темы, например эту: http://www.sql.ru/forum/188254/the-process-could-not-execute-sp-repldone-sp-replcounters-on-exciter2 , но если честно так и не понял, как можно разрешить данную ситуацию. Репликация очень необходима и с исходным сервером я особо манипуляций никаких сделать не могу, подскажите какие действия можно выполнить, что настроить повторно репликацию, пускай и с нуля, главное, чтобы не останавливать работу реплицируемой бд и сервера, на которой она находится. Данные сервера, на котором находится распространитель: Microsoft SQL Server 2012 - 11.0.5058.0 (X64) May 14 2014 18:34:29 Copyright (c) Microsoft Corporation Enterprise Edition: Core-based Licensing (64-bit) on Windows NT 6.3 <X64> (Build 9600: ) Сервер-подписчик: Microsoft SQL Server 2012 (SP1) - 11.0.3000.0 (X64) Oct 19 2012 13:38:57 Copyright (c) Microsoft Corporation Enterprise Edition: Core-based Licensing (64-bit) on Windows NT 6.2 <X64> (Build 9200: ) (Hypervisor) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2018, 16:58 |
|
||
|
Проблема с восстановлением репликаций
|
|||
|---|---|---|---|
|
#18+
nk13, Повторно удалите все публикации. После проверьте остались ли джобы категории REPL-LogReader. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2018, 19:19 |
|
||
|
Проблема с восстановлением репликаций
|
|||
|---|---|---|---|
|
#18+
invm, Все задания с такими названиями исчезли. Из того, что относится к репликациям осталось: - Agent history clean up: distribution - Distribution clean up: distribution - Replication agents checkup - Reinitialize subscriptions having data validation failures - Replication monitoring refresher for distribution. (выключено) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2018, 19:55 |
|
||
|
Проблема с восстановлением репликаций
|
|||
|---|---|---|---|
|
#18+
nk13, Это не название, а категория. Ошибка говорит, что у вас имеется запущенный на БД LogReader. Ищите. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2018, 20:10 |
|
||
|
Проблема с восстановлением репликаций
|
|||
|---|---|---|---|
|
#18+
invm, Хоть намекните, где его можно искать? Он же автоматом создается при запуске репликаций, где его можно отдельно найти и отключить? Монитор сервера или процессы виндовс его как-то отображают? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2018, 04:36 |
|
||
|
Проблема с восстановлением репликаций
|
|||
|---|---|---|---|
|
#18+
Может перезагрузкп сервера с распространителем может помощь в том, чтобы лог ридер отвалился? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2018, 04:38 |
|
||
|
Проблема с восстановлением репликаций
|
|||
|---|---|---|---|
|
#18+
В общем никакой перезагрузки не потребовалось. Попробовал утром повторно создать публикацию и все заработало без проблем, лог ридер стартовал без ошибок, такое ощущение, что ему нужно было время чтобы отсоединиться от предыдущих публикаций. Логи почитаю внимательно с какого момента он перестал ошибки слать. На будущее, если такое не дай бог повториться, надо понять, что с ним делать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2018, 06:22 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=39625703&tid=1689983]: |
0ms |
get settings: |
13ms |
get forum list: |
16ms |
check forum access: |
11ms |
check topic access: |
11ms |
track hit: |
60ms |
get topic data: |
12ms |
get forum data: |
6ms |
get page messages: |
55ms |
get tp. blocked users: |
2ms |
| others: | 243ms |
| total: | 429ms |

| 0 / 0 |
