Как-то раз мне пришлось залезть в файловую базу с помощью утилиты Tool_1CD, что бы кое что подправить, но последняя версия этой утилиты с возможностью редактирования не поддерживает базы начиная с платформы версии 8.3.8, видимо потому что размер внутренней страницы файла базы данных может быть не равный 4096 байт. Ну думаю на том и все, не видать мне потрохов базы. Но не давно узнал, что оказывается начиная с версии 8.3.8, с платформой поставляется консольная утилита cnvdbfl.exe, которая может изменять размер страницы файла. Так же узнал, что манипуляции с размером страницы файла могут увеличить скорость работы файловой базы по сети, а так же увеличить производительность в некоторых других случаях (более подробно читайте в публикации infostart.ru/public/934238/). Прочитать про эту утилиту можно на сайте ИТС. У кого нет доступа, вот краткая информация по данной утилите:
Файл базы данных имеет несколько версий внутреннего формата:
1. Версия 8.2.14 – имеет размер внутренней страницы файла базы данных равный 4096 байт. Размер внутреннего файла не может превышать 4 Гбайта. Более подробно про внутренний файл (см. здесь).
2. Версия 8.3.8 – размер внутренней страницы файла базы данных может принимать несколько значений: 4096, 8192, 16384, 32768 и 65536 байт. Кроме того, формат версии 8.3.8 обеспечивает более оптимальный формат хранения некоторых внутренних данных. Размер внутреннего файла не может превышать 4 Гбайта (при размере страницы в 4096 байта) и 6 Гбайт (при размере страницы 8192, 16384, 32768 и 65536 байт). Более подробно про внутренний файл (см. здесь).
Новый формат файловых баз данных предназначен для ускорения процесса открытия и работы с информационной базой, поэтому, начиная с версии платформы 8.3.9, новый формат используется по умолчанию при создании новых файловых баз данных.
В новом формате (версии "8.3.8") появились следующие возможности:
- Уменьшен размер и оптимизирована структура заголовка с метаинформацией в файле 1Cv8.1CD. Это позволяет существенно снизить число операций чтения файла при открытии базы данных и, тем самым, заметно ускорить время старта и начала работы программы.
- Теперь можно настраивать размер внутренней страницы файла данных. Это размер порции данных, в которых хранится информация и которыми обменивается программа с файловой системой. Предыдущий формат файловой базы данных (версии "8.2.14") поддерживал единственный размер внутренней страницы файла – 4Кб. Новый формат по умолчанию использует размер страницы 8Кб, но позволяет его менять в диапазоне от 4Кб до 64Кб.
Наибольший эффект от использования нового формата файловых баз данных ожидается в следующих сценариях:
- "холодный" запуск программы,
- работа с файлами базы данных по локальной сети,
- работа с сильно фрагментированной базой данных,
- использование дисковых подсистем с невысокой производительностью.
Система «1С:Предприятие» версии 8.3.8 и старше обеспечивает функционирование с файлом 1Cv8.1CD любого формата без дополнительных действий. Система «1С:Предприятие» версии 8.3.7 и младше обеспечивает функционирование с файлом 1Cv8.1CD только версии 8.2.14. Преобразование между двумя форматами возможно либо с помощью операции выгрузки/загрузки данных информационной базы в файл .dt, либо с помощью специальной утилиты cnvdbfl.
Утилита cnvdbfl является утилитой командной строки и позволяет:
1. преобразовывать файлы 1Cv8.1CD между различными форматами;
2. изменять размер страницы файла для формата 8.3.8.
Краткую справку по ключам использования утилиты можно узнать выполнив ее с ключом —help.
Ну вот собственно для этой консольной утилиты я и сделал GUI-обёртку.
При запуске программа ищет утилиты cnvdbfl.exe во всех установленных платформах и позволяет выбрать утилиту нужной версии в поле Версия cnvdbfl.exe, соответственно не нужно бродить по папкам bin в поисках утилиты. Далее выбираем файл базы данных . Файл так же можно выбрать перетянув его на форму мышкой. После выбора файла можно посмотреть информацию о файле
, что бы узнать текущую версию формата и размер страницы.
После этого выбираем нужный формат и размер страницы и выполняем конвертацию. Предварительно можно сделать резервную копию файла базы данных. Вот собственно и все. В комментариях хотелось бы увидеть какие то еще практические примеры использования консольной утилиты cnvdbfl.exe (кому, когда, в каких ситуациях пригодилась).
Обновление 2025/04/19
Охо! Как раз недавно в консольке мучались =) А тут все на блюдечке! Спасибо!
Блииин, не знал, что есть такая утилита как cnvdbfl.exe. Сейчас попробовал конвертнуть базу, все получилось, стала открываться в Tool_1CD. Я новичек в 1С, так что для меня информация оказалась полезной и интересной…
Вот это полезная вещь! Редко конвертирую базы, но когда надо, приходится каждый раз вспоминать ключи и прописывать путь до базы. Однозначно +
Есть же в Обновляторе-1С)
Не работает для платформы 8.3.10.2561 — не выбирает. Если ввести руками не показывает версию.Не конвертирует.Из командной строки версия 8.2.14
Ща гляну у себя на 8.3.10
(5) У меня 3 платформы на виртуалке:http://joxi.ru/8An5VYKCj4q8J2
Даже 64-х битную нашел, все работает. Какая у Вас ОС и какая разрядность?
windows 7 профессиональная 64 разрядная
(8) Попробую найти семерку, проверю
(8) Проверил — все норм, очень странно, пробовали на др. компьютерах?
нет ,не пробовала
Вы знаете, что помогло- запуск из проводника от имени администратора.Я на компе прописана юзером с административными правами.Видимо этого мало
(12) Оооооо, думаю да, причина в этом, на что то не хватает прав. Подумаю над этим…
По-моему, Tool1CD все-таки научился работать с разными размерами страниц.
https://yadi.sk/d/4fzFrdDvjR6fq
Попробуйте отсюда
R.I.P awa
(14)
серьезно?
(15) К сожалению, да.
Доржи рассказал об этом на инфостарте. Все были в шоке.
(16) Я только что афигел… Из мох коллег тоже никто не знал.
Что-то не увидела не одной версии, хотя стоят платформы 8.3.5-8.3.10
(18) Попробуйте запустить утилиту от имени администратора
(19) Помогло
А действительно размер внутреннего файла не может превышать 6 Гбайта (при размере страницы 8192, 16384, 32768 и 65536 байт)?
Если так, то зачем вообще размер страницы 16384, 32768 и 65536 байт нужен?
Я думаю, что истинно правильный ответ знают только разработчики платформы или эксперты. Хотелось бы тоже узнать правильный ответ…
А с помощью чего сделали GUI?
(23) Delphi
Не пользую файловые базы в релизе.
Можете в рамках ликбеза, вкрации объяснить зачем оно надо?)
(25) для фирм, у которых нет денег на Сервер 1С, SQL-сервер и нормального админа.
+ некоторые настраивают связку файловой базы + SSD (естественно с бекапом), которая работает значительно быстрее, чем на SQL, когда пользователей 1-2-3
(26)
Ох, ваша правда)
Просто привык или к тому, что всегда есть $$$ или можно воровать)
(26)А ежели сделать RAID-0 из SSD да в терминале, тогда вообще жить можно,
но недолго, пока база гигов до 12 не распухнет, тогда всё грустно…
(14)Обман, скачал по ссылке программу, фигвам! 🙁
Неподдерживаемый формат 8.3.8!
(28) файловая база 30 Гб, 55 пользователей. УТ 10.3. Все летает.
(30)Тут, видимо, как спроектирована база.
У нас на 1С Отель всё на 12 гигах сдохла при 4-5 пользователях.
(31)
У нас на 1С Отель всё на 12 г
Дело в размере ОДНОЙ из внутренних таблиц. То есть например, если таблица с чеками превысила, то все.
(32)Таблица там, в самом деле, подошла к 4 Гб., пришлось конвертировать из формата 8.2.14 в 8.3.8, чтобы ограничение стало до 6 Гб., просто
всё стало жутко тормозить при работе в терминале и база на SSD диске.
Работает на толстом клиенте, по сети вообще было невозможно работать изначально.
Разработчики, правда сразу говорят — нужен SQL сервер, но когда покупали софт об этом никто не предупредил, пришлось извращаться с ViTerminal-ом.
В конце концов пришлось хотя бы на PostgreSQL переходить.
А до какого размера таблицы можно раскачать файловую базу этой утилитой?
(34) ИТС:
Получается, что максимум до 6 ГБ
(35) Спасибо. Не такой и большой выигрыш в итоге.
(36) Ну, как ни как 50% и дает время для перехода на SQL. Работать всем нужно здесь и сейчас, а для установки и настройки сервера 1С и сторонней СУБД может понадобиться не один час.
(31)
сочувствую, вы держитесь там.. код до сих пор на английском там?
(38)В код не залезал, но объекты да, на англицком.
Да, в принципе, это и правильно, ежели народ сразу замахнулся на
международные продажи, русский, английский и немецкий языки присутствуют.
Вот если они сделают продукт полностью на управляемых формах, тогда это будет большой шаг!
А в общем, жить можно! 🙂
(39) я его активно смотрел в 2010 году, похоже ничего не изменилось с тех пор (объекты на английском, весь код на английском и частично закрыт, интерфейс если это можно так назвать сделан через одно место, с настройками без ящика алкоголя не разобраться и тд.). Повезло вам что вы не заглядываете в код этой конфы и ничего там не дорабатываете и ничего не перенастраиваете. Не представляю кто возьмется за переработку этого продукта под УФ, да и зачем есть есть продукты 1С от компании Кинт (например Кинт:Отель) — не реклама, просто он один УФ, с приятным интерфейсом и развивается насколько я вижу.
Насколько я понимаю 1С:Отель назывался ранее Румба 8: Управление отелем, писался изначально не под наши страны, а под гостиницы где то в азии (Вьетнам кажись).
(40)Что-то под УФ у них и сейчас есть.
Но, как говорил у них главный спец по внедрению, планы по переводу
всего на УФ у них есть, но это будет совсем другой продукт и неизвестно когда
это случится.
Мы встали к ним на техподдержку по самому дешёвому тарифу.
В общем-то проблемы решаются.
У нас было всё просто, пришёл новый директор, посмотрел, сколько
мы отдаём денег за поддержку Фиделио и сказал, ищите альтернативу.
На глаза в 2012 году попался 1С Отель, вот его и взяли…
(41) фиделио это да, для большинства отелейгостиниц вещь ненужная и слишком дорогая. У нас примерно так же произошло, был куплен практически даром по NFR версии 1С:Отель (меньше 10тыс), поигрались, посмотрели, поняли что это не оно.. на тот момент альтернативных решений на 1С не было, в итоге написал полностью свою конфу, которая и работает до сих пор.
(42)Самое главное, в фиделио не было выгрузки в 1С Бухгалтерию!
И техподдержка фиделио в этом не помогла.
Не, конечно, если спецы для этого есть, тогда конечно,
у нас перед фиделио тоже была самописка, паренёк типа Билли Гейтса
с незаконченным высшим, но с квадратной головой, наваял, работало,
пока кому-то не захотелось заработать на внедрении фиделио…
А так, я скажу, 1С Отель штука серьёзная, развивается, главное,
есть внешняя обработка по выгрузке в 1С Бухгалтерию! 🙂