У меня есть приложение C ++, которое используется для чтения данных с сервера Firebird SQL.
когда я изменил порт с 3050 на 3053, он показывает ошибку, как
DB Error : 0 : Unable to complete network request to host "192.168.1.47".
Failed to establish a connection.
unknown Win32 error 10060
Invalid connection string attribute
Conf файл изменен как
# Type: string, integer
#
RemoteServiceName = gds_db
RemoteServicePort = 3053
Fb строка подключения
Driver=Firebird/InterBase(r) driver;DBNAME=192.168.1.47:CWNPFB;PORT=3053;UID=SYSDBA;PWD=********
Есть ли какие-либо изменения, необходимые для решения этой проблемы? Приложение может читать данные, если порт 3050.
Проблема в вашей строке подключения:
Вам нужно
PORT=3053
из строки подключения (это вызывает «Неверный атрибут строки подключения» сообщение)DBNAME=192.168.1.47:CWNPFB
в DBNAME=192.168.1.47/3053:CWNPFB
(указать правильный порт)Вы также можете закомментировать (или удалить) строку RemoteServiceName = gds_db
потому что вы сейчас инструктируете Firebird слушать gds_db
(== порт 3050) и порт 3053. Я полагаю, что обычно он прослушивает последний, настроенный в файле конфигурации, но я не уверен, что это всегда так.
Правильно ли настроен брандмауэр для порта 3053? Другой сервис может работать на этом специальном порту.
Вы могли бы сделать следующие шаги.
Попробуйте запустить приложение на сервере базы данных, измените IP-адрес на 127.0.0.1 или localhost.
Если шаг (1) работает: проверьте брандмауэр
Если шаг (1) не работает: возможно, попробуйте другой порт, проверьте, работает ли Firebird