1с риб создать начальный образ долго
Предназначена для указания параметров файловой или клиент-серверной базы при создании начального образа РИБ. При настройке синхронизации РИБ (внешние файлы) необходимо указать, где будет создан начальный образ РИБ. Если файлы хранятся в томах, также потребуется указать путь к файлу, в который будет записан архив (.zip) со всеми файлами в томах.
Открывается по команде Создать начальный образ из Помощника создания синхронизации данных при настройке синхронизации РИБ (внешние файлы). Также можно в списке Синхронизация данных с помощью кнопки открыть настройку синхронизации РИБ (внешние файлы), нажать кнопку Создание начального образа подчиненного узла распределенной информационной базы.
Параметры информационной базы
Укажите с помощью переключателя, где будет создаваться начальный образ информационной базы:
В поле Язык (Страна) выберите нужное значение из списка. По умолчанию предлагаются параметры, которые были заданы при создании синхронизации данных.
Для сервера 1С:Предприятия под управлением Microsoft Windows -с помощью кнопки укажите путь к папке, в которой будет размещен файл.
Для сервера 1С:Предприятия под управлением Linux - напишите путь к папке, в которой будет размещен файл начального образа.
В поле Защищенное соединение выберите значение из списка (Выключено, Установка соединения, Постоянно);
В поле Язык (Страна) выберите значение из списка. По умолчанию предлагаются параметры, которые были заданы при создании синхронизации данных;
При необходимости включите флажок Установить блокировку регламентных заданий (по умолчанию выключен).
Путь к архиву с файлами томов
Для сервера 1С:Предприятия под управлением Microsoft Windows - укажите с помощью кнопки путь к каталогу
Для сервера 1С:Предприятия под управлением Linux - напишите путь к папке, в которой будет размещен архив с файлами томов.
Для продолжения нажмите Создать начальный образ.
Для того чтобы загрузить файлы в томах в базе филиала, при первом запуске необходимо выполнить команду Разместить файлы начального образа, указав путь к файлу архива с файлами в томах.
Слишком долго создается образ + 1С загрузила оперативку более 2 Гб и продолжает постепенно увеличиваться. Это проблема?
- Может ли процессу не хватить памяти для создания начального узла?
- Что делать если не создается?
- Читать в книге знаний статью о альтернативном создании узла.
Вот , только задал вопрос и база создалась!
Но оперативка была 2 300 .
Скажите , с чем это связано. Что программа делает в этот момент?
(3) Там по другому реализованы РИБ?
(3) Вариантов много. Если руки от плеч, голова варит и драйверы для них установлены, то сделать начальный образ не составит никакого труда.
(4) "Что программа делает в этот момент?" - кофеварку ищет в подключенных к компу устройствах. У тебя не подключена - искала, искала, но не нашла.
И еще вопрос.
Настроил автоматическое обновление конфигурации подчиненной РИБ.
Так после обмена режим предприятия не закрывается , запускает бат-файл , обновляет , и открывает еще одно окошко в режиме предприятия.
А по идее должно работу с первым завершить.
Чтото в настройках пропустил?
УТ_для Укр.
(9) Это сколько же времени на подготовку займет? На версии 8.2.13 стандартными средствами выгружалось 1.5 часа (6 гиг основная база, 2 гига дочка с двумя организациями). А тут - ? Тогда уж лучше сделать полную базу, и удалить не нужное
(10) Подождать немного надо. Второе окно открывается с режимом "Завершить работу пользователей", чтоб всех выгнать, в т.ч. и сеанс первого окна, чтоб потом обновление сделать. Обычно - пара минут. Если не закрывается - что-то не так, может таймауты посмотреть.
Новый вопрос.
Из подчиненной РИБ пришел файл обмена при загрузке ошибку выбило , что не правильный параметр 2.
Нашел тот параметр , вычислил:
Как его найти в РИБ ?
Ошибка при чтении изменений из файла обмена.
Ошибка при вызове метода контекста (ПрочитатьИзменения): Ошибка при выполнении обработчика - 'ПриЗаписи': : Ошибка при вызове метода контекста (ЗарегистрироватьИзменения): Недопустимое значение параметра (параметр номер '2')
Чтение данных из файла обмена завершено с ошибками!
(11) "Это сколько же времени на подготовку займет? . Тогда уж лучше сделать полную базу, и удалить не нужное".
Ну, что лучше или хуже, быстрее/медленнее, обсуждать нужно в контексте задачи. Ты просил вариант - я тебе его предоставил. Дальнейшее обсуждение это оффтопик.
К слову, если начальный образ не формируется в принципе и база много больше 6 Гб, то удалять всё лишнее тоже будет не один день.
Создание узла распределенной информационной базы
Данный вариант представляет собой наиболее простой способ создания нового узла распределенной информационной базы. Процедуру создания начального образа можно инициировать путем выполнения соответствующего действия командного интерфейса Создать начальный образ. или же при помощи процедуры встроенного языка ПланыОбменаМенеджер.СоздатьНачальныйОбраз() .
Интерактивное создание начального образа
- будет создана новая информационная база с указанными параметрами;
- конфигурация распределенной информационной базы будет перенесена во вновь созданную информационную базу;
- будет выполнен перенос данных текущей информационной базы во вновь созданную, при этом для каждого элемента данных будет вызвана процедура узла плана обмена с предопределенным именем ПриОтправкеДанныхПодчиненному() ;
- в новом узле распределенной информационной базы будут заполнены данные узла ЭтотУзел плана обмена данными узла данной информационной базы, для которого создается начальный образ;
- в новом узле распределенной информационной базы будет создан узел, соответствующий данной информационной базе и его данные также будут перенесены, после чего ссылка на этот узел будет установлена в качестве значения главного узла созданного узла распределенной информационной базы;
- будут удалены все записи о регистрации изменений для узла, начальный образ которого был только что создан.
Создание начального образа из встроенного языка
Процесс создания начального образа при помощи процедуры встроенного языка ПланыОбменаМенеджер.СоздатьНачальныйОбраз() аналогичен интерактивной процедуре, за исключением того, что все параметры новой информационной базы, а также узел, для которого необходимо создать начальный образ, должны быть переданы в качестве параметров при вызове указанной процедуры.
Создание узла из конфигурации
- В информационной базе - узле распределенной информационной базы, для которой необходимо создать подчиненный узел, создаем узел плана обмена, устанавливаем его код и заполняем все необходимые для него реквизиты. В случае если узел, для которого необходимо создать информационную базу уже существует данный пункт можно пропустить.
- Сохраняем конфигурацию данной информационной базы в файл.
- Создаем пустую информационную базу там, где необходимо создание узла распределенной информационной базы.
- Загружаем конфигурацию, созданную в пункте 2, во вновь созданную информационную базу.
- Обновляем конфигурацию базы данных.
- В режиме 1С:Предприятия заполняем данные узла ЭтотУзел плана обмена данными, соответствующими данным узла, для которого создается узел распределенной информационной базы, в исходной информационной базе (информационной базе главного узла). Коды указанных узлов должны совпадать.
- Создаем узел плана обмена, который будет соответствовать информационной базе главного узла и заполняем его данными, соответствующими данным узла ЭтотУзел в исходной информационной базе. Коды указанных узлов должны совпадать.
- При помощи процедуры встроенного языка ПланыОбменаМенеджер.УстановитьГлавныйУзел() устанавливаем в свойство ГлавныйУзел значение ссылки на узел, созданный в пункте 7.
После выполнения пункта 8 создание узла распределенной информационной базы считается законченным. Созданная информационная база может участвовать в обмене данными в рамках распределенной информационной базы.
- в информационной базе главного узла распределенной информационной базы выполнить регистрацию данных, которые необходимо передать в новый узел;
- выполнить процедуру обмена данными между главным узлом и созданным узлом распределенной информационной базы.
Создание узла из копии информационной базы
- В оригинале информационной базы - узле распределенной информационной базы, для которой необходимо создать подчиненный узел, создаем узел плана обмена, устанавливаем его код и заполняем все необходимые для него реквизиты. В случае если узел, для которого необходимо создать информационную базу уже существует данный пункт можно пропустить.
- В копии информационной базы удаляем все узлы соответствующего плана обмена.
- Создаем новый узел плана обмена путем копирования узла ЭтотУзел .
- Заполняем данные узла ЭтотУзел значениями, аналогичными содержащимся в узел созданном в пункте 1. Значение кодов узлов должны совпадать.
- Изменяем код узла, созданного в пункте 3, на код узла ЭтотУзел информационной базы оригинала.
- При помощи процедуры встроенного языка ПланыОбменаМенеджер.УстановитьГлавныйУзел() устанавливаем в свойство ГлавныйУзел значение ссылки на узел, созданный в пункте 3.
После выполнения пункта 6 создание узла распределенной информационной базы считается законченным. Созданная информационная база может участвовать в обмене данными в рамках распределенной информационной базы.
Состав данных полученного узла распределенной информационной базы полностью соответствует составу данных информационной базы оригинала (никакой фильтрации данных согласно составу мигрирующих объектов и в процедуре ПриОтправкеДанныхПодчиненному() произведено не было). Состав данных, необходимый для правильной работы узла, должен быть скорректирован самостоятельно.
Механизм РИБ — механизм распределенных информационных баз - это когда у вас есть главная база и подчиненная(ые). Главная база может быть только одна, подчиненных может быть много. Каждая подчиненная база может иметь свои подчиненные базы, для которых она будет главной.
Вот посмотрим на картинку из первой ссылки по запросу в Яндексе:
РИБ используется для обмена данными. Причем не только теми данными, с которыми работает пользователь, но и данными изменения конфигурации. То есть РИБ позволяет передавать изменения конфигурации. Но изменить конфигурацию можно только в главной базе!
Визуализируем:
У нас большая компания и много филиалов. Есть доработанная УНФ, которую мы гордо называем УБФ(Управление Большой Фирмой). Но мы решили, что хватит терпеть то, что все филиалы имеют доступ к документам всех филиалов и каждому филиалу решили сделать отдельную базу, которую синхронизировать с нашей основной базой для передачи данных. Что ж, можно. Сделали.
И внезапно мы решили изменить картинку, которая появляется при входе в базу, захотели поместить туда логотип нашей фирмы, а почему бы и нет?
Как запилить картинку во все базы всех филиалов? Ну при текущем варианте, что у всех филиалов отдельная база, только руками. Руками специалистов, которые умеют заходить в конфигуратор и знают что нужно там нажать.
А вот если бы мы сделали подчиненные базы для филиалов, то есть использовали РИБ, то и данными бы обменивались, как при обычной синхронизации, и картинка бы сама добавилась во все "базы-дочки". Однако, в конфигуратор зайти бы все-таки пришлось, но только чтобы нажать кнопочку "Обновить конфигурацию базы данных", вот картинка:
Как создать подчиненную базу, на пальцах:
я буду использовать Управление торговлей, редакция 11 (11.4.13.275), но способ, в целом, одинаковый во всех типовых конфигурациях.
1) Сначала проделаем шаги, как при настройке обычной синхронизации:
2) . поставим галочку, нажмем.
4) тут ознакомимся с описанием. Я выберу обычную настройку, но если бы мы следовали примеру выше, то нужно было бы выбрать "с фильтром" и там одним кликом выбрать нужный филиал.
6) Указываем префикс - он будет подставляться к номерам документов, чтобы можно было отличить документы дочки и основной базы.
7) в общем случае, тут ничего не надо нажимать, кроме "Записать и закрыть".
8) А вот теперь создаем нашу новую подчиненную базу:
9) указываем место, куда ее покладем.
10) Зайдем в нашу новую подчиненную базу и закончим настройки синхронизации(синхронизация уже создалась, так как использовали РИБ, но нужно указать каталог для обмена выбрав "Настройки подключения")
(обратите внимание на верхний левый угол окна программы, там название базы, он отличается от предыдущих, так как это "дочка")
Кстати, в новой базе все пользователи будут выключены, пароли сброшены, нужно включить руками:
В общем-то ВСЕ.
Подчиненная база создана!
Теперь, когда наши программисты что-нибудь улучшат, эти улучшения прилетят в подчиненные базы сами.
Вот что-то изменили в основной базе:
нам нужно перенести изменения в базы-дочки.
Для этого запускаем главную базу в режиме 1С:Предприятие, то есть в пользовательском интерфейсе, заходим в настройки синхронизации, жмем выделенную кнопку:
После того, как синхронизация закончится, заходим в базу дочку и так же жмем "Синхронизировать", база загрузит данные и напишет:
После нажатия на Далее база закроется и начнет устанавливать обновления.
Когда обновы установятся, база начнет запускаться и сообщит нам следующее:
Это означает, что не обновлена конфигурация базы данных. Та самая маленькая кнопка в конфигураторе и это именно та причина, почему придется ОДИН раз зайти в конфигуратор. Что ж, зайдем в конфигуратор базы-дочки и нажмем эту кнопку, заодно вообще посмотрим что-да-как там, мы ж там еще не были.
Откроем конфигурацию и вот что увидим
Нажмем на "Обновить конфигурацию базы данных".
Увидим список изменений, которые прилетели с обновлениями:
И вот эти обновления появились в подчиненной базе.
Теперь необходимо запустить базу в пользовательском режиме, чтобы выполнились обработчики обновления.
Несколько правил:
1) Все узлы, кроме одного, должны иметь по одному главному узлу и один узел не будет иметь главного узла - это корневой узел.
2) Конфигурация может быть изменена только в узле, не имеющем главного узла (то есть в корневом).
3) Изменения конфигурации будут передаваться от главного к подчиненным узлам.
4) Разрешение коллизий так же будет производиться исходя из отношений "главный - подчиненный" - если изменения сделаны одновременно и в главном и в подчиненном узлах, то приняты будут изменения главного узла.
5) Сделать подчиненный узел в распределенной базе можно разными способами, но создание начального образа является рекомендуемым.
А теперь то, ради чего все писалось.
Как подчиненную базу сделать обычной(нормальной, отдельной, как хотите).
Я опишу только тот способ, которым пользуюсь. Это моя шпаргалка. Но он не единственный.
1) Заходим в свойства ярлыка запуска окна 1С:Предприятие:
2) В поле "Объект" дописываем:
DESIGNER /F"Путь до базы" /N"Имя Пользователя в базе" /P"Пароль пользователя" /ResetMasterNode
В итоге у меня получится:
"C:\Program Files\1cv8\common\1cestart.exe" DESIGNER /F"C:\Users\79119\Desktop\РИБ" /N"" /P"" /ResetMasterNode
Related Posts
22 Comments
9. Посмотреть типовую РИБ (полный план обмена) и от греха подальше очистить все объекты, не участвующие в обмене (типа констаноы «Префикс ИБ», ряда справочников и РС.
10. Убедиться, что в базе нет других планов обмена, использующих регистр «Соответствия объектов для обмена», а то и его надо чистить (вместе с настройками). (п.6 при этом не самое страшное)
В общем, вариант для единственного узла и второй копии по Полному плану обмена.
Спасибо за дополнение, полностью согласен.
Если регистр «Соответствия объектов для обмена», не почистить от других узлов, то начнутся коллизии при синхронизации.
Вообщем то аналог моей обработки:
Извиняюсь за свое незнание но идея показалась мне интересной. Если не затруднит можете объяснить каким образом освобождается память во время создания подчиненного узла с помощью данной обработки. На сколько помню для создания узла требуется не менее 200 МБ памяти на жестком диске для временных файлов и еще от 200 МБ для самой базы.
Вот если бы кто сделал что-то подобное по Организации. 🙂
В дополнении к ошибки, что 1С вываливается с недостатком памяти есть ещё такая ошибка:
При создании начального образа узла распределенной информационной базы в клиент-серверном варианте, в который переносятся данные последовательностей и границ последовательностей, происходит ошибка
Быстрая вставка запрещена (не было вызова suspendIndexing())
Хоть и написано, что 1С решила данную проблему, но нифига.
Скачаю эту обработку и попробую так.
Система пытается создать объекты в этом справочнике, но так как это РИБ, то не может и вываливается с ошибкой.
Конфигурация БП ред. 3.0
Можете подсказать решение?
Такая проблема была и есть только с файловой версией 1с, на 1с SQL версии этого нет(у меня точно). По времени обработка+тестированиеБД отнимает столько же (при условии, что не выпадет ошибка) — проверено. Если есть возможность, делайте первоначальный образ средствами 1Сервер прямо в БД SQL, зачем клиента 32-битного напрягаете? Тем, кто без файловой жить не может, то создавайте базу дочернюю временно в SQL, а оттуда через конфигуратор 1с выгружайте в файл .td и далее загружайте в пустую фаловую и несите на другую точку, куда вам ее нужно установить и настроить, т.е. подключить к центральной базе. Обработка сырая, но к себе в копилку положу, мало ли……. 😉
Читайте также: