Переключение на другой движок баз данных

Этот раздел описывает, как переключить AggreGate Server на использование другого движка БД. По умолчанию AggreGate Server использует встроенный движок БД, который подходит только для небольших инсталляций (до 20-30 устройств). Для крупных инсталляций рекомендуется использовать более мощный сервер баз данных, например MySQL, Oracle, Microsoft SQL Server, PosrgreSQL, Firebird и другие.

Некоторые версии AggreGate Server содержат в качестве опционального пакета сервер MySQL. Если этот пакет выбирается при установке, сервер автоматически настраивается на использование MySQL. В этом случае переключение на другой движок баз данных, скорее всего, не потребуется.

Чтобы переключить AggreGate Server на другой движок баз данных, необходимо:

  • Выполнить резервное копирование конфигурационного файла AggreGate Server (server.xml в установочной папке AggreGate Server), скопировав его в ту же папку под именем server_old.xml.
  • Установить и настроить базу данных, если это еще не было сделано.
  • Создать новую базу данных, чтобы AggreGate Server мог ее использовать для хранения данных.
  • На движке БД создать учетную запись пользователя, от имени которого AggreGate Server будет осуществлять доступ к данным.
  • Выдать необходимые права новой учетной записи базы данных AggreGate Server. Потребуются права на создание и редактирование структуры таблиц (CREATE, ALTER, DROP). Также необходимо предоставить все права на вставку, обновление, удаление и выбор данных из всех таблиц (INSERT, UPDATE, DELETE and SELECT).
  • Остановить AggreGate Server, если он запущен.
  • Положить соответствующий JDBC-драйвер в подпапку / jar установочной папки AggreGate Server. Файл драйвера обычно имеет расширение .jar. Например, JDBC-драйвер для MySQL имеет имя MySQL-connector-java-X.X.XX-ga-bin.jar, где X.XX.XX i- номер версии. Драйвер JDBC может поставляться как производителем сервера базы данных (Oracle, и т.д.), так и сторонними авторами.
  • Существует также альтернативный метод, как сделать Ваш JDBC-драйвер доступным для AggreGate Server:

    • Наберите -classpath/a <JDBC_Driver_File_Path> в первой и единственной строке этого файла. JDBC_Driver_File_Path - это полный путь к файлу JDBC-драйвера базы данных (или имя этого файла, если он находится в директории инсталляции AggreGate Server).

    8. Запустите утилиту Конфигуратор сервера или AggreGate Server и запустите действие Конфигурировать сервер. Перейдите во вкладку База Данных в диалоговом окне конфигурации сервера.

    9. Измените настройку Драйвер БД в Настройках общей конфигурации на имя класса Java, представляющего драйвер БД. Это имя определяется  производителем драйвера JDBC. Например, класс драйвера БД MySQL называется “com.MySQL.jdbc.Driver”. Дополнительную информацию о Общих Настройках Конфигурации можно найти здесь.

    10. В Настройках Общей Конфигурации укажите URL Вашей базы данных. Ее формат также задан производителем JDBC-драйвера. Для MySQL формат имеет  следующий вид: jdbc:MySQL://[host][:port]/[database], где [host] - IP-адрес или DNS-имя сервера MySQL (может быть также пустой строкой или localhost), [port] - номер порта, на котором запущен сервер MySQL (опционально - если он не задан, используется порт по умолчанию), и [database], являющееся именем базы данных AggreGate Server'а. В качестве имени БД Вы можете использовать “AggreGate Server”. Например, если Ваш сервер MySQL запущен на 192.168.0.1 с портом по умолчанию, используйте следующий URL: jdbc:MySQL://192.168.0.1/AggreGate Server.

    11. Задайте правильное имя пользователя и пароль к БД в Общих Настройках Конфигурации. Они нужны для входа в базу, обозначенную в настройках URL Базы Данных.

    12. Выберите диалект базы данных в Общих Настройках Конфигурации, соответствующий типу Вашей БД. См. общие настройки конфигурации для Диалекта БД.

    13. Сохраните новые настройки. Не перезапускайте сервер, даже если появится соответствующее приглашение.

    14. Остановите конфигуратор сервера (или AggreGate Server).

    15. Запустите утилиту конвертер базы данных, которая находится в папке инсталляции AggreGate Server, чтобы переместить данные из старой базы в новую.

    16. Дождитесь, когда конвертер закончит работу. В зависимости от размера БД на это может уйти от нескольких секунд до нескольких часов.

    17. Запустите AggreGate Server.

    18. Процесс закончен, и теперь Вы можете использовать новую БД.

    Максимальное количество параллельных соединений для Вашего сервера БД должно быть больше значения Максимального размера пула подключений в Общих Настройках AggreGate Serverа. В большинстве случаев количество параллельных соединений БД по умолчанию меньше размера пула подключений AggreGate Server, поэтому должно быть увеличено. О том, как увеличить лимит соединений, прочитайте в документации к Вашему серверу БД.