Присоединяйтесь!

Организация доступа к БД без сетевого диска

Организация доступа к БД без сетевого диска

Рекомендуем использовать для сдачи отчетности онлайн-версию СБИС. Она удобнее, не требует обновления, имеет больше функций — ЭДО, «Все о компаниях и владельцах», ОФД и ЕГАИС, «Торги и закупки», а также обладает рядом других преимуществ.

Доступ без сетевого диска работает только на версиях Pervasive SQL выше 9.5

Формат работы через сервер Pervasive SQL позволяет обеспечить максимальную безопасность данных от несанкционированного доступа. Главным отличием от старых форматов является работа СБИС 2.4 не через каталог, а непосредственно через сервер. Это означает, что сама база будет лежать в защищенном месте на сервере и непосредственно доступ к ней может получить только администратор. Т.е. не будет «расшаренного» каталога и права для пользователей можно будет назначать непосредственно на сервере Pervasive. Визуальным отличием новой БД будет отсутствие файлов «*.tbh» в каталоге БД (остаются «*.mkd»). Ключевой таблицей в новом формате является таблица «Формат базы данных» (файл «dbfrmt.mkd»). Повреждение или удаление данной таблицы ведет к невозможности работы с БД.

Создание БД в формате для работы через сервер Pervasive SQL

Конвертация БД

Первоначально необходимо выполнить конвертацию существующей БД
Напоминаем, что перед выполнением конвертации необходимо делать архивные копии БД
Если в каталоге БД присутствует файл «!dbfrmt.mkd», то необходимо сначала конвертировать с новыми словарями в текущем формате. Для этого нужно запустить утилиту Jinnee и выбрать«Сконвертировать».

В настройках указать следующие параметры:

  • указать каталог конвертируемой БД;
  • в качестве формата базы данных выбрать пункт «Оставить существующий формат БД»;
  • указать каталог модулей, которые используются для работы.

Если в каталоге нет файла «!dbfrmt.mkd», но присутствует файл «dbfrmt.mkd», а также если БД была только что конвертирована на предыдущем шаге, то в утилите «Jinnee» необходимо указать следующие настройки:

  • указать каталог конвертируемой БД;
  • в качестве формата базы данных выбрать пункт «Для Pervasive SQL (доступ к БД без сетевого диска)»;
  • указать каталог модулей, которые используются для работы.

Создание БД в Pervasive SQL

Все шаги по созданию новой БД выполняются в «Pervasive SQL Control Center»:

  • в меню «File» выбираем пункт «New→Database», либо кнопка на панели инструментов, и т.д.;
  • указываем название сервера (по умолчанию, прописывается название сервера, на котором выполняются настройки).

На следующем шаге настраиваем БД:

  • в «Database Name» указываем желаемое имя БД;
  • в «Location» выбираем каталог конвертируемой БД;
  • снимаем галочку «Bound» и устанавливаем «Create dictionary files» и «Relational integrity enforced»;
  • в группе «DNS Options» устанавливаем галочку «Create DNS» и в «Open mode» выбираем пункт «Normal».

Добавление данных в БД Pervasive SQL

Для добавления таблиц в созданную БД необходимо использовать утилиту «Jinnee»:

  • в меню «Базы данных» необходимо выбрать команду «Обновить DDF-файлы» и указать путь к БД.
  • При подключении к Pervasive SQL оставьте предложенное имя пользователя и пустой пароль для входа в базу данных без изменения. Данные о таблицах будут занесены в БД.

Создание пользователей в БД Pervasive SQL

Создание пользователей в БД Pervasive SQL подчинено общим правилам создания пользователей в SQL-представлении БД СБИС и подробно описывается в руководстве «Обмен данными» (глава «Организация SQL-доступа»; Помощь / Разработка в СБИС)

Очень важно, чтобы в свойствах БД («Properties»), в которой будут созданы пользователи, закладке «Btrieve Security» был выбран пункт «Database (DB authentication and authorization)».

Добавление пользователей в БД Pervasive SQL

Все работы по добавлению пользователей выполняются в программе «Джинн» (меню «Базы данных»):

Если база уже была до этого в формате работы через сервер, то необходимо сначала удалить прежний пароль доступа к БД (команда «Удалить пароль доступа к БД»).
Для синхронизации списка пользователей СБИС 2.4 и БД Pervasive SQL, необходимо выбрать команду «Добавить пользователей в БД Pervasive», выбрать каталог базы данных и указать имя пользователя и пароль доступа к БД/

