Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Perl и MS SQL 2005 не могу подсоединиться

34K
11 декабря 2007 года
Figaro
3 / / 11.12.2007
Здравствуйте.
Помогите разобраться плз с граблями. Вроде все просто но самостоятельно разобраться не получается.
Вообщем задача такова. Имеем WIN2003S, MS SQL SERVER EXPRESS 2005 и Perl. При подсоединении к серверу баз данных из под перла выдается ошибка SQL Server does not exist or access denied.
Для коннекта в сценнарии пишу следующее:
$dbh = DBI->connect("dbi:ODBC:driver={SQL Server};Server=$hostname;database=$dbname", $user,$pass);
Уже перепроверил и перелазил везде где можно.

Добавлю что на W2000S MSSQL2000 все работало. Нужно просто все переделать на новый лад...
2
11 декабря 2007 года
squirL
5.6K / / 13.08.2003
хм.. а что именно перепроверил? НЕ из Perl - подсоединяется нормально?
1
11 декабря 2007 года
kot_
7.3K / / 20.01.2000
Цитата: Figaro
Здравствуйте.
Помогите разобраться плз с граблями. Вроде все просто но самостоятельно разобраться не получается.
Вообщем задача такова. Имеем WIN2003S, MS SQL SERVER EXPRESS 2005 и Perl. При подсоединении к серверу баз данных из под перла выдается ошибка SQL Server does not exist or access denied.
Для коннекта в сценнарии пишу следующее:
$dbh = DBI->connect("dbi:ODBC:driver={SQL Server};Server=$hostname;database=$dbname", $user,$pass);
Уже перепроверил и перелазил везде где можно.

Добавлю что на W2000S MSSQL2000 все работало. Нужно просто все переделать на новый лад...


$hostname - как определено? Какой драйвер используется? $user,$pass - в базе присутствуют? Кроме того - SQL2005 требует установки клиента для доступа, и фреймворка 2.0 - это установлено?

34K
11 декабря 2007 года
Figaro
3 / / 11.12.2007
Цитата: kot_
$hostname - как определено? Какой драйвер используется? $user,$pass - в базе присутствуют? Кроме того - SQL2005 требует установки клиента для доступа, и фреймворка 2.0 - это установлено?



Вообщем текст так называемого тестового скрипта следующий:

[FONT="Courier New"]use DBI::DBD;
$user='figaro';
$pass='parol';
$hostname='stealth-3';
$dbname='dbdirect';
$dbh = DBI->connect("dbi:ODBC:driver={SQL Server};Server=$hostname;database=$dbname", $user,$pass);
$dbh->disconnect;
print "hallo!!!";[/FONT]

после его выполения на той же машине где и установлен SQL сервер выдается вышеуказанная ошибка.

Framework установлен. Иначе SQL сервер бы не установился.

В SQL Server Configuration Manager Были включены протоколы TCP/IP и Shared Memory. В настройках TCP/IP все активно. пытаюсь заскочить через телнет на 1433 порт - черный экран (насколько я так понимаю это нормально).
Далее в SQL Server Management Studio Express логинюсь без проблем - как через win-аутентификацию так и sql-аутен.

Но через perl не получается залогиниться ни под sa, ни под любым другим созданным логином...

34K
11 декабря 2007 года
Figaro
3 / / 11.12.2007
Вообщем задача решена!!!:rolleyes:
Проблема заключалась в имени сервера ($hostname)

Решение настолько банальное и насколько простое что я чуть не офигел...

значение $hostname должно быть не 'stealth-3' (как в 2000-ом сервере), а 'STEALTH-3\SQLEXPRESS'

Спасибо за оказанное внимание!
Досвидания.;)
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог