powered by simpleCommunicator - 2.0.50     © 2025 Programmizd 02
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Подключение к MS SQL Server 2005 из PHP7.2 на Ubuntu Server 18
25 сообщений из 27, страница 1 из 2
Подключение к MS SQL Server 2005 из PHP7.2 на Ubuntu Server 18
    #39766401
IvanC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте, формучане! Долго бился я над своей проблемой, но, может, от недостатка опыта, решил написать сюда. Имеется сервер на Ubuntu Server 18, apache2 + php 7.2 и MS SQL сервер на Windows Server 2003, мне нужно подключаться к этому серверу из php-скрипта. При соединении через консоль Ubuntu:
Код: sql
1.
sqlcmd -S Server\Server -U sa -P sa

получаю ответ:
Код: powershell
1.
2.
3.
Sqlcmd: Error: Microsoft ODBC Driver 17 for SQL Server : Login timeout expired.
Sqlcmd: Error: Microsoft ODBC Driver 17 for SQL Server : TCP Provider: Error code 0x2AFA.
Sqlcmd: Error: Microsoft ODBC Driver 17 for SQL Server : A network-related or instance-specific error has occurred while establishing a connection to SQL Server. Server is not found or not accessible. Check if instance name is correct and if SQL Server is configured to allow remote connections. For more information see SQL Server Books Online..

. Сам сервер доступен, пингуется, пробовал telnet'ом подключаться к порту 1433, пишет: Connection refused, к 80 порту того же сервера соединяется.
Необходимые драйверы на PHP я установил:
Код: html
1.
2.
3.
4.
<h2><a name="module_sqlsrv">sqlsrv</a></h2><table>
<tbody><tr class="h"><th>sqlsrv support</th><th>enabled</th></tr>
<tr><td class="e">ExtensionVer </td><td class="v">5.3.0 </td></tr>
</tbody></table>

, но почему-то не подгружается PDO_sqlsrv. Нужен ли он в данном случае? TCPDUMP показывает обмен данными с сервером, с других клиентов на Windows к серверу подключаюсь без проблем.
...
Рейтинг: 0 / 0
Подключение к MS SQL Server 2005 из PHP7.2 на Ubuntu Server 18
    #39766404
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IvanC,

если refused, сделайте так, чтобы не был refused.
...
Рейтинг: 0 / 0
Подключение к MS SQL Server 2005 из PHP7.2 на Ubuntu Server 18
    #39766407
IvanC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
у меня отключены все средства ограничения доступа: нет антивируса, отключен брендмауэр. При этом все остальные клиенты работают с данным сервером.
...
Рейтинг: 0 / 0
Подключение к MS SQL Server 2005 из PHP7.2 на Ubuntu Server 18
    #39766411
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IvanC,

Код: sql
1.
xp_readerrorlog 0, 1, N'Server is listening on' 
...
Рейтинг: 0 / 0
Подключение к MS SQL Server 2005 из PHP7.2 на Ubuntu Server 18
    #39766422
IvanC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Server is listening on [ 'any' <ipv4> 1093]. Этот порт тоже пробовал, но получаю ту же ошибку. Я правильно указываю:
Код: powershell
1.
sqlcmd -S Server\Server,1093 -U sa -P sa

?
...
Рейтинг: 0 / 0
Подключение к MS SQL Server 2005 из PHP7.2 на Ubuntu Server 18
    #39766435
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Подключение к MS SQL Server 2005 из PHP7.2 на Ubuntu Server 18
    #39766440
IvanC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я это делал, ставил постоянный порт, но результат тот же. Да и по динамическому порту я б смог тогда подключиться
...
Рейтинг: 0 / 0
Подключение к MS SQL Server 2005 из PHP7.2 на Ubuntu Server 18
    #39766472
IvanC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добавлю еще 5 копеек. По всей видимости, сервер надо писать в кавычках:
Код: powershell
1.
sqlcmd -S "Server\Server,1093" -U sa -P sa


В данном случае получаю следующее:
Код: powershell
1.
2.
Sqlcmd: Error: Microsoft ODBC Driver 17 for SQL Server : TCP Provider: Error code 0x2746.
Sqlcmd: Error: Microsoft ODBC Driver 17 for SQL Server : Client unable to establish connection.
...
Рейтинг: 0 / 0
Подключение к MS SQL Server 2005 из PHP7.2 на Ubuntu Server 18
    #39766497
