Подключение к SQL-базе данных через Lua-скрипт *(ODBC)
Всем привет! Есть простой скрипт на LUA, с помощью которого по инструкции: https://freeswitch.org/confluence/display/FREESWITCH/Lua+API+Reference#LuaAPIReference-freeswitch.Dbh пытаюсь подключиться к существующей SQL-базе данных.
local dbh = freeswitch.Dbh("odbc://ИМЯ_БАЗЫ:ПОЛЬЗОВАТЕЛЬ:ПАРОЛЬ")
assert(dbh:connected())
ОС Windows Server 2019 Standart. Запускаю данный скрипт через FreeSwitch командой:
luarun db_external_test.lua
Получаю сообщение о ошибке подключения: [Microsoft][─ИРяЕЄўЕР ДРАЙВЕРОВ ODBC] ╚РЄОўНИъ ДАННЫї НЕ НАЙДЕН И НЕ єъАчАН ДРАЙВЕР, ИРяОы№чєЕьЫЙ яО єьОыўАНИ■ Перевод: [ERR] switch_odbc.c:368 STATE: IM002 CODE 0 ERROR: [Microsoft][Диспетчер драйверов ODBC] Источник данных не найден и не указан драйвер, используемый по умолчанию') [CRIT] switch_core_sqldb.c:508 Failure to connect to ODBC ИМЯ_БАЗЫ! [ERR] freeswitch_lua.cpp:374 Connection failed. DBH NOT Connected.
Предположил, что не настроил ODBC на сервере. Что сделал:
Установил Microsoft® ODBC Driver 13 for SQL Server: https://www.microsoft.com/ru-ru/download/details.aspx?id=50420
Настроил "Источники данных ODBC (64-разрядная версия)" в разделе "Администрирование" на сервере.
К сожалению, после всех этих манипуляция сообщение о ошибке при попытке запуска скрипта всё равно сохранилось, что ещё я не донастроил? )
Ответы (1 шт):
Решение в моём случае: при настройке "Источники данных ODBC (64-разрядная версия)" на самом первом шаге указал неверное имя сервера. Нужно указывать имя того, к которому подключаешься. Всем спасибо за ментальную поддержку )
