Поставил MsSQL Server 2005. Конечная задача - сделать веб-приложение с его использованием. Когда запускаю "Managment Studio Express" то соединение проходит на ура (вдруг важно - использую авторизацию SQL Server, пользователь sa). Но при попытке соединения другими программами (например MSSQL Maestro или просто mssql_connect) всегда одна и та же ошибка - нет соединения. Первое что пришло в голову это ограничения безопасности. Тут же залез в "Средства настройки"->"Настройки контактной зоны SQL Server 2005"->"Настройки контактной зоны для служб и соединений". Выбрал "Database Engine"->"Удалённые соединения" и включил там 2 пункта - "Локальные и удалённые соединения" и "Использовать TCP/IP и именованные каналы". Не помогло, всё та же ошибка. Затем полез в гугл искать решения. Чего только не нашёл. Пойду по порядку. В PHP как только не писал: mssql_connect("localhost","sa","123"); mssql_connect("COMP\SQLEXPRESS","sa","123"); mssql_connect("COMP\SQLEXPRESS,1433","sa","123"); mssql_connect("192.168.244.1","sa","123"); всё равно не работает. Телнет на порт 1433 тоже не пашет, нет этого порта и в netstat`e. На одном из форумов я увидел пример записи в логах где SQL Server сообщал о том что он успешно запустился и привязался к порту 1433. У себя я такого не нашёл, не нашёл и ошибок типа "socket bind field". Зато нашёл следующую строку: Если я всё правильно понимаю то здесь сообщается что сервер стал доступен на любом IP, порт 1031. Телнет на этот порт работает, но соединение, например так: mssql_connect("127.0.0.1,1031","sa","123"); или так mssql_connect("COMP\SQLEXPRESS,1031","sa","123"); не канает. Дальнейшие пытки гугла дали информацию о существовании утилиты cliconfig.exe, с помощью которой можно настроить порт сервера. Запустив его я обнаружил что все протоколы и типы доступа находятся в выключенном состоянии. Я выделил "TCP/IP" и "Именнованые каналы" и нажал "Включить". Они перенеслись в список включенных. Опять соединения нет. Решил я с помощью этой же программы поменять порт с 1031 на стандартный. Но зайдя в свойства TCP/IP-соединений я обнаружил что порт стоит = 1433. Подскажите пожалуйста, что же нужно сделать что бы соединение у PHP с MsSQL прошло нормально? Я уже не знаю что делать, весь вечер промучался.
вот что товарищ по этому поводу отписал 1) На сервере в утилите cliconfg.exe включил протоколы по порядку Именованные каналы TCP/IP Multiprotocol Потом там же создал 2 псевдонима на TCP/IP и Именнованные каналы 2)В SQL SERVER Configuration Manager в разделе Protocols for MSSQLSERVER включил Named Pipes 3)В SQL SERVER Configuration Manager в разделе Client protocols также включил Named Pipes 4)В папку С:/windows/ скопировал ntwdblib.dll 5)В папку С:/windows/system32/ скопировал ntwdblib.dll 6)Перезапустил сервис MSSQLSERVER на самом сервере SQL запустите SQL Server Surface Area Configuration (в меню) и разреши удаленные подключения..