четверг, 28 июля 2016 г.

PostgreSQL для 1С. Мощный пост

- При установке нужно изменить кодировку на UTF8 (и сервер и клиент).
- Перенос баз PostgreSQL на другой диск Windows
1. Останавливаем сервис postgresql.
Пуск — Выполнить, вводим services.msc и жмём Enter... Находим PostgreSQL Database Server, кликаем правой кнопкой мыши, и нажимаем Остановить.
2. Переносим базы.
Выбираем диск, на который необходимо перенести базы. Например диск E. На этом диске создаём папку PostgreSQL\data. В эту папку копируем содержимое  папки, которая создалась по умолчанию при установке PostgreSQL — C:\Program Files (x86)\PostgreSQL\9.1.2-1.1C\data.
3. Меняем путь к базам в реестре Windows.
Пуск — Выполнить, вводим regedit и жмём Enter.
В редакторе реестра переходим к ключу HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\pgsql-9.1.2-1.1C и открываем для изменения строковой параметр  ImagePath.  В нем меняем путь к базам.
Старый путь обычно выглядит так — «C:\Program Files (x86)\PostgreSQL\9.1.2-1.1C\bin\pg_ctl.exe» runservice -w -N «pgsql-9.1.2-1.1C» -D «C:\Program Files (x86)\PostgreSQL\9.1.2-1.1C\data\»
Параметр -D указывает на директорию где хранятся наши базы, поэтому меняем ее на — «E:\PostgreSQL\data\»
То есть полная строка будет выглядеть примерно так — «C:\Program Files (x86)\PostgreSQL\9.1.2-1.1C\bin\pg_ctl.exe» runservice -w -N «pgsql-9.1.2-1.1C» -D «E:\PostgreSQL\data\»
- С предприятием 8.2 "стандартные" версии от 1С работают только до 9.1.9 включительно.
- При использовании 8.2 и Postgre 9.1.9 файл \data\postgresql.conf уже имет правильные настройки.
Если возникает ругань "syntax error at or near "SECOND" at character 227", а при попытке повторного создания "DATABASE не пригоден для использования" то в postgresql.conf нужно заменить соответствующие строки на
escape_string_warning = off
standart_conforming_strings = off
и вероятно (по некоторым источникам) снять коментарий с
backslash_quote = safe_encoding