VIDEOCHAT  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

Проблема новичка. MariaDB+Asterisk

Новичком считается только что прочитавший «Астериск - будущее телефонии»
http://asterisk.ru/knowledgebase/books
и пытающийся сделать большее

Модераторы: april22, Zavr2008

Ответить
vitafon007
Сообщения: 15
Зарегистрирован: 20 ноя 2018, 21:37

Проблема новичка. MariaDB+Asterisk

Сообщение vitafon007 »

Всем хорошего настроения! Начал изучение АТС, больше для интереса, столкнулся с проблемой.
шел по инструкции https://mneustroev.blogspot.com/2017/10 ... -odbc.html

что я имею на данный момент:
Debian 9, Asterisk 15, MariaDB 10.1 (поставилась при попытке установки mysql)
для удобства стоит phpmyadmin и для БД asterisk создан пользователь user1 и пароль 1234
а также для удобства передачи файлов есть samba, которая настроена на папку /mnt и папку конфигов астериска(что делать нельзя, я знаю, но этот пк не имеет доступа в инет и это для тестов)

скачал mariadb-connector-odbc-2.0.15-ga-debian-x86_64.tar.gz, распаковал на своем основном пк
файл libmaodbc.so через самбу скинул в папку /mnt потом с помощью rm перенес в /usr/lib/x86_64-linux-gnu/odbc/libmaodbc.so

выполним ldd /usr/lib/x86_64-linux-gnu/odbc/libmaodbc.so

Код: Выделить всё

        linux-vdso.so.1 (0x00007fff610d6000)
        libodbcinst.so.2 => /usr/lib/x86_64-linux-gnu/libodbcinst.so.2 (0x00007f29a08f0000)
        libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f29a05ec000)
        libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f29a024d000)
        libltdl.so.7 => /usr/lib/x86_64-linux-gnu/libltdl.so.7 (0x00007f29a0043000)
        libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f299fe26000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f29a0dad000)
        libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f299fc22000)
настроем odbinst

Код: Выделить всё

[MariaDB]
Description=ODBC for MariaDB
Driver=/usr/lib/x86_64-linux-gnu/odbc/libmaodbc.so
Setup=/usr/lib/x86_64-linux-gnu/odbc/libmaodbcS.so
FileUsage=1
выполним odbcinst -i -d -f /usr/local/etc/odbcinst.ini

Код: Выделить всё

    odbcinst: Driver installed. Usage count increased to 1.
    Target directory is /etc
выполним odbcinst -q -d

Код: Выделить всё

[MariaDB]
настроем obdc.ini

Код: Выделить всё

[Maria-Asterisk]
Description=Maria-Asterisk database
Driver=MariaDB
SERVER = 127.0.0.1
USER=user1
PASSWORD=1234
DATABASE=asterisk
PORT=3306
Socket=/var/run/mysqld/mysqld.sock
а теперь самое главное... выполним isql Maria-Asterisk -v

Код: Выделить всё

[IM002][unixODBC][Driver Manager]Data source name not found, and no default driver specified
[ISQL]ERROR: Could not SQLConnect
второй день пытаюсь решить при помощи гугла и своих сил, но я сдаюсь, прошу помощи у более опытных людей. спасибо взаранее
murr
Сообщения: 127
Зарегистрирован: 04 июл 2013, 16:55

Re: Проблема новичка. MariaDB+Asterisk

Сообщение murr »

isql Maria-Asterisk -v
Добавь логин и пароль

Код: Выделить всё

isql Maria-Asterisk login password
vitafon007
Сообщения: 15
Зарегистрирован: 20 ноя 2018, 21:37

Re: Проблема новичка. MariaDB+Asterisk

Сообщение vitafon007 »

Добавь логин и пароль
isql Maria-Asterisk login password
попробовал, не помогло, к сожалению ответ тот же самый

удалил драйвер odbcinst -u -d -n MariaDB
ради интереса выполнил запрос, ответ не изменился, сижу, смотрю может где опечатался, но ничего не могу найти подобного
Vlad1983
Сообщения: 4251
Зарегистрирован: 09 авг 2011, 11:51

Re: Проблема новичка. MariaDB+Asterisk

Сообщение Vlad1983 »

скорей всего проблема в этой строке odbcinst.ini

Код: Выделить всё

Setup=/usr/lib/x86_64-linux-gnu/odbc/libmaodbcS.so
попробуйте заменить на

Код: Выделить всё

Setup=/usr/lib/x86_64-linux-gnu/odbc/libodbcmyS.so
ЛС: @rostel
vitafon007
Сообщения: 15
Зарегистрирован: 20 ноя 2018, 21:37

Re: Проблема новичка. MariaDB+Asterisk

Сообщение vitafon007 »

Vlad1983 писал(а):попробуйте заменить
удалил старый драйвер, заменил, перепроверил адрес
установил, сделал reboot, но isql выдаёт тоже самое

Существует ли возможность найти логи на какой именно файл он ругается?

Update:

РЕШЕНО.
Какими-то танцами с бубном вышел из сложного положения.

редактируем файл /usr/local/etc/odbcinst.ini

Код: Выделить всё

[Default]
Driver = /usr/lib/x86_64-linux-gnu/odbc/libmaodbc.so

[MariaDB]
Description = ODBC for MariaDB
Driver = /usr/lib/x86_64-linux-gnu/odbc/libmaodbc.so
Setup = /usr/lib/x86_64-linux-gnu/odbc/libodbcmyS.so
FileUsage = 1
редактируем файл /usr/local/etc/odbc.ini

Код: Выделить всё

[Maria-Asterisk]
Driver = MariaDB 
Description = Maria-Asterisk database 
Trace = Yes 
TraceFile = /tmp/odbc.log 
Server = localhost 
Port = 3306 
Database = asterisk 
UserName = ЛОГИН
Password = ПАРОЛЬ
Option = 3
Socket =/var/run/mysqld/mysqld.sock
далее выполняем команды:

Код: Выделить всё

odbcinst -i -d -f /usr/local/etc/odbcinst.ini
odbcinst -i -s -l -f /usr/local/etc/odbc.ini
вся соль в том что второй файл тоже нужно устанавливать, а никто про это не пишет, и для того чтобы не было ошибки необходимо дописать default driver
всем огромное спасибо, я пошел дальше танцевать)
Аватара пользователя
Zavr2008
Сообщения: 2215
Зарегистрирован: 27 янв 2011, 00:35
Контактная информация:

Re: Проблема новичка. MariaDB+Asterisk

Сообщение Zavr2008 »

Тоже тут как-то мучился с этим ODBC. Каждый это должен пройти..
Российские E1 шлюзы Alvis. Модернизация УПАТС с E1,Подключение к ИС "Антифрод" E1 PRI/SS#7 УВР Телестор, Грифин и др..
bestann
Сообщения: 38
Зарегистрирован: 13 янв 2012, 01:03

Re: Проблема новичка. MariaDB+Asterisk

Сообщение bestann »

Согласна с Zavr. Точно работает с родным драйвером последним и MariaDB последней. И unixODBC тоже свежий из исходников. CentOS 7. Плюс настройке на полный utf8, чтоб не было глюков с крякозябрами в базе. Писала на github по cdr viewer mod.
Я потратила как минимум 3 недели на устранение крякозябрами и настройку odbc, но не все подряд, решение по кодировке, т.к. бд не знаю, искала долго. Думала вообще не заработает. Сначала вообще Астериск вылетал.
Ответить
© 2008 — 2025 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH