none
соединение c sql server 2008R2 RRS feed

  • Вопрос

  • Добрый день. 

    Подскажите как правильно составить строку подключения к sql server 2008 

    на данный момент на домашнем компьютере установлен Sql server и в качестве подключения использую строку 

    "Network Library=DBMSSOCN;" +   "Data Source= IP ,1433;" +   "Initial Catalog=SKLAD;" +    "User Id=*******;" +     "Password=****;"

    Подскажите как получить доступ к данным через интернет. я указываю IP компа но он (локальный) 192,168,1,2

    IP модема уже совсем другой. 

    Я понимаю что мне необходимо связать IP модема и IP компа но только как это реализовать

    На просторах интернета нашел строку подключения, но не уверен в ней :

    oConn.Open "Driver={SQL Server};" & _

               "Server=xxx.xxx.xxx.xxx;" & _
               "Address=xxx.xxx.xxx.xxx,1433;" & _
               "Network=DBMSSOCN;" & _
               "Database=myDatabaseName;" & _
               "Uid=myUsername;" & _
               "Pwd=myPassword"

    Поэтому нуждаюсь в советах компетентных разработчиков, буду рад любой информации.

    Заранее благодарен.

    10 марта 2012 г. 14:31

Ответы

  • Строка продключения (та, что вы используете локально) - правильная. Для доступа снаружи в ней надо будет прописать внешний IP модема.
    • Помечено в качестве ответа Abolmasov Dmitry 12 марта 2012 г. 7:50
    11 марта 2012 г. 12:07
    Модератор
  • Если все правильно понял, то нужно сделать проброс порта SQL Server-а с внешнего адреса на локальный - посмотрите как настраивается проброс портов на вашем роутере.  В connection string указывать внешний адрес.



    • Изменено A.G.Sedov 11 марта 2012 г. 4:15
    • Помечено в качестве ответа Abolmasov Dmitry 12 марта 2012 г. 7:49
    11 марта 2012 г. 4:12
  • Всем большое спасибо!!!

    в строке подключения было все правильно 

    "Network Library=DBMSSOCN;" +   "Data Source= IP ,1433;" +   "Initial Catalog=SKLAD;" +    "User Id=*******;" +     "Password=****;"

    PashaPasha мне правильно подсказал ( ему отдельное спасибо).

    1. SQL server разрешить удаленное соединение 

    2. добавить порты в sql browser () Instruction sql and 7

    3. Как сказал PashaPasha отфорвардить порт 1433 модема на порт 1433 машины в sql server. ( Мне помогло )

        Проверка открытых портов один или http://speed-tester.info/check_port.php

    • Помечено в качестве ответа Abolmasov Dmitry 12 марта 2012 г. 7:50
    11 марта 2012 г. 18:35

Все ответы

  • Если все правильно понял, то нужно сделать проброс порта SQL Server-а с внешнего адреса на локальный - посмотрите как настраивается проброс портов на вашем роутере.  В connection string указывать внешний адрес.



    • Изменено A.G.Sedov 11 марта 2012 г. 4:15
    • Помечено в качестве ответа Abolmasov Dmitry 12 марта 2012 г. 7:49
    11 марта 2012 г. 4:12
  • Так же если внешний ip адрес у вас динамический, то имеет смысл зарегистрировать домен, например на http://dyn.com/dns/, и указывать уже не прямой ip адрес, а то имя домена, которое вы зарегистрировали. А ip адрес будет сопоставляется с вашим именем домена с помощью утилиты, которую предоставляет данный сервис (или же самим роутером, если он поддерживает данный сервис).

    Для связи [mail]

    11 марта 2012 г. 9:14
  • Модем ADSL, как в прочем и большинство используемых модемов в нашем регионе.

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

    Мне нужна сама строка подключения.

    11 марта 2012 г. 9:41
  • Смотрите ответ ulcer-а, там показано как составляется строка подключения.


    Для связи [mail]

    11 марта 2012 г. 10:02
  • Строка продключения (та, что вы используете локально) - правильная. Для доступа снаружи в ней надо будет прописать внешний IP модема.
    • Помечено в качестве ответа Abolmasov Dmitry 12 марта 2012 г. 7:50
    11 марта 2012 г. 12:07
    Модератор
  •  есть ли необходимость открытие портов в самом модеме.

    В в браузере Windows я указал несколько портов (1433,.....,....). И в sql server открыл на прослушивание  пока стандартный порт 1433

    11 марта 2012 г. 14:23
  • Да, есть. нужно отфорвардить порт 1433 модема на порт 1433 машины в sql server.

    Тогда подключающийся снаружи по IPМодема:1433 на самом деле подключится к МашинеСSQLServer:1433

    11 марта 2012 г. 14:32
    Модератор
  • Также есть очень полезный сервис для проверки открытости порта - CanYouSeeMe. Используйте его тоже как дополнительную проверку.


    Для связи [mail]

    11 марта 2012 г. 16:30
  • Всем большое спасибо!!!

    в строке подключения было все правильно 

    "Network Library=DBMSSOCN;" +   "Data Source= IP ,1433;" +   "Initial Catalog=SKLAD;" +    "User Id=*******;" +     "Password=****;"

    PashaPasha мне правильно подсказал ( ему отдельное спасибо).

    1. SQL server разрешить удаленное соединение 

    2. добавить порты в sql browser () Instruction sql and 7

    3. Как сказал PashaPasha отфорвардить порт 1433 модема на порт 1433 машины в sql server. ( Мне помогло )

        Проверка открытых портов один или http://speed-tester.info/check_port.php

    • Помечено в качестве ответа Abolmasov Dmitry 12 марта 2012 г. 7:50
    11 марта 2012 г. 18:35