none
Connection string через IP-адресс RRS feed

  • Вопрос

  • Добрый день.   У меня есть строка подключения

    string

    ConnectionString = "Data Source=Name-DV\\SQLEXPRESS;Initial Catalog=Catalog2009;Integrated Security=True";

    Как написать эту же строку через IP-адресс на мой комп. И можно ли это делать. Компьютер локальный.

    12 апреля 2011 г. 11:41

Ответы

  • у вашего именнованного инстанса есть порт на котором он висит, соответственно можно указывать

     

    ConnectionString = "Data Source=127.0.0.1,хххх;Initial Catalog=Catalog2009;Integrated Security=True";

    где хххх - ваш порт


    http://www.t-sql.ru
    • Помечено в качестве ответа hochuznat 16 апреля 2011 г. 18:18
    12 апреля 2011 г. 12:14
    Модератор

Все ответы

  • у вашего именнованного инстанса есть порт на котором он висит, соответственно можно указывать

     

    ConnectionString = "Data Source=127.0.0.1,хххх;Initial Catalog=Catalog2009;Integrated Security=True";

    где хххх - ваш порт


    http://www.t-sql.ru
    • Помечено в качестве ответа hochuznat 16 апреля 2011 г. 18:18
    12 апреля 2011 г. 12:14
    Модератор
  • Мой порт 1433, но вылетает ошибка

    Message: При установлении соединения с SQL Server произошла ошибка, связанная с сетью или с
    определенным экземпляром. Сервер не найден или недоступен. Убедитесь, что имя экземпляра указано
    правильно и что на SQL Server разрешены удаленные соединения, (provider: Поставщик TCP, error: 0 -
    Подключение не установлено, т.к. конечный компьютер отверг запрос на подключение.)
    LineNumber: 0
    Source: .Net SqlClient Data Provider
    Procedure:

    IP-адрес установил, порт установил. Извините, если что не так и я не первый с этой проблемой. Но хотелось-бы понять ее. Через менеджер конфигурации SQL Server я узнал IP-адрес и номер порта. Изменил то, что Вы написали, но....ошибка. Что делаю не так?

    12 апреля 2011 г. 20:52
  • через SSMS с параметрами (ИП+порт), вы можете подлючиться или такая же проблема?

    сколько всего инстансов на сервере? порт у нужного вам определяется динамически или вы статику вбили?


    http://www.t-sql.ru
    13 апреля 2011 г. 2:26
    Модератор
  • Я хотел-бы узнать протокол соединения, используемый в текущем соединении, нашел вот это

    SELECT net_transport 
    
    FROM sys.dm_exec_connections 
    
    WHERE session_id = @@SPID;
    
    
    Выдал ответ: Shared memory который мне ни о чем не сказал. Как узнать из запросов все это IP, порт, протокол

    Один именованный сервер, порт вбит статически.
    13 апреля 2011 г. 6:08
  • все параметры видны в SQL Configuretion Manager
    http://www.t-sql.ru
    13 апреля 2011 г. 6:49
    Модератор
  • запрос с вашей строкой подключения выполняется локально?


    http://www.t-sql.ru
    13 апреля 2011 г. 6:50
    Модератор
  • ConnectionString = "Data Source=127.0.0.1,1433;Initial Catalog=Catalog2009;Integrated Security=True";

    Да вот так.


    Сетевой протокол включен, IP-адресс (один: включен и активен), TCP-порт пустой, динамические TCP-порты знач. 0.
    13 апреля 2011 г. 7:24
  • с параметрами ИП и ПОРТ вы можете подключиться к скулю через SSMS?


    http://www.t-sql.ru
    13 апреля 2011 г. 7:58
    Модератор
  • Я понимаю это так:

    1 Запустить SSMS

    2 Открыть вкладку Зарегестрированные серверы

    3 Выбрать именованный SQL (у меня SQLEXPRESS) и правой кнопкой мыши выбрать соединить -> создать запрос.

    Дальше я незнаю. 

    13 апреля 2011 г. 8:18
  • в параметрах подключения руками пропишите ИП и ПОРТ, не выбирая из выпадающего списка


    http://www.t-sql.ru
    13 апреля 2011 г. 9:23
    Модератор
  • Где прописывать?   Запускаю SSMS  - во вкладке Обозреватель объектов (F8) жму пиктограмму монитора - подключить к обозревателю объектов

    Вылетает окно - соединение с сервером. Далее жму кнопку параметры - где на вкладке свойства соединения есть графа сетевой протокол.

    Что-то я пошел не туда?!

    13 апреля 2011 г. 11:48
  • а зачем параметры? в первом окне прописываете ваш сервер

    либо проверяйте доступ по ИП через telnet, раз с SSMS справиться не можете...


    http://www.t-sql.ru
    13 апреля 2011 г. 12:46
    Модератор
  • ConnectionString = "Data Source=Name-DV\\SQLEXPRESS;Initial Catalog=Catalog2009;Integrated Security=True";

    С этой строкой я работаю постоянно через приложение. Если необходимо я запускаю SSMS, соединяюсь с сервером и работаю напрямую с таблицами, процедурами.

    В первом окне прописываете ваш сервер - он уже прописан. Тогда скажите где подробно описана процедура подключения через IP и порт. Даже если это будет Ваша статья в www.t-sql.ru.

    13 апреля 2011 г. 13:40
  • В первом окне прописываете ваш сервер - он уже прописан

    А руками вбить текст кто запретил?
    http://www.t-sql.ru
    13 апреля 2011 г. 15:25
    Модератор
  • hochuznat, у вас что-нибудь получилось?
    Для связи [mail]
    15 апреля 2011 г. 5:15
  • Добрый день.  Да у меня получилось соединиться с локальным сервером через SSMS. Да действительно необходимо запустить SSMS. Далее нажать F8 (обозреватель объектов) и нажать на пиктограмму мониторчика. В появившемся окне в строке Имя сервера необходимо ввести следующие данные IP-компьютера и порт, на котором сидит SQL ( я это сделал вот в таком формате - 127.234.4.92,1433). Конечно IP будет для каждого компа свой, но порт по умолчанию должен быть 1433. Но у меня не получилость войти с этим портом - 1433. Я прописал динамический порт и у меня все пошло. Все это время я пытался понять и делал все возможное. Но видно не дано мне это пока понять без посторонней помощи.

    На стороне сервера все прослушивается, активен и включен один IP-порт. Строка динамические TCP-порты пустая. Почему не работает порт 1433 ?????

    15 апреля 2011 г. 12:40
  • На стороне сервера все прослушивается, активен и включен один IP-порт. Строка динамические TCP-порты пустая. Почему не работает порт 1433 ?????


    посмотрите в лог скуля, он при запуске пишет какой порт слушает...1433 -это порт по умолчанию, не факт, что ваш именованный инстанс слушает именно его
    http://www.t-sql.ru
    15 апреля 2011 г. 12:48
    Модератор
  • Посмотрел. Что я должен увидеть для себя. Слева есть колонка <Соединение>, там прописаны IP и порт, через который я зашел.


    Через журнал событий я узнал какой порт прослушивает SQL Server. Чуть позже я опишу для таких как я пользователей как это сделать. До связи.
    15 апреля 2011 г. 12:57
  • Посмотрел. Что я должен увидеть для себя. Слева есть колонка <Соединение>, там прописаны IP и порт, через который я зашел.

    смотреть нужно ЛОГ
    http://www.t-sql.ru
    15 апреля 2011 г. 19:54
    Модератор
  • Добрый. Последняя проблема которая у меня была это определение порта SQL. Как я вышел из положения.

    Пуск->Панель управления->Администрирование->Просмотр событий->Приложения

    Когда запускается SSMS и мы подключаемся к серверу, происходит событие. Это событие можно просмотреть по ссылке, которая написана выше. Там необходимо найти источник события, т.е. SQLServer. Открыть, дважды щелкнув. Найти там категорию события (2), идентификатор события (26022). Там будет много чего написано, в том числе запись что сервер прослушивает порт ХХХХ (какой будет у вас). Вот его то и надо вставлять в строку подключения, предположим  порт 4444

    ConnectionString = "Data Source=127.0.0.1,4444;Initial Catalog=Catalog2009;Integrated Security=True";

    Спасибо Алексею Князеву за терпение. И все-таки что такое просмотреть ЛОГ? Дайте мне ссылку, где почитать. Возможно я не допонимаю слово ЛОГ (наверное, логический файл)

    16 апреля 2011 г. 18:17
  • И все-таки что такое просмотреть ЛОГ?

    лог - журнал событий, протокол.

    У СКЛ сервера так же существует такой... расположен примерно по такому пути: C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Log

    помимо разного рода ошибок и событий, при старте СКЛ этот журнал пересоздается новый и первые строки в нем, как раз параметры запуска...вам нужны первые строки, где кроме основных параметров запуска указаны и порты, которые сиквел слушает, наприер:

    2011-04-16 15:41:30.44 Server      Server is listening on [ 127.0.0.1 <ipv4> 1434 ].

    Так же с этим журналом событий можно работать и через SSMS: Management -> SQL Server Logs 

    и даже обычной командой на T-SQL:

    exec xp_readerrorlog
    

    http://www.t-sql.ru
    17 апреля 2011 г. 5:29
    Модератор