Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
 Help!!! MSSQL 2008 + VS 2008 (9)  [new]
dtcDev
Member

Откуда:
Сообщений: 19
Форумчане, хелп!

Собсна, сабж:

MSSQL 2008 Express + Managment Studio

Есть в ней одна БД, скажем, с именем 1. Создаю Alias, с именем, скажем, 2. Создаю в БД имя пользователя и пароль, настраиваю данного пользователя как владельца БД 1. При входе в Managment Studio указываю БД с именем 2, имя и пароль - входит, всё ок.

Далее. VS 2008 (9) + SilverLight Tools + XNA + TeamExploer. Server Exploer БД с именем 2, и с именем 1 видит, к ней коннектится, таблички кажет. Тут всё гуд. Но как только я пытаюсь подключиться к БД под именем 2 из кода (прогоняю юнит-тест), как тут же начинают сыпаться ошибки. Вариантов 2:

либо

Test method ............ threw exception: System.Data.SqlClient.SqlException: Подключение к серверу успешно установлено, но затем произошла ошибка при входе. (provider: Поставщик именованных каналов, error: 0 - С обоих концов канала отсутствуют процессы.).

либо

Test method ............. threw exception: System.Data.SqlClient.SqlException: Не удается открыть базу данных ".........", запрашиваемую именем входа. Не удалось выполнить вход.
Ошибка входа пользователя "........"

Перенаправление в есете проставил, пробовал его вообще отключать, брандмаузер выключен, хосты прописаны .....

Короче, вчера 8 часов пытался решить задачу, вплоть до переустановки MSSQL - бестолку....


Хелп!!!!!
26 ноя 09, 12:36    [7981694]     Ответить | Цитировать Сообщить модератору
 Re: Help!!! MSSQL 2008 + VS 2008 (9)  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74927
автор
Есть в ней одна БД, скажем, с именем 1. Создаю Alias, с именем, скажем, 2.


Что, простите, создаете и где?!
26 ноя 09, 12:48    [7981792]     Ответить | Цитировать Сообщить модератору
 Re: Help!!! MSSQL 2008 + VS 2008 (9)  [new]
dtcDev
Member

Откуда:
Сообщений: 19
pkarklin
автор
Есть в ней одна БД, скажем, с именем 1. Создаю Alias, с именем, скажем, 2.


Что, простите, создаете и где?!


Псевдонимы :)

Извините.

сервер один:
БЛА/SQLEXPRESS

в нём есть БД с именем 1, а в "менеджере конфигурации" создаю псевдоним с именем 2.
26 ноя 09, 12:58    [7981875]     Ответить | Цитировать Сообщить модератору
 Re: Help!!! MSSQL 2008 + VS 2008 (9)  [new]
Glory
Member

Откуда:
Сообщений: 104760
dtcDev
pkarklin
автор
Есть в ней одна БД, скажем, с именем 1. Создаю Alias, с именем, скажем, 2.


Что, простите, создаете и где?!


Псевдонимы :)

Вы думаете, стало понятнее после перевода слова "alias" в "псевдоним" ?
26 ноя 09, 13:03    [7981921]     Ответить | Цитировать Сообщить модератору
 Re: Help!!! MSSQL 2008 + VS 2008 (9)  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74927
dtcDev,

А строку подключения из кода можно увидеть?

автор
Поставщик именованных каналов, error: 0 - С обоих концов канала отсутствуют процессы


И сервер этот протокол слушает?
26 ноя 09, 13:04    [7981933]     Ответить | Цитировать Сообщить модератору
 Re: Help!!! MSSQL 2008 + VS 2008 (9)  [new]
dtcDev
Member

Откуда:
Сообщений: 19
Glory, Есть в MSSQL такая хрень, как псевдоним. Зачем нужна - конкретный пример:

У меня есть приложение и бекап БД. Приложение обращается к серверу с именем, скажем, "приложение". Бекап я встроил в свой сервер, который при установке по дефолту объявляется как ИМЯ_ПОЛЬЗОВАТЕЛЯ/SQLEXPRESS.

Т.е. у меня имеется БД с именем "БД1", к которой обращается программа. Но программа хочет видеть "БД1" на сервере "приложение", и совсем не ожидает его найти на сервере ИМЯ_ПОЛЬЗОВАТЕЛЯ/SQLEXPRESS.

Для того, чтобы не переименовывать свой сервер, (на котором висит уже куча разрабатываемых приложений), и не править конфиги в том приложении, которое я пытаюсь запустить (там конфигов порядка 50 штук), я создаю псевдоним.

Псевдоним - это как бы ещё один сервер в системе, которому можно указать любое имя ("БД1" в моём случае), и указать, чтобы в качестве сервера работал мой реальный сервер ИМЯ_ПОЛЬЗОВАТЕЛЯ/SQLEXPRESS.

И теперь, когда я обращаюсь к данному серверу, обращение просто перенаправляется на мой реальный сервер, ну а требуемая БД там уже есть (тот самый бекап).

Как то так
26 ноя 09, 13:12    [7982020]     Ответить | Цитировать Сообщить модератору
 Re: Help!!! MSSQL 2008 + VS 2008 (9)  [new]
Glory
Member

Откуда:
Сообщений: 104760
dtcDev
Glory, Есть в MSSQL такая хрень, как псевдоним. Зачем нужна - конкретный пример:

Только вот alias/псевдоним создается для сервера, а не для базы
Для того, чтобы при коннекте по некому виртуальному имени получить физический адрес сервера.
26 ноя 09, 13:15    [7982038]     Ответить | Цитировать Сообщить модератору
 Re: Help!!! MSSQL 2008 + VS 2008 (9)  [new]
dtcDev
Member

Откуда:
Сообщений: 19
pkarklin, строку подключения, если настолько нужно, показать смогу. но только сильно порезанную. Причина тому - подписка о неразглашении, тут уж ничего поделать не могу....

Да и не в ней дело. На остальных компьютерах разработчиков данного проекта всё прекрасно заработало.

Действия проводил те же самые, но результат удручает...
26 ноя 09, 13:17    [7982055]     Ответить | Цитировать Сообщить модератору
 Re: Help!!! MSSQL 2008 + VS 2008 (9)  [new]
dtcDev
Member

Откуда:
Сообщений: 19
Glory, мы сейчас в болтологию удаляемся :)

Мож не так написал?

Есть реальный сервер №1

Есть виртуальный, на псевдониме №2.

На сервере №1 есть БД

К ней надо подконнектиться через имя сервера №2.

Войти в Managment Studio под именем сервера №2, именем и паролем получается

в VS, в Server Exploer сервер №2 виден, соединение с именем и паролем к нему проходит, работать с ним можно.

Но из кода достучаться до сервера №2 не получается
26 ноя 09, 13:22    [7982087]     Ответить | Цитировать Сообщить модератору
 Re: Help!!! MSSQL 2008 + VS 2008 (9)  [new]
Konst_One
Member

Откуда:
Сообщений: 11514
dtcDev


Но из кода достучаться до сервера №2 не получается


ну показывайте ваши псевдонимы и реальное имя сервера и этот ваш код как вы пытаетесь достучаться
26 ноя 09, 13:24    [7982106]     Ответить | Цитировать Сообщить модератору
 Re: Help!!! MSSQL 2008 + VS 2008 (9)  [new]
Glory
Member

Откуда:
Сообщений: 104760
dtcDev
Glory, мы сейчас в болтологию удаляемся :)

Мож не так написал?

Есть реальный сервер №1

Есть виртуальный, на псевдониме №2.

На сервере №1 есть БД

К ней надо подконнектиться через имя сервера №2.

Войти в Managment Studio под именем сервера №2, именем и паролем получается

в VS, в Server Exploer сервер №2 виден, соединение с именем и паролем к нему проходит, работать с ним можно.

Но из кода достучаться до сервера №2 не получается

- конектятся к серверу, а не к базе. И это не болтология. Это понимание сути происходящих процессов
- "лечить" программный код, который не показан даже строкой коннекта может только разве что Алан Чумак
- "лечить" проблему по обрывку сообщения вида "Ошибка входа пользователя "........" тоже навреное только он может. Только не говорите, что номер и полный текст ошибки вы не можете сообщить из-ща соображений секретности
26 ноя 09, 13:29    [7982168]     Ответить | Цитировать Сообщить модератору
 Re: Help!!! MSSQL 2008 + VS 2008 (9)  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74927
dtcDev
pkarklin, строку подключения, если настолько нужно, показать смогу. но только сильно порезанную. Причина тому - подписка о неразглашении, тут уж ничего поделать не могу....

Да и не в ней дело. На остальных компьютерах разработчиков данного проекта всё прекрасно заработало.

Действия проводил те же самые, но результат удручает...


Вот и проверьте, по какому протоколу идет соединение с других компов, на какую бд и под каким логином.
26 ноя 09, 13:30    [7982182]     Ответить | Цитировать Сообщить модератору
 Re: Help!!! MSSQL 2008 + VS 2008 (9)  [new]
dtcDev
Member

Откуда:
Сообщений: 19
Konst_One, я уже писал выше - без конкретной вырезки больших кусков кода с реальной информацией я публиковать такие данные не могу. потому как это доступ к БД одной из реально существующих и работающих компаний. Слепок "боевой" БД, поэтому полностью привести строку подключения я не могу. У меня есть копия этой БД, которую я восстановил на своём серваке, и теперь пытаюсь настроить к ней доступ.

Прекрасно понимаю, что от многих сейчас услышу "а чего ты хочешь без кода", "телепатов нет" и пр.
Но тем не менее надеюсь на помощь коллективного разума.

В принципе, гугление этого вопроса может что то и даст, если поиграться с построением вопроса, но вчера 8 часов 2 человека, которые сделали совершенно ОДИНАКОВЫЕ действия, имеющие ОДИНАКОВЫЕ копии БД, (у него коннектится, у меня нет), шерстили интернет и ничего не нашли...

Так что я очень прошу - назовите причины, по которым может происходить такая ошибка, я проверю и отпишусь с результатами.
26 ноя 09, 13:34    [7982216]     Ответить | Цитировать Сообщить модератору
 Re: Help!!! MSSQL 2008 + VS 2008 (9)  [new]
dtcDev
Member

Откуда:
Сообщений: 19
pkarklin, С протоколами всё ок, то же касается и логина с паролем - вчера раз 5 пересоздавал заново - то же самое. Пользователь с этим логином указан в настройках как владелец БД
26 ноя 09, 13:37    [7982245]     Ответить | Цитировать Сообщить модератору
 Re: Help!!! MSSQL 2008 + VS 2008 (9)  [new]
Glory
Member

Откуда:
Сообщений: 104760
dtcDev
Konst_One, я уже писал выше - без конкретной вырезки больших кусков кода с реальной информацией .

Какие еще куски кода ? Вы понимаете, что есть строка коннекта/соединения ?
Какой супер секрет представляет, например, протокол соединения ?
26 ноя 09, 13:37    [7982250]     Ответить | Цитировать Сообщить модератору
 Re: Help!!! MSSQL 2008 + VS 2008 (9)  [new]
dtcDev
Member

Откуда:
Сообщений: 19
Glory, простите мне мои ошибки. Весь на нервах - второй день с таким пустяком карячусь. могу привести строку подключчения без имён БД, сервера, ну и логина с паролем. Поможет?
26 ноя 09, 13:39    [7982271]     Ответить | Цитировать Сообщить модератору
 Re: Help!!! MSSQL 2008 + VS 2008 (9)  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74927
dtcDev
С протоколами всё ок


Как Вы это проверяли?!

dtcDev
то же касается и логина с паролем - вчера раз 5 пересоздавал заново - то же самое.


Берем и пробуем подключиться с помощью sqlcmd.
26 ноя 09, 13:40    [7982282]     Ответить | Цитировать Сообщить модератору
 Re: Help!!! MSSQL 2008 + VS 2008 (9)  [new]
dtcDev
Member