invm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
sqlcmd -S Server,1093 -U sa -P sa

?
...
Рейтинг: 0 / 0
Подключение к MS SQL Server 2005 из PHP7.2 на Ubuntu Server 18
    #39766501
IvanC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: powershell
1.
2.
Sqlcmd: Error: Microsoft ODBC Driver 17 for SQL Server : TCP Provider: Error code 0x2746.
Sqlcmd: Error: Microsoft ODBC Driver 17 for SQL Server : Client unable to establish connection.
...
Рейтинг: 0 / 0
Подключение к MS SQL Server 2005 из PHP7.2 на Ubuntu Server 18
    #39766507
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IvanC,

ну а телнет на 1093?
...
Рейтинг: 0 / 0
Подключение к MS SQL Server 2005 из PHP7.2 на Ubuntu Server 18
    #39766509
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну и вообще что в логах sql
...
Рейтинг: 0 / 0
Подключение к MS SQL Server 2005 из PHP7.2 на Ubuntu Server 18
    #39766522
IvanC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: powershell
1.
2.
Trying 192.168.1.1...
Connected to Server.


А в логах SQL ничего не нашел про то, что кто-то пытается подключиться...
...
Рейтинг: 0 / 0
Подключение к MS SQL Server 2005 из PHP7.2 на Ubuntu Server 18
    #39766562
Дормедонт Евлампиевич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cat 20-pdo-sqlsrv.ini

; configuration for php mssql
; priority=20
extension=sqlsrv.so
extension=pdo_sqlsrv.so


Порядок важен...
...
Рейтинг: 0 / 0
Подключение к MS SQL Server 2005 из PHP7.2 на Ubuntu Server 18
    #39766740
IvanC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нет этого файла у меня ( буду завтра переустанавливать значит драйвер...
...
Рейтинг: 0 / 0
Подключение к MS SQL Server 2005 из PHP7.2 на Ubuntu Server 18
    #39766955
IvanC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Продолжаю вчерашнюю тему, нашел я файл 30-pdo_sqlsrv.ini, скопировал его в папки apache2/conf.d, fpm/conf.d, cli/conf.d, в итоге в phpinfo у меня появилась
Код: powershell
1.
PDO drivers 	pgsql, sqlsrv 

, но php жалуется:
Код: powershell
1.
PHP Warning:  PHP Startup: Unable to load dynamic library 'pdo_sqlsrv' (tried: /usr/lib/php/20170718/pdo_sqlsrv (/usr/lib/php/20170718/pdo_sqlsrv: cannot open shared object file: No such file or directory), /usr/lib/php/20170718/pdo_sqlsrv.so (/usr/lib/php/20170718/pdo_sqlsrv.so: undefined symbol: php_pdo_register_driver)) in Unknown on line 0


хотя файл там есть. Соединение все так же не устанавливается
Код: powershell
1.
2.
Sqlcmd: Error: Microsoft ODBC Driver 17 for SQL Server : TCP Provider: Error code 0x2746.
Sqlcmd: Error: Microsoft ODBC Driver 17 for SQL Server : Client unable to establish connection.


но через командную строку SQL сервера все замечательно работает с той же строкой подключения. В чем может быть причина? Уже голову сломал. Спасибо.
...
Рейтинг: 0 / 0
Подключение к MS SQL Server 2005 из PHP7.2 на Ubuntu Server 18
    #39766961
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IvanC,

Ну теперь ищите как настроить ODBC в ubuntu
...
Рейтинг: 0 / 0
Подключение к MS SQL Server 2005 из PHP7.2 на Ubuntu Server 18
    #39766972
IvanC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо, я, конечно, сделал через FreeTDS, но до сих пор совесть мучает, почему так и не разобрался с Microsoft ODBC Driver 17 for SQL Server. Ну ладно, не судьба уже. Спасибо всем, кто откликнулся!
...
Рейтинг: 0 / 0
Подключение к MS SQL Server 2005 из PHP7.2 на Ubuntu Server 18
    #39767041
WarAnt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IvanC,

сиквел какой, экспресс? если да то включай работу по TCP, в экспере она по умолчанию отрублена.
...
Рейтинг: 0 / 0
Подключение к MS SQL Server 2005 из PHP7.2 на Ubuntu Server 18
    #39767384
IvanC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нет, MS SQL Server 2005, TCP включена, что подтверждает работа sqlcmd на сервере. Сегодня через odbc работал, какой-то он кривой... odbc_num_rows возвращает -1, хотя записи там точно есть. Буду курить дальше pdo driver
...
Рейтинг: 0 / 0
Подключение к MS SQL Server 2005 из PHP7.2 на Ubuntu Server 18
    #39767404
IvanC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Отвечу, скорее всего сам. По всей видимости, драйвер устанавливает соединение через TLS 1.2, что сервер не поддерживает. Отсюда и ошибки... Возможно ли отключить необходимость использования этого протокола?
...
Рейтинг: 0 / 0
Подключение к MS SQL Server 2005 из PHP7.2 на Ubuntu Server 18
    #39767407
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IvanCОтвечу, скорее всего сам. По всей видимости, драйвер устанавливает соединение через TLS 1.2, что сервер не поддерживает. Отсюда и ошибки... Возможно ли отключить необходимость использования этого протокола?
https://support.microsoft.com/en-hk/help/3135244/tls-1-2-support-for-microsoft-sql-server
...
Рейтинг: 0 / 0
Подключение к MS SQL Server 2005 из PHP7.2 на Ubuntu Server 18
    #39767410
IvanC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Там статья про сервер, у меня MS Server 2003, поэтому про поддержку TLS 1.2 можно забыть, но вот на стороне самого драйвера возможно ли отключение этого протокола и использование более старой версии?
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Подключение к MS SQL Server 2005 из PHP7.2 на Ubuntu Server 18
    #40101179
f50
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Друзья, подскажите что не так делаю.. ставлю FreeTDS... Ubuntu 20.04. Еще не коннектюсь к серверу, только проверяю, есть ли новая библиотека в php_info...

sudo apt-get install unixodbc unixodbc-dev freetds-dev freetds-bin freetds-common tdsodbc
  • Версия видна в консоли: tsql -C (Version: freetds v1.1.6)
    • прописал все конфиги какие возможны... редактировал php.ini (путь к ini в php_info взял)
    • Перезапустил php и apache
    • в консоли выполняю команду php -m , нет модуля с MSSQL (((
    • на http://myserver/ вывожу результат команды php_info, но так же нет секции с mssql...
    ...
    Рейтинг: 0 / 0
    Подключение к MS SQL Server 2005 из PHP7.2 на Ubuntu Server 18
        #40101200
    f50
    Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
    Участник
    забыл ещё написать, из консоли коннектюсь нормально
    Код: powershell
    1.
    tsql -LH MyServer
    


    Код: plaintext
    1.
    2.
    3.
    4.
         ServerName MyServer
       InstanceName MSSQLSERVER
        IsClustered No
            Version 9.00.5000.00
                tcp 1433
    все ок!!!
    Код: powershell
    1.
    tsql -S MyServer -U testuser -P 1234qwer1234
    


    Код: plaintext
    1.
    2.
    3.
    locale is "en_US.UTF-8"
    locale charset is "UTF-8"
    using default charset "UTF-8"
    >
    все ок!!!

    только PHP не видит / не дружит / не подхватывает MSSQL / FreeTDS (((
    как правильно написать extension в php.ini ? не могу нагуглить... вот мой кусок кода из php.ini
    Код: plaintext
    1.
    2.
    3.
    4.
    5.
    6.
    7.
    8.
    ;extension=soap
    ;extension=sockets
    ;extension=sodium
    ;extension=sqlite3
    ;extension=tidy
    ;extension=xmlrpc
    ;extension=xsl
    extension=mssql
    
    не правильно объявил mssql? (((
    ...
    Рейтинг: 0 / 0
    25 сообщений из 27, страница 1 из 2
    Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Подключение к MS SQL Server 2005 из PHP7.2 на Ubuntu Server 18
    Целевая тема:
    Создать новую тему:
    Автор:
    Закрыть
    Цитировать
    Найденые пользователи ...
    Разблокировать пользователей ...
    Читали форум (0):
    Пользователи онлайн (0):
    x
    x
    Закрыть


    Просмотр
    0 / 0
    Close
    Debug Console [Select Text]