Я развертываю SQL Express с моим приложением. Я хотел бы, чтобы этот механизм базы данных принимал удаленные подключения. Я знаю, как настроить это руководство, запустив диспетчер конфигурации сервера sql, включив соединения tcp / ip, указав порты и т. Д. Мне интересно, удастся ли сделать то же самое из командной строки.
Или, возможно, мне придется создать «SQL Server 2008 Server Project» в Visual Studio.
РЕДАКТИРОВАТЬ 1
Я разместил здесь тот же вопрос, но я хотел бы сделать то же самое на экземпляре sql express, который уже установлен. Посмотрите на вопрос здесь
РЕДАКТИРОВАТЬ 2
Я нашел эти ссылки, которые утверждают, что делают что-то подобное, и я до сих пор не могу заставить это работать.
1) http://support.microsoft.com/kb/839980
2) http://social.msdn.microsoft.com/Forums/en-US/sqlexpress/thread/c7d3c3af-2b1e-4273-afe9-0669dcb7bd02/
3) http://www.sql -questions.com / microsoft / SQL-Server / 34211977 / невозможно подключиться к sql-2008-express-on-same-lan.aspx
4) http://datazulu.com/blog/post/Enable_sql_server_tcp_via_script.aspx
РЕДАКТИРОВАТЬ 3
Как сказал Кшиштоф в своем ответе, мне нужно (плюс другие вещи, которые, я знаю, требуются)
1 - включить TCP / IP
Мне удалось сделать это при установке нового экземпляра SQLExpress, передав параметр /TCPENABLED=1
. Когда я устанавливаю sql express как в , этот пример . для этого экземпляра sql express будет включен протокол TCP / IP
2 - открыть нужные порты в брандмауэре
(я сделал это вручную, но я верю, что смогу понять, как это сделать с помощью c #)
До сих пор я должен играть с этой консольной командой:
netsh firewall set portopening protocol = TCP port = 1433 name = SQLPort mode = ENABLE scope = SUBNET profile = CURRENT
3 - изменение свойств TCP / IP для включения IP-адреса
Мне не удалось выяснить, как включить IP-адрес, изменить порт и т. Д. Я думаю, что этот шаг будет сложнее решить
4 - включить аутентификацию в смешанном режиме на сервере sql
Мне удалось сделать это при установке SQL Express, передав параметр /SECURITYMODE=SQL
, см. Ссылку шага 1.
SQL Server Express требует, чтобы этот тип аутентификации принимал удаленные соединения.
5 - Смена пароля пользователя (sa) по умолчанию
По умолчанию учетная запись sa имеет пароль NULL. Для того, чтобы принимать соединения, этот пользователь должен иметь пароль. Я изменил пароль по умолчанию для sa с помощью скрипта:
ALTER LOGIN [sa] WITH PASSWORD='*****newPassword****'
6 - наконец
сможет подключиться, если все последние шаги будут выполнены как:
SQLCMD -U sa -P newPassword -S 192.168.0.120\SQLEXPRESS,1433
, введя это в командной строке: строка подключения в C # будет очень похожа. Мне придется заменить -U для пользователя, -P для пароля и -S для источника данных. Я не помню точных имен.