Получение Неправильного Имени Сервера

enter image description hereЯ выполняю запрос, из которого я хочу получить все имя сервера, установленное в системе
Поэтому я сделал это с помощью этого запроса

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

  1. чтобы найти "имя сервера"

    ВЫБЕРИТЕ SERVERPROPERTY ('MACHINENAME')

  2. чтобы найти "имя сервера "с" именем экземпляра " (если его именованный экземпляр)

    ВЫБЕРИТЕ SERVERPROPERTY ('ИМЯ_СЕРВЕРА')

  3. чтобы найти "имя клиентского компьютера" (имя локального компьютера)

    ВЫБЕРИТЕ HOST_NAME ()