Получение Неправильного Имени Сервера
Я выполняю запрос, из которого я хочу получить все имя сервера, установленное в системе
Поэтому я сделал это с помощью этого запроса
select srvname from sysservers
он дает мне имена серверов, но это не правильное имя сервера, которое он дает мне srvname
WIN-1BKHGVK7J3ASQLSERVER2008R2
но это не мое имя сервера, и я попытался сделать это по-другому с помощью этого запроса
Select @@Servername
он также дает выше неправильное имя сервера WIN-1BKHGVK7J3ASQLSERVER2008R2
но когда я это сделал с этим запросом
SELECT SERVERPROPERTY ('ServerName')
он дает правильное имя сервера, которое AIS-OCTACORESQLserver2008r2
но ограничение с этим-это только дает текущее имя сервера, и я хочу, чтобы все имя сервера было установлено в системе
вы можете сказать, почему я получаю неправильное имя сервера??
Также как я могу получить все имена сервера
3 ответов
чтобы проверить, какие текущие значения установлены в
SELECT ServerProperty('machinename') as [machinename]
,ServerProperty('ServerName') as [ServerName]
,@@ServerName as [@@ServerName];
чтобы исправить проблему, выполните следующие действия:
EXEC sp_dropserver 'old_server_name';
GO
EXEC sp_addserver 'new_server_name', 'local';
GO
вам нужно будет перезапустить службу SQLSERVER
Это может произойти, когда имя сервера изменяется после установки SQL Server.
вы можете попробовать sp_dropserver и sp_addserver, чтобы изменить его обратно:http://www.brentozar.com/blitz/servername-not-set/
Я не уверен, что я бы, хотя вы не знаете, почему он был изменен в первую очередь, это может что-то сломать.
хотя функция @@SERVERNAME и свойство SERVERNAME функции SERVERPROPERTY могут возвращать строки с аналогичными форматами, сведения могут быть разными. The свойство SERVERNAME автоматически сообщает об изменениях в сетевом имени компьютера.
напротив, @@SERVERNAME не сообщает о таких изменениях. @@ИМЯ_СЕРВЕРА сообщает об изменениях, внесенных в имя локального сервера с помощью хранимых sp_addserver или sp_dropserver процедура.в TechNet
-
чтобы найти "имя сервера"
ВЫБЕРИТЕ SERVERPROPERTY ('MACHINENAME')
-
чтобы найти "имя сервера "с" именем экземпляра " (если его именованный экземпляр)
ВЫБЕРИТЕ SERVERPROPERTY ('ИМЯ_СЕРВЕРА')
-
чтобы найти "имя клиентского компьютера" (имя локального компьютера)
ВЫБЕРИТЕ HOST_NAME ()