Миграция сервера 1С с W2k3/MSSQL8 на Fedora/PgSQL

1c81ico
Версии продуктов:
1C:Предприятие 8.1.12-101.i386 (подписчики ИТС могут забрать с веб-сайта 1C)
PostgreSQL 8.3.3-2.1C (нашел на свежем диске ИТС RPM’ы, а не исходники, как на сайте 1C)
Fedora Core 10
Замечаний по установке нет. Добавлю лишь, что сразу после установки изменил локаль системы на русский (System-Administration-Language). То есть в файле /etc/sysconfig/i18n у меня строчка LANG=”ru_RU.UTF-8″.
Это я сделал для того, чтобы initdb инициализировал новую базу с локалью RU, а не EN, так как в региональных настройках исходной ИБ 1C у меня установлено “Русский (Россия)”.
Скажу сразу, что сервер может работать и без ключа – но поддерживает лишь до 12 подключений (включительно).
Установка драйвера USB-ключа HASP не требует ряда шаманских танцев, описанных во всех руководствах (подозреваю из-за того, что там версия Fedora была старее).
Просто скачиваем драйвер отсюда, вытаскиваем из него aksusbd-redhat-1.5-1.i386.rpm и устанавливаем.
Есть еще версия под WINE, но я ее не устанавливал.
Устанавливаю 1C:

затем 1C_Enterprise-common-nls-8.1.12-101.i386, 1C_Enterprise-server-8.1.12-101.i386 и 1C_Enterprise-server-nls-8.1.12-101.i386
Аналогично попытался установить PostgreSQL (порядок установки такой:
postgresql-libs, postgresql, postgresql-server, postgresql-plperl и postgresql-contrib)
Однако, предварительно, для разрешения зависимостей, пришлось установить libtermcap2-2.0.8-36mdk.i586 и readline-compat-4.3-307.i586. RPM’ы взял с сайта rpm.pbone.net.
Далее инициализируем базу данных:

В файле /var/lib/pgsql/data/postgresql.conf найдите параметр
default_with_oids, раскомментируйте и установите его значение в on
Затем редактируем /var/lib/pgsql/data/pg_hba.conf
Будет вот такая строчка:
host all all 0.0.0.0/0 md5
Которая говорит серверу PostgreSQL не запрашивать пароль при локальном входе.
Превратите ее в
host all all 0.0.0.0/0 trust
Возможно, вместо trust, попробую написать password – пока выяснять было некогда.
Затем рестартим, выполняем вход в консоль PostgreSQL:

и даем команду

где sergtsop – новый пароль. У вас, естественно, он будет другим. Апострофы и точка с запятой в строке запроса к БД – обязательны. Выходим из консоли командой \q
Поздравляю, теперь вы знатный постгресмен!
В Система-Администрирование-Службы разрешаем и запускаем сервер PostgreSQL. Я выключил фаерволл, хотя оснастке вроде был нужен только порт 1540 TCP.
При решении проблем я также запретил работу SELinux.
Полагаем, что все в порядке. Базу данных будем создавать из винды.
Первым делом в винде в файле hosts прописываем IP-адрес и имя линукс-сервера.
Устанавливаем аналогичную виндовую версию 1C, запускаем MMC-оснастку “Серверы 1C Предприятия”, создаем центральный сервер, именем которого – имя линукс-сервера из hosts.
Далее в кластере пытаемся создать информационную базу, если оснастка зависает, то необходимо удалить папку /home/usr1cv81/.1cv81 и перезапустить демон 1C.

При создании новой информационной базы используйте аналогичные данные:
Имя: moyabasa
Сервер баз данных: ИмяСервераLinuxВфайлеhosts
База данных: moyabasa
Пользователь сервера БД: postgres
Пароль пользователя БД: sergtsop
Создать базу данных в случае ее отсутствия: ставим галочку.
Лично я еще установил phpPgAdmin – по умолчанию он находится по адресу http://localhost/phpPgAdmin/ (регистр важен!)
Изменений в конфиге /etc/phpPgAdmin/config.inc.php коснулись только строчки:

Ну, и httpd должен быть запущен.
Поздравляю, на этом этапе вы уже можете начинать работу в новой базе. Однако, мы же переходим к перекачке данных из MS SQL 2000 в наш PostgreSQL.
Для этого заходим конфигуратором в рабочую базу 1C и в меню Администрирование выбираем пункт “Выгрузить информационную базу”. Указываем куда и в какой файл. Время выгрузки из моей базы (файл БД MSSQL весил 48 Гб) длилось около двух часов. Файл информационной базы 1C в итоге занял ~1,5 Гб.
Логично, что теперь заходим конфигуратором во вновь созданную базу и открываем пункт меню “Администрирование”-“Загрузить информационную базу”. Загрузка будет происходить также долго. Размер базы PostgreSQL без малого такой же – 51 Гб.
Теперь можно переходить к бэкапу SQL-базы средствами 1C v8

Җавап калдыру



All fields are required. Your email address will not be published.