PDO dblib не может соединиться с IP-адресом как «хост» параметр

Я пытаюсь подключиться к базе данных mssql с помощью dblib, используя IP-адрес сервера в качестве хоста в DSN.

С tsql это работает без проблем

$ tsql -S 192.168.56.101 -U. \ user -P user

но в PHP это не работает.

$ pdo = новый PDO («dblib: host = 192.168.56.101,1433; dbname = OtherC», ‘. \ user’, ‘user’);

Я получаю ошибку:
Ошибка: SQLSTATE [01002] Ошибка подключения к адаптивному серверу (уровень серьезности 9)

0

Решение

Проверьте это:

  1. разделитель портов «,» в Windows и «:» в Linux / Mac
  2. Я никогда не видел имя пользователя как «. \ User», но «пользователь»
  3. найдите freetds.conf на вашем диске. Возможно, он существует в нескольких местах, и tsql использует один, в то время как PHP использовал другой. Лучше всего объединить их в один общий файл и протестировать его. Обратите внимание, что общим местом для этого файла является ~ / .freetds.conf рядом с / etc / или / usr / local / etc /
  4. в вашем файле freetds.conf должен быть раздел [global]. Поместите туда эти строки:

    версия tds = 8.0

    размер текста = 20971520

    кодировка клиента = UTF-8

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]