Подключение к базе данных на веб-хосте в Visual Studio или Sql Server Management Studio - PullRequest
2 голосов
/ 03 июня 2010

У меня есть веб-сайт, разработанный локально с локальной базой данных Sql Server. У меня также есть веб-хостинг, который предоставляет одну базу данных Sql Server для моего сайта. Теперь я хочу развернуть приложение и иметь возможность управлять удаленной базой данных из обозревателя серверов в Visual Studio. У меня есть строка подключения, используемая в приложении, которая прекрасно работает для добавления, скажем, источника данных в элемент управления и т. Д. Но я не знаю, есть ли способ использовать его для подключения базы данных внутри обозревателя серверов, чтобы я мог добавление таблиц и т. д. Я прочитал, что вы должны это делать вместо использования Sql Server Management Studio, но я ничего не прочитал о том, как подключиться к удаленной базе данных в нем.

На данный момент я пробовал следующее: я выбрал «Добавить базу данных в обозревателе серверов». Сначала открывается диалоговое окно, в котором я выбираю Sql Server. И тогда я получаю диалоговое окно, в котором я могу установить имя сервера (которое я пытался использовать с помощью IP-адреса в строке подключения ниже) и аутентификацию (где я выбрал аутентификацию сервера Sql, с идентификатором пользователя и паролем снизу). Но когда я проверяю соединение, оно терпит неудачу.

Вот строка подключения, которая прекрасно работает при использовании источников данных в приложении (очевидно, с другим именем пользователя и паролем):

Любая помощь приветствуется!

EDIT:

Ну, я сделал все, что предложил Левигес, сейчас, но это не имеет никакого значения. Я не могу поверить, что это должно быть так сложно ... Я продолжаю получать это сообщение об ошибке в Sql Server Management Studio:

Произошла ошибка, связанная с сетью или экземпляром, при установлении соединения с SQL Server. Сервер не найден или не был доступен. Убедитесь, что имя экземпляра указано правильно и что SQL Server настроен для разрешения удаленных подключений. (поставщик: поставщик именованных каналов, ошибка: 40 - не удалось открыть соединение с SQL Server) (Microsoft SQL Server, ошибка: 53)

Ответы [ 2 ]

2 голосов
/ 04 июня 2010

Я наконец понял проблему: поскольку я подозревал, что настройки в моей собственной установке не были проблемой, а скорее были настройками установки Sql Server на моем веб-хосте. И на самом деле я нашел место в панели управления на моем веб-хосте, где я мог бы установить исключение для своего IP-адреса, чтобы моему ip был предоставлен доступ к порту 1433 для Sql Server, который в противном случае закрыт по умолчанию из соображений безопасности .

Мне не повезло найти какую-либо информацию об этом в Интернете, что я нахожу странным. Вся информация, которую я смог найти, была связана с изменением этих настроек в вашей локальной установке Sql Server. Но я уверен, что есть множество людей, которые, как и я, используют веб-хостинг для развертывания своего веб-сайта, и тогда эта информация, похоже, не применяется. (Возможно, помимо настроек TCP, которые, я думаю, должны быть установлены, и здесь есть подробная информация об этом: http://www.linglom.com/2009/03/28/enable-remote-connection-on-sql-server-2008-express/)

Надеюсь, что это помогает кому-то, кто любит меня, использует веб-хостинг. Теперь у меня все работает нормально, по крайней мере, как в Management Studio, так и в Visual Studio Server Explorer.

2 голосов
/ 03 июня 2010

Вот процесс, которым я следую для работы с удаленными базами данных:

  1. В VS 2008 под Сервером Вкладка Explorer, щелкните правой кнопкой мыши на «Данные Подключения ", а затем нажмите" Добавить Подключение "
  2. Изменить источник данных на "Microsoft Sql Server"
  3. Положите в свой полностью квалифицированный «Имя сервера» (будь то IP-адрес, имя домена и т. Д.), Выберите «Sql Server» Аутентификация "и положить в" пользователя Имя "и" Пароль "для пользователя базы данных
  4. Выберите базу данных, к которой вы хотите подключиться, в разделе «Выберите или введите имя базы данных»
  5. Нажмите «Проверить соединение», чтобы проверить, а затем «OK», чтобы принять
  6. В этот момент вы сможете взаимодействовать с базой данных, развернув соединение, а затем папку «Таблицы». Например, щелкните правой кнопкой мыши папку «Таблицы», и в диалоговом окне вам будет предложена опция «Добавить таблицу». Если щелкнуть правой кнопкой мыши существующую таблицу, откроются параметры «Открыть определение таблицы», в которых можно изменить любые столбцы и т. Д.

Если вы не достигли этого момента (и, похоже, вы этого не делаете), я бы порекомендовал проверить соединение с Sql Server с любой машины, которую вы используете.

Обычно я делаю это, заходя в Management Studio и подключаясь к любым учетным данным, которые я пытаюсь использовать. Если они не работают, убедитесь, что они фактически добавлены как пользователь Sql Server и пользователь базы данных (они должны быть оба).

Кроме того, я бы проверил в Sql Server Configuration Area Area Manager. Вы должны разрешить TCP-соединения и должны быть настроены так, чтобы разрешать соединения Sql Server Authentication и с удаленных хостов. Если ЭТО все настроено, но вы все еще не можете подключиться, я бы дважды проверил, чтобы убедиться, что ваш брандмауэр разрешает соединения с Sql Server. Порт по умолчанию - 1433.

Кроме того, если вы можете подключиться, но не можете записать что-либо, перепроверьте свои права доступа к таблице. Надеюсь, это поможет!

...