В подключении к Pervasive SQL необходимо указать:

  • имя сервера, на котором расположена БД;
  • название БД, созданной в Pervasive SQL, в которой будет формироваться список пользователей.

Настройка sbis.ini для доступа к БД без сетевого диска

На этом шаге считается, что база подготовлена для работы через сервер Pervasive SQL. Теперь необходимо настроить СБИС 2.4 для работы с сервером. Эти настройки выполняются в файле sbis.ini — файле конфигураций:

  • в качестве каталога базы данных необходимо написать следующее:
    БазаДанных=btrv://<имя_сервера>/<название_бд_в_Pervasive>
    Например, если БД создана на сервере «MainServer», а название БД в Pervasive SQL «sbisdb», то необходимо прописать следующий путь к БД:
    БазаДанных=btrv://MainServer/sbisdb
  • для осуществления работы в сетевом режиме, необходимо проверить следующие параметры:
    СетевойРежим=ДА
    РазделяемыеНастройки=ДА

Сохраняем настройки в файле sbis.ini и запускаем СБИС 2.4

Обновление БД в формате работы через сервер Pervasive SQL

Подготовка БД для работы

База уже должна находится в режиме работы через сервер Pervasive SQL. Если это не так, то для создания БД в нужном формате необходимо про читать инструкцию по «Создание БД в формате для работы через сервер Pervasive SQL».

Прежде чем приступить к конвертации БД необходимо:

  • запустить «Pervasive SQL Control Center» и перейти к свойствам БД («Properties»);
  • в открывшемся запросе на доступ к БД указать пользователя «Master» и его пароль;
  • перейти к свойству «Security» и убрать флаг «Enable Security». Нажать «Apply»;
  • перейти на закладку «Btriеve Security», выбрать пункт «Classic(OS authentication and authorization)».

Обязательно выполните указанные рекомендации. Их не соблюдение может повлечь возникновение ошибки «Ошибка при вызове PvAddTable», что в свою очередь потребует остановки сервисов Pervasive SQL и их повторного перезапуска.

Запуск конвертации

Для выполнения конвертации необходимо запустить утилиту Jinnee и выбрать «Сконвертировать».

В окне конвертации необходимо:

  • указать каталог конвертируемой БД;
  • в качестве формата базы данных выбрать «Для Pervasive SQL (доступ к БД без сетевого диска)»;
  • указать каталог модулей, которые используются для работы.

Запускаем процесс конвертации, нажав кнопку «Далее».

Добавление таблиц СБИС 2.4 в БД Pervasive SQL

Для добавления таблиц в БД необходимо в утилите Jinnee выполнить команду «Обновить DDF файлы» (меню «Базы данных») и указать каталог с БД для обновления.

Обновление прав пользователей СБИС 2.4 в БД Pervasive SQL

При выполнении обновления прав пользователей необходимо выполнить следующие действия:

  1. включить в БД возможность работы с пользователями. Для этого:
    • запустить «Pervasive SQL Control Center» и в свойствах БД («Properties») на закладке «Security» включить «Enable Security»;
    • ввести пароль для пользователя «Master»;
    • на закладке «Btrеive Security» выбрать «Database (DB authentication and authorization)».
  2. удалить всех пользователей, кроме пользователя по умолчанию. Для этого:
    • открыть список пользователей (группа «users») для БД, выделить всех пользователей и нажать .
  3. Запустить Jinnee, выполнить команду «Удалить пароль доступа к БД» (меню «База данных»).
  4. Запустить Jinnee, выбрать команду «Добавить пользователей в БД Pervasive» (меню «База данных»). Указать БД, из которой будем добавлять пользователей. В появившемся диалоге заполняем следующие поля:
    • «Название сервера» - указываем имя сервера, на котором расположена БД;
    • «Название базы данных» - указываем название БД, созданной в Pervasive SQL, в которую будет заноситься обновленный список пользователей.
    • «Пароль» - вводим пароль пользователя «Master» для доступа к БД, указанной на предыдущем шаге.
  5. Обновить список прав на таблицы (если таковые назначались). Для этого:
    • запускаем Jinnee, в меню «База данных» выбираем команду «Восстановить права на таблицы».

После выполнения всех перечисленных выше операций, обновленная база готова к работе через сервер Pervasive SQL.

Нашли неточность? Выделите текст с ошибкой и нажмите ctrl + enter.