Объекты поддержки диаграмм базы данных SQL Server Management Studio не могут быть установлены
Sergey Grigoyan. SQL Server Management Studio Database Diagram Support Objects Cannot be Installed
Проблема
Иногда необходимо нереименовать машину хоста после установки SQL Server. После изменения имени хоста и выполнения связанных с этим изменений мы можем успешно подключаться с новым именем и без проблем работать с SQL Server. Однако возможна скрытая проблема, с которой вы можете столкнуться при создании диаграммы базы данных. Ниже показано сообщение об ошибке, которое вы можете получить и в котором говорится, что невозможно создать диаграмму базы данных, т.к. у базы данных отсутствует допустимый владелец.
В этой статье мы собираемся воспроизвести проблему и объяснить, как исправить ситуацию с сообщением об ошибке: "Объекты поддержки диаграмм базы данных не могут быть установлены, так как у базы данных отсутствует допустимый владелец."
Решение
Предположим, что у нас на машине установлен SQL Server, после чего мы переименовали компьютер хоста с MYPC" на "DBSERVER1". В нашем примере у нас есть дефолтный экземпляр SQL Server и, как говорилось, новое имя сервера для подключения - "DBSERVER1". Если мы попытаемся создать диаграмму базы данных, например, для TestDB, то получим следующее сообщение:
Т.е. диаграмма не может быть создана, поскольку база данных не имеет допустимого владельца. Поэтому давайте проверим, кто является владельцем базы данных. Для этого щелкнем правой кнопкой на базе данных и выберем "Properties" (свойства):
Когда откроется окно свойств базы данных, на вкладке данные мы можем увидеть владельца, которым является пользователь "MYPC\Administrator":
Мы можем найти соответствующий логин, используя ветку "Security" > "Logins". Тут мы можем обнаружить логин "MYPC\Administrator" и, если открыть его свойства, то можем увидеть, что он имеет членство в роли "db_owner" (владелец БД) для TestDB.
Мы уже знаем, что имя компьютера не "MYPC" и, следовательно, у нас не должно быть такого пользователя. В свойствах компьютера мы можем еще раз это проверить и подтвердить, что компьютер имеет новое имя - "DBSERVER1":
Кроме того, когда мы подключаемся к экземпляру SQL Server, мы указываем новое имя сервера и используем "DBSERVER1\Administrator" в качестве логина Windows:
Можно догадаться, что "MYPC\Administrator" стало неверным именем для логина. Следовательно, нужно изменить его на правильное имя "DBSERVER1\Administrator". Мы можем сделать это, щелкнув правой кнопкой на логине и выбрав команду "Rename" (переименовать):
Теперь, после набора нового имени логина, мы можем увидеть логин "DBSERVER1\Administrator" в нашем списке логинов:
Если сейчас открыть свойства базы данных TestDB, то мы увидим, что имя владельца автоматически поменялось:
Таким образом, мы установили правильное имя для владельца базы данных, и создание диаграммы базы данных теперь должно работать.
Если повторить создание диаграммы базы данных, то мы уже не получим предыдущего сообщения об ошибке, и появится окно создания диаграммы:
Теперь мы можем успешно создать и сохранить диаграмму базы данных:
Таким образом, наша проблема легко разрешилась изменением унаследованного имени на логин Windows, который является владельцем базы данных в соответствии с новым именем компьютера хоста.
Заключение
Если владельцем базы данных является логин, имя которого стало неверным после переименования компьютера хоста, это может вызвать некоторые проблемы. Невозможность создания диаграммы базы данных является одним из примеров. Таким образом, если компьютер переименовывается после установки на нем SQL Server, наряду с другими связанными изменениями важно также переименовать соответствующие логины, которые использовали предыдущее имя компьютера.
Обратные ссылки
Автор не разрешил комментировать эту запись
Комментарии
Показывать комментарии Как список | Древовидной структурой