Перенос и конвертация баз 1С 7.7 из SQL в файловый формат

Коллеги, сегодня попытаюсь описать порядок действий при переводе баз 1С на другой сервер. На примере версии 1С 7.7. Ее многие до сих пор используют, в частности из-за архивной информации. Я, как админ, смирился с тем, что эти базы должны быть, что туда заходят раз в год, что базы надо хотя бы изредка бекапить и т.д.

Тема не новая, много статей в интернете. Тех, кто все это проделывал, предупреждаю, что ничего особо нового в этой статье не будет. Статья будет адаптирована для админов, которые не понимают ничего в бухгалтерском учете и тех, кто к этим базам бухгалтерии относится как просто к набору непонятных файлов.

Конкретно меня парило в этой ситуации, что под это дело в серверном помещении стоит и работает большой мощный сервер, на котором установлена устаревшая ОС Windows Server с СУБД MS SQL Server 2000. Понятное дело, что никто не занимался уже давно обслуживанием баз 1С, на это дело лучше выделять аутсорсинг (см. недавнюю статью про это дело). Но ввиду экономии бюджета и малой востребованности этих баз было решено не тратить деньги. Ничего хорошего в этом нет, особенно для админа, но что поделаешь. Еще я был недоволен, что все базы работают через SQL, а не файлово.

001

SQL работал все года как часики, но лично я не силен в администрировании SQL особенно в области защищенности, поэтому всегда стараюсь избегать это дело. А тут еще и древний сервер, в общем пришло время )

Перед началом переноса вы должны знать все важные пароли: пользователь базы с максимальными правами, а также пароль администратора СУБД (по умолчанию sa). Второй пользователь необязателен, если он прописан в базе. Мне пришлось воспользоваться паролем пару раз, далее покажу где именно. В общем, запасаемся терпением и временем, приступаем.

Краткое описание статьи

Входим в базу под администратором, выгружаем ее в zip. На новом сервере создаем пустую базу с таким же названием (необязательно), выбираем ее тип как файловую, делаем загрузку из zip, копируем пользователей и проверяем запуск.

Для файловой БД (если у вас не SQL-базы 1С) все просто – копируем папку с базой на сервер и все. Моя статья про более сложный вариант.

Ход выполнения

1С конфигуратор
1С конфигуратор

Идем на старый сервер, выбираем нужную базу и заходим в режиме конфигуратора:

Выбираем администратора базы и прописываем пароль:

1С запуск
1С авторизация

Зашли в базу – уже хорошо, пол дела сделано. Перед выгрузкой я всегда проверяю настройки SQL:

1С параметры запуска SQL
1С параметры запуска SQL

Откроется окно с параметрами

1С параметры запуска SQL
1С параметры запуска SQL

Если нажать ОК и программа выдает ошибки – разбираемся в частном порядке. У меня, к примеру, надо было везде прописать другой сервер (я переименовал по запарке перед выгрузкой, это тоже влияет) и кое-где послетал пароль sa, его я также прописывал. Если нажимаем ОК и не выдает ошибки, то тогда вообще замечательно, осталось просто выгрузить базу:

1С выгрузка данных
1С выгрузка данных

… и сохранить как архив. Советую обзывать архив так же, как и сама база (папка):

Сохранить выгрузку
Сохранить выгрузку

А теперь самое интересное. Все это дело может занять очень долгое время. У меня лично больше часа никогда не было, в среднем минут 20-30. Читал на форумах, что 1с7.7 не понимает многоядерность и выгрузка у некоторых доходит до десятков часов в зависимости от размера. Отключение антивируса и задание приоритета на процесс лично мне не дало производительности. В любом случае, если вы видете зависшее окно (в диспетчере процессов может быть статус “Не отвечает”), то это нормально. Если открыть тот же диспетчер задач, то загрузка процессора и памяти там периодически меняется, значит процесс идет.

1С подвисла
1С подвисла

После длительного ожидания программа наконец-то просыпается и выводит сообщение:

1С завершена выгрузка
1С завершена выгрузка

Далее выгруженный файл копируем по сети на новый сервер. Там же создаем (“добавить”) в режиме конфигуратора новую базу. Обзываем ее и папку одинаково. В моем случае имя совпадает с базой на старом сервере. После нажатия “ОК” выбираем тип – файловая.

010

1С добавить информационную базу

1С добавить информационную базу

1С формат хранения данных
1С формат хранения данных

Вошли в новую базу, загружаем данные:

1С загружаем данные
1С загружаем данные

Выбираем наш архив и приступаем к загрузке. У меня снова сервер подвис:

1С подвисает
1С подвисает

Ждал немного меньше, сервер же новее. Получаем сообщение об успехе:

1С завершение загрузки
1С завершение загрузки

Теперь надо скопировать данные о пользователях, файлово выделяю папки с пользователями и копирую по сети в новую базу(там нет этих папок). У меня эти папки просто огромные, может их можно почистить, но кто мне объяснит.

1С файлы данных
1С файлы данных
1С копирование файлов
1С копирование файлов

После этого надо удостовериться и войти в старую базу. Если системных ошибок нет, то считаю задачу выполненной. И никакого SQL )))

Друзья! Вступайте в нашу группу Вконтакте, чтобы не пропустить новые статьи! Хотите сказать спасибо? Ставьте Like, делайте репост! Это лучшая награда для меня от вас! Так я узнаю о том, что статьи подобного рода вам интересны и пишу чаще и с большим энтузиазмом!

Также, подписывайтесь на наш канал в YouTube! Видео выкладываются весьма регулярно и будет здорово увидеть что-то одним из первых!

Интересно? Поделись с другом
Litl-Admin.ru

Comments:

Comments: 6
  1. litladmin

    А вот на первом скрине “заходим в режиме конфигуратора…”, там внизу показано, что база в файлах лежит. Я правильно понимаю, что в случае с серверной реализацией там будет Srv=”…”, а не путь к каталогам? Просто сталкивался с такой темой.

  2. PrihoD (author)

    не путать с 1С 8.х, там что-то подобное. Сам не понял как работает “семерка”, но у нее есть как и файлы, так и SQL. Сначала конечно же попробовал перенести файлы просто, но сразу выдало ошибку SQL + ODBC. Саму идею переноса взял отсюда – http://answers1c.ru/questions/203/

    1. litladmin

      А, да. Я то точно видел в 8-ке. Небольшой спец я в них, надо сказать. В восьмёрке вот файловые указываются путём, а SQL – в виде имени сервера и имени базы. Хммм.. А зачем переносил в файловую? SQL работает да и ладно! Копии резервные делать автоматом можно и всё.

      1. PrihoD (author)

        @litladmin, Ну во-первых, целый сервер пыхтит и потребляет примерно 700 Вт просто так, ради одного доступа раз в месяц, во-вторых смысл SQL, если с базой будет работать менее 10 человек (я думаю один-два максимум), припоминаю, что по рекомендациям 1С – от 10 юзеров надо юзать SQL, в-третьих – бекапить проще файлы, чем базу SQL 2000, дырявую во всех смыслах.

        1. litladmin

          Ну при таких входных данных согласен по всем пунктам. Отдельный сервер ради этого держать нет смысла, при такой загрузке. Если вот на виртуалке держать SQL сервер, да ещё и не только ради 1С, а совместить с админкитом или ещё чем-нибудь, да ещё при большой загруженности бухгалтерами – тогда можно и использовать SQL. Предпочитаю правда 2005-ый, с 2к вообще не работал.

  3. Kiryuha

    Хорошая статья! Уже сталкивался с задачей, когда нужно произвести выгрузку баз 1C из SQL формата, правда делал резервную копию базы. Думаю, правильнее будет делать именно выгрузку по подобному образцу.

Leave a Reply