2011-12-29 3 views
1

Я пытаюсь настроить сервер тестирования разработки, Windows 2008 Server с IIS и SQL Server 2008 Express. IIS и классический ASP (да, поддерживающие антикварные проекты) отлично работают, включая подключение к удаленным серверам SQL Server 2008 через SQLOLEDB.Подключиться к локальному экземпляру SQL Server Express 2008 из классического ASP, используя SQLOLEDB

Однако я не могу подключиться к локальному экземпляру SQL Server 2008 Express. Он устанавливается как экземпляр (то есть PC-NAME\SQLEXPRESS), а авторизация user/pwd включена. Я могу успешно создать запись ODBC, поэтому сервер работает нормально. Проблема заключается в том, что IIS-ASP-SQLOLEDB видит сервер и подключается к нему.

Простая строка подключения, которая работает на любом удаленном SQL Server серверов 2008, терпит неудачу на моем локальном сервере экспресс:

Provider=SQLOLEDB;Data Source=.\SQLEXPRESS;User ID=userName;Password=_pwd_;Database=DbName 

Ошибки я получаю

SQL Server не существует или доступ отказано.

Журнал ошибок сервера не содержит никаких следов неудачной попытки входа в систему, так что я предполагаю, что есть некоторая проблема разрешения источника данных (из-за имени экземпляра?), Или сервер каким-то недоступным (протокол безопасности настройки?) из процесса IIS.

+0

Это может помочь http://www.connectionstrings.com/sql-server-2008 – Dee

+0

В Inetpub/wwwroot/uraspapp вы предоставили разрешение на сетевое обслуживание? В студиях управления Sql вы можете войти на сервер sql с именем пользователя и паролем? Может быть, вы должны указать полное имя базы данных в своей строке подключения (Data Source = PC-NAME \ SQLEXPRESS;) –

+0

demo.b: Я не уверен, где я должен предоставить разрешение на сетевую услугу. Однако это приложение подключается к удаленным серверам SQL 2008 (полный, не экспресс) без проблем. Да, я могу войти в SSMS, используя user/pwd. – Passiday

ответ

0

В экспресс-редакции SQL Server 2008 он работает с динамическими портами. Решение - это просто перейти к свойствам TCP/IP и в TCP-порту просто предоставить любой порт, который вы хотите, чтобы ваш SQL Server прослушивал.

strConn = "Provider=SQLOLEDB; Network Library=DBMSSOCN; Data Source=.\SQLEXPRESS;  Connection Timeout=15;Packet Size=4096; Initial Catalog=DbName; User ID=userName; Password=_pwd_;" 

Можете ли вы опубликовать, как вы получаете доступ к объекту соединения через ASP?

+0

Спасибо за наконечник для исправления IP-адреса, он будет полезен в будущем. Однако, как вы можете видеть из комментария в моем первоначальном посте, меня преследовала самая глупая ошибка. Черт. – Passiday

Смежные вопросы