Как просмотреть базу данных SQL Server, созданную веб-приложением ASP.NET MVC?
У меня есть веб-приложение ASP.NET MVC, развернутое в IIS на компьютере с Windows Server 2012. Когда приложение запускается в первый раз, оно создает базу данных и необходимые таблицы, если это необходимо. Все это прекрасно работает, и теперь я хочу администрировать базу данных через SQL Server Management Studio. Однако, когда я открываю этот инструмент, я вижу только системные базы данных. Что мне нужно сделать, чтобы просмотреть базу данных, созданную веб-приложением?
Некоторые детали, которые могут помочь:
Приложение использует следующую строку подключения в Web.config:
<add name="DefaultConnection" connectionString="Data Source=.\SqlExpress; Initial Catalog=Foo.Dashboard;Integrated Security=SSPI;User Instance=true" providerName="System.Data.SqlClient" />
В IIS пул приложений настроен для работы с удостоверением LocalService
и Load User Profile
настройка True
, На Sql Server Express мы добавили логин для Local Service
счет и дал ему dbcreator
роль. Когда приложение запустилось, оно смогло создать базу данных и таблицы, и все, кажется, функционирует.
Затем я подключаюсь к серверу с удаленным рабочим столом и открываю SQL Server Management Studio. Чтобы подключиться к базе данных, я ввожу .\SQLEXPRESS
в качестве имени сервера и аутентификации с Windows Authentication
, Затем я подключаюсь и вижу только системные базы данных. Я добавил все возможные роли базы данных в свой логин и вижу, что у меня есть VIEW ANY DATABASE
разрешение на вкладке Эффективное.
1 ответ
User Instance=true
Это потому, что он работает как пользовательский экземпляр. Возможно, вы сможете подключиться к нему, используя детали здесь
В качестве альтернативы, если вы удалите User Instance=true
из строки подключения, если вы сначала используете код EF, то это должно привести к созданию новой БД на собственно экземпляре SQL. Помните, что таблицы будут пустыми, и вам нужно будет перенести любые данные из вашего пользовательского экземпляра, если они есть.