Откуда:
Сообщений: 19
<connectionStrings>
<add name="Name" connectionString=""/>
<add name="Name1" connectionString="Data Source=SERVER;Failover Partner=SERVER2;Initial Catalog=Catalog1;Persist Security Info=True;User ID=User;Password=Pass"/>
<add name="Name2" connectionString="Data Source=SERVER;Failover Partner=SERVER2;Initial Catalog=Catalog1;Persist Security Info=True;User ID=User;Password=Pass" providerName="System.Data.SqlClient"/>
<add name="Name3" connectionString="metadata=***://*/ApplicationDomain.ANY_DOMAIN://*/ApplicationDomain.ANY_DOMAIN://*/ApplicationDomain.ANY_DOMAIN;provider=System.Data.SqlClient;provider connection string="Data Source=SERVER;Failover Partner=SERVER2;Initial Catalog=Catalog1;Persist Security Info=True;User ID=User;Password=PAss;MultipleActiveResultSets=True""
providerName="System.Data.EntityClient" />
</connectionStrings>



Строка подключения
26 ноя 09, 13:46    [7982347]     Ответить | Цитировать Сообщить модератору
 Re: Help!!! MSSQL 2008 + VS 2008 (9)  [new]
Konst_One
Member

Откуда:
Сообщений: 11514
простите, но ваш конфиг-файл ни о чём не говорит. у вас там две строки соединения одинаковые и смотрят на сервер SERVER:

<add name="Name1" connectionString="Data Source=SERVER;Failover Partner=SERVER2;Initial Catalog=Catalog1;Persist Security Info=True;User ID=User;Password=Pass"/>
<add name="Name2" connectionString="Data Source=SERVER;Failover Partner=SERVER2;Initial Catalog=Catalog1;Persist Security Info=True;User ID=User;Password=Pass"

что вы тут нам пытаетесь объяснить не совсем понятно
26 ноя 09, 13:55    [7982437]     Ответить | Цитировать Сообщить модератору
 Re: Help!!! MSSQL 2008 + VS 2008 (9)  [new]
Konst_One
Member

Откуда:
Сообщений: 11514
и к тому же для Name1 не указан провайдер соединения!
26 ноя 09, 13:56    [7982445]     Ответить | Цитировать Сообщить модератору
 Re: Help!!! MSSQL 2008 + VS 2008 (9)  [new]
dtcDev
Member

Откуда:
Сообщений: 19
sqlcmd схлопывается, выдавая какое то сообщение (не успеваю прочитать)

для запросов используется Linq
26 ноя 09, 14:00    [7982464]     Ответить | Цитировать Сообщить модератору
 Re: Help!!! MSSQL 2008 + VS 2008 (9)  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74927
dtcDev,

Блин, ну так запустите ее в cmd.
26 ноя 09, 14:02    [7982484]     Ответить | Цитировать Сообщить модератору
 Re: Help!!! MSSQL 2008 + VS 2008 (9)  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74927
dtcDev
для запросов используется Linq


Сочувствую....
26 ноя 09, 14:02    [7982487]     Ответить | Цитировать Сообщить модератору
 Re: Help!!! MSSQL 2008 + VS 2008 (9)  [new]
dtcDev
Member

Откуда:
Сообщений: 19
результат sqlcmd

Result 0x2, уровень 16, состояние 1
Поставщик именованных каналов: не удалось открыть соединение с SQL Server [2].
sqlcmd: ошибка - Microsoft SQL Server Native Client 10.0 При установлении соединения с сервером SQL Server произошла ошибка, связанная с сетью или с определённым экземпляром. Сервер не найден или недоступен.
26 ноя 09, 14:16    [7982603]     Ответить | Цитировать Сообщить модератору
 Re: Help!!! MSSQL 2008 + VS 2008 (9)  [new]
Konst_One
Member

Откуда:
Сообщений: 11514
dtcDev
результат sqlcmd

Result 0x2, уровень 16, состояние 1
Поставщик именованных каналов: не удалось открыть соединение с SQL Server [2].
sqlcmd: ошибка - Microsoft SQL Server Native Client 10.0 При установлении соединения с сервером SQL Server произошла ошибка, связанная с сетью или с определённым экземпляром. Сервер не найден или недоступен.



вот и разбирайтесь, почему у вас соединение идет по именованным каналам
26 ноя 09, 14:19    [7982633]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить