DBWriter
Материал из М-200 WIKI
DBWriter - программа выполняющая запись тарификационных данных в базу данных Mysql, в on-line режиме. Для работы программы нужен настроенный Callbuilder. DBWriter читает строки тарификации c tcp-порта Callbuilderа. Строки должны поступать в формате Тариф 2004
Перед сборкой, кроме стандартных библиотек входящих по умолчанию в большинство дистрибутивов Linux, нужно установить библиотеку libmysql++-dev 3.0.0-1. В вашем дистрибутиве Linux версия библиотеки может отличаться.
Сборка:
- распаковать архив dbwriter.tar.gz
- перейти в каталог с исходными кодом программы
- Выполнить команду make
Перед запуском программы должен быть установлен и настроен Mysql сервер, и создана база данных и таблица со следующей структурой:
CREATE DATABASE IF NOT EXISTS lab_db; USE lab_db; CREATE TABLE `lab_db`.`kungur` ( `id` double NOT NULL auto_increment, `numer_a` char(10) character set utf8 default NULL, `aon_a` char(20) character set utf8 default NULL, `soed` char(10) character set utf8 default NULL, `numer_b` char(20) character set utf8 default NULL, `date` char(9) character set utf8 default NULL, `time` char(9) character set utf8 default NULL, `prodol` char(10) character set utf8 default NULL, `prichina` char(3) character set utf8 default NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
Имя базы и таблицы можно менять, а вот название полей и структуру базы данных менять не следует.
Настройка DBWriter осуществляется с помощью командной строки в следующем формате:
dbwriter -ipcall <ip адрес> -portcall <tcp-port> - dbhost <ip адрес БД> -dbname <имя базы данных> -dbuser <пользователь БД> -dbpass <пароль к БД> -dbtable <имя таблицы БД> -d <режим демона>
Например :
/usr/local/bin/dbwriter -ipcall 127.0.0.1 -portcall 10003 -dbhost 127.0.0.1 -dbname lab_db -dbuser root -dbpass lab -dbtable tarif -d
Описание параметров комендной строки :
- -ipcall - ip адрес серверной части Callbuilder на которую выводятся тарификационные данные.
Если Callbuilder находится на этом же сервере, ip адрес должен быть 127.0.0.1 (не в коем случае не localhost)
- -portcall - tcp-порт серверной части Callbuilder на которую выводятся тарификационные данные
- -dbhost - ip адрес сервера базы данныx MYSQL
Если Mysql-сервер находится на этом же сервере ip адрес должен быть 127.0.0.1 (не в коем случае не localhost)
- -dbname - имя базы данных
- -dbuser - пользователь базы данных
- -dbpass - пароль для доступа к базе данных
- -dbtable - имя таблицы базы данных
- -d - режим демона (при указанном параметре стандартные вывод отключен)
порядок следования параметров не важен.
