# psql -h 127.0.0.1 -U asterisk Password:
Welcome to psql 7.4.16, the PostgreSQL interactive terminal.
Type: copyright for distribution terms h for help with SQL commands ? for help on internal slash commands g or terminate with semicolon to execute query q to quit
asterisk=>
Повторно проверьте свою конфигурацию, как было показано ранее, если получена следующая ошибка, которая свидетельствует о том, что соединение через TCP/IP не разрешено:
psql: could not connect to server: Connection refused
Is the server running on host '127.0.0.1' and accepting TCP/IP connections on port 5432?
(psql: невозможно установить соединение с сервером: В соединении отказано
Сервер работает на хосте '127.0.0.1' и принимает TCP/IP-соедине- ния через порт 5432?)
Установка и конфигурация ODBC
ODBC-коннектор - это уровень обобщения баз данных, который делает возможным взаимодействие Asterisk с разнообразными СУБД без необходимости создания специального коннектора для каждой отдельно взятой базы данных, которую должна поддерживать Asterisk. Это устраняет необходимость в затратах усилий на разработку и обслуживание кода. Имеется некоторое негативное влияние на производительность, потому что между Asterisk и базой данных вводится дополнительный уровень приложений, однако его можно смягчить надлежащим проектированием, и это стоит выполнить, если необходимо обеспечить мощную и гибкую функциональность баз данных в системе Asterisk.
Прежде чем устанавливать коннектор в Asterisk, необходимо установить ODBC в самой Linux. Чтобы установить драйверы ODBC, просто выполним следующую команду:
# yum install -y unixODBC unixODBC-devel libtool-ltdl libtool-ltdl-devel
В главе 3 можно найти таблицу с пакетами, которые должны быть установлены.
Необходимо установить пакет unixODBC-devel, потому что Asterisk использует его для создания модулей ODBC, которые будут применяться в данной главе.
Убедитесь в наличии сконфигурированного ODBC-драйвера PostgreSQL в файле /etc/odbcinst.ini. Он должен выглядеть примерно так:
[PostgreSQL]
Description = ODBC for PostgreSQL Driver = /usr/lib/libodbcpsql.so
Setup = /usr/lib/libodbcpsqlS.so
FileUsage = 1
Убедитесь, что система видит драйвер, выполнив приведенную ниже команду. Если все хорошо, она должна возвратить имя метки используемой СУБД PostgreSQL. # odbcinst -q -d
[PostgreSQL]
Далее сконфигурируем файл /etc/odbc.ini, используемый для создания коннектора, который Asterisk будет применять для ссылки на эту конфигурацию. Если когда-то в будущем понадобится изменить базу данных или что-то еще, просто надо будет внести изменения в этот файл, не меняя ссылок в Asterisk[112].
[asterisk-connector][asterisk-connector] | |
Description = | PostgreSQL connection to 'asterisk' database |
Driver = | PostgreSQL |
Database = | asterisk |
Servername = | localhost |
UserName = | asterisk |
Password = | welcome |
Port = | 5432 |
Protocol = | 7.4 |
ReadOnly = | No |
RowVersioning = | No |
ShowSystemTables = | No |
ShowOidColumn = | No |
FakeOidIndex = | No |
ConnSettings = |