|
Периодическая актуализация данных в копии базы | ☑ | ||
---|---|---|---|---|
0
impulse9
04.09.17
✎
06:24
|
Есть рабочая база ERP 8.3.10, и ее копия для разработки и тестирования. Периодически возникает необходимость подгрузить новые данные из боевой в копию. Можно конечно полностью накатить сверху, но тогда надо будет отключать регламентные задания, подключать к хранилищу и т.д. что долго и не по канонам. Хотелось бы скриптом раз в неделю по ночам обновлять данные
Есть ли готовый рецепт для решения этой проблемы? |
|||
1
impulse9
04.09.17
✎
06:29
|
Обе базы на MS SQL, но на разных серверах
|
|||
2
Филиал-msk
04.09.17
✎
06:35
|
Написать скрипт по отключению регламентных, подключению к хранилищу и т.д.
|
|||
3
Обработка
04.09.17
✎
06:48
|
Сделай РИБ с односторонней передачей данных )))
|
|||
4
Филиал-msk
04.09.17
✎
06:52
|
(3) И напиши скрипт по постоянному превращению его в ЦБ для разработки и обратно... (:
|
|||
5
1dvd
04.09.17
✎
06:52
|
нифига не понял. причем тут регламентные? Они в базе для разработчиков и так отключены постоянно
|
|||
6
assasu
04.09.17
✎
06:53
|
(0) если в консоли 1С выключить рег задания 1 раз, больше не придется это делать
|
|||
7
assasu
04.09.17
✎
06:53
|
(1) почитай книжки по скл. есть такая штука как зеркалирование
|
|||
8
1dvd
04.09.17
✎
06:55
|
(7) +1
|
|||
9
Aleksey
04.09.17
✎
07:28
|
(7), (8)
Как зеркалирование поможет в решении этой задачи? Т.е. настроил я зеркалирование, зашел в "копию" и грохнул все документы. Данные ушли в рабочую базу. Иначе это не зеркалирование. Второй неприятный момент, это ограничение на создание новых справочников, доков, регистров, ПВХ. При создании будет ошибка типа: Операция не может быть выполнена для базы данных "test", так как она участвует в сеансе зеркального отображения или группе доступности. Некоторые операции недопустимы для баз данных, участвующих в сеансе зеркального отображения или группе доступности. Т.е. для обновления нужен будет бубен который отключит зеркалирования, а после включить обратно. |
|||
10
Aleksey
04.09.17
✎
07:32
|
Зеркалирование это raid-1 из мира дисков. Т.е. мы обращаемся не к конкретной базе, а к кластеру. И при выходе из строя одной базы юзеры ничего не заметят и начнут спокойно работать с зеркалом
|
|||
11
1dvd
04.09.17
✎
07:35
|
||||
12
Aleksey
04.09.17
✎
07:36
|
(11) это я читал, но не нашел там ни слово о том что "В боевую ничего не попадёт,"
|
|||
13
Лефмихалыч
04.09.17
✎
08:15
|
(0) регламентые в разработческих базах должны быть отключены на уровне кластера. И - разработку на продуктивном кластере ведут только отъявленные мудаки. Создай отдельный для разработки, вот так:
sc create "ragent-dev@1641" binPath= "\"C:\Program Files\1cv8\8.3.blah-blah-blah\bin\ragent.exe\" /srvc /agent /regport 1640 /port 1641 /range 1660:1690 /d \"p:\ath\to\ragent\home\" /debug" start= auto obj=USR1CV8 password=pass displayname="Сервер 1С:Предприятия для разработки" depend= Dnscache/Tcpip/Tcpip6/lanmanworkstation/lanmanserver убедись отдельно, что на папку p:\ath\to\ragent\home\ у USR1CV8 есть полные права, иначе не запустится. Постоянная потребность в свежих данных - нонсенс. Изобретать для этого что-то - тоже. |
|||
14
Aleksey
04.09.17
✎
08:19
|
(13) для поиска методов устранения ошибок.
Ну допустим пришел бух и говорит, у меня в декларации по НДС нет номеров фактур. Вот тут и нужны актуальные данные чтобы с отладчиком посидеть понять откуда данные тянуться и накидать обработку по заполнению движения документа без перепроведения. А ведь еще эту обработку проверить надо. Не на боевой же проверять |
|||
15
1dvd
04.09.17
✎
08:24
|
(14) у нас еженощно делается (автоматически скриптом) копия боевой базы именно для таких целей
|
|||
16
Dmitrii
гуру
04.09.17
✎
09:25
|
(0) Готового рецепта нет.
Для тестирования и отладки на боевых данных проще иметь отдельную базу для тестирования и периодически перезаливать её целиком средствами СУБД. Подключать её к хранилищу смысла нет. В базе для разработки иметь актуальные данные нафиг не надо. А раз в квартал можно потратить час для того, чтобы перезалить базу свежими данными и переподключить к хранилищу. Если написать для это скрипт, то можно делать это без отрыва от производства во внерабочее время. |
|||
17
Lama12
04.09.17
✎
09:43
|
(0) Рекомендую использовать две базы. Одну базу для разработки, вторую для анализа ошибок текущей версии.
Синхронизировать базу разработки и рабочую чревато проблемами с разработкой. Пример. Ведешь разработку и меняешь структуру данных. Приходит обращение что в рабочей базе ошибка на тех объектах метаданных по которым как-раз ведется разработка. И как синхронизировать базы? У нас для поддержки база всегда ночью синхронизируется с рабочей путем развертывания бэкапа. Заодно и бэкап тестируется на работоспособность. |
|||
18
impulse9
04.09.17
✎
10:07
|
(16) (17) две базы тоже вариант. Спасибо за идею
|
|||
19
Лефмихалыч
04.09.17
✎
10:09
|
(14) во-первых, это не отменяет всего, что я написал. Во-вторых, ежедневно такие вещи не происходят. ИЛи даже - часто.
|
|||
20
dezss
04.09.17
✎
10:14
|
А если обмен между ними настроить?
|
|||
21
Serg_1960
04.09.17
✎
10:17
|
Кот-то может сказать "Он фанат РИБ" - и будет не совсем прав. Просто это удобный инструмент в данном конкретном случае.
Рабочая база выступает как центральная база, копия - в роли подчинённой базы. ЦБ "накапливает" все изменения, но то, что именно передавать в ПБ - решает программист (удаляя "ненужные" регистрации изменений перед обменом). Одноноправленный обмен тоже легко реализуется - удалением всех регистраций изменений в ПБ перед обменом. Отличия от "обычного" РИБ, только в том, что не надо настраивать автообмен - всё вышесказанное нужно реализовать без внесения изменений в конфигурацию, - во внешней обработке (которая, собственно говоря, и будет вызывать сам сеанс обмена). |
|||
22
Господин ПЖ
04.09.17
✎
10:18
|
куерга на ровном месте
тестовая среда отдельно, база с подключением к хранилищу - отдельно |
|||
23
Serg_1960
04.09.17
✎
10:23
|
(22) Встретив несколько раз ошибки в боевой среде, которые не выявлялись в тестовой, - можно и мнение поменять :)
|
|||
24
Господин ПЖ
04.09.17
✎
10:26
|
(23) нет таких ошибок.
а придумав обмен не обусловленный реальными потребностями - вы их создаете на ровном месте |
|||
25
Serg_1960
04.09.17
✎
10:28
|
Сейчас уже сложно найти, но пару раз было такое, что ошибка возникала только если база была подключена к хранилищу.
|
|||
26
Господин ПЖ
04.09.17
✎
10:29
|
>ошибка возникала только если база была подключена к хранилищу
продакшен к хранилищу подключают только .удаки... |
|||
27
Господин ПЖ
04.09.17
✎
10:31
|
создание проблем "сами себе"
в "больших" средах на крупных проектах пограммисты вообще доступа к продакшену не имеют |
|||
28
Serg_1960
04.09.17
✎
10:31
|
По поводу (24)
Мне в принципе не интересно, где именно тестирует свои обработки Господин ПЖ, - я то их тестирую на актуальной копии. |
|||
29
Serg_1960
04.09.17
✎
10:33
|
(27) "в больших средах на крупных проектах" - это ключевые слова. А что делать тем, коих большинство, кого некоторые презрительно называете "ларёчниками"? :)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |