mbsql

Модуль используется для обновления структуры базы данных при обновлении билинга

Файловая структура модуля

/var/bill
├── mbsql
│   ├── production
│   │   ├── config
│   │   │   └── config.xml
│   │   ├── install_update.sh
│   │   ├── logs
│   │   │   └── update.log
│   │   ├── mbsql.current.checksum
│   │   ├── mbsql.downloaded.checksum
│   │   ├── mbsql_update.sh
│   │   └── sqlupd
│   │       ├── db
│   │       │   └── deltas
│   │       │       ├── 100-2.9.3.sql
│   │       │       ├─ ...
│   │       │       └── 99-2.9.2.sql
│   │       ├── deploy
│   │       │   ├── build.properties
│   │       │   ├── build.xml
│   │       │   └── scripts
│   │       │       ├── deploy-201809131739.sql
│   │       │       └── undo-201809131739.sql
│   │       ├── library
│   │       └── public
│   └── testing
│       ├── config
│       │   └── config.xml
│       ├── install_update.sh
│       ├── logs
│       │   └── update.log
│       ├── mbsql.current.checksum
│       ├── mbsql.downloaded.checksum
│       ├── mbsql_testing.sh
│       └── sqlupd
│           ├── db
│           │   └── deltas
│           │       ├── 100-2.9.3.sql
│           │       ├─ ...
│           │       └── 99-2.9.2.sql
│           ├── deploy
│           │   ├── build.properties
│           │   ├── build.xml
│           │   └── scripts
│           │       ├── deploy-201809131739.sql
│           │       └── undo-201809131739.sql
│           ├── library
│           └── public
├── logs
│   ├── mbsql
│   │   └── update.log

Описание директорий и файлов

файл/директория

описание

/var/bill

домашняя директория биллинга

/var/bill/mbsql

домашняя директория модуля

/var/bill/mbsql/production

production версия модуля

/var/bill/mbsql/testing

testing версия модуля

<version>/logs

директория логов (подключена из /var/bill/logs/mbsql)

<version>/sqlupd

директория с файлами обновления базы

<version>/config/config.xml

файл конфига модуля

<version>/install_update.sh

установщик изменений базы

<version>/mbsql_update.sh

загрузщик обновлений базы

<version>/mbsql.current.checksum

файл с md5 суммой текущей версии обновлений

<version>/mbsql.downloaded.checksum

файл с md5 суммой загруженной версии обновлений

Файл конфигурации

Файл расположен по пути /var/bill/mbsql/<version>/config/config.xml

<config>
  <parameters>
    <mysql>
      <host>DATABASE_IP</host>
      <username>DATABASE_USER</username>
      <password>DATABASE_PASSWORD</password>
      <dbname>DATABASE_NAME</dbname>
    </mysql>
  </parameters>
</config>

параметр

описание

host

IP адрес базы данных

username

имя пользователя для подключения к базе данных

password

пароль пользователя

dbname

название базы данных биллинга

Загрузщик обновлений базы

Варианты запуска файла /var/bill/mbsql/<version>/mbsql_update.sh

Ключ

Описание

Обычный запуск без параметров, скачает последнюю доступную версию обновления

-f

Режим принудительного повторного обновления (игнорирует md5 проверку)

-t

Произвести загрузку testing версии обновления

Задания cron

  • Файл с заданиями модуля расположен по пути /etc/cron.d/mbsql и содержит задания

    • запуск обновления production версии модуля

# For details see man 4 crontabs

# Example of job definition:
# .---------------- minute (0 - 59)
# |  .------------- hour (0 - 23)
# |  |  .---------- day of month (1 - 31)
# |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
# |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# |  |  |  |  |
# *  *  *  *  * user-name  command to be executed

# update
05 6 * * * root /var/bill/mbsql/production/mbsql_update.sh

При возникновении проблем, сообщите о них в нашем CRM или Telegram канале.