powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Инстанс
28 сообщений из 28, показаны все 2 страниц
Инстанс
    #39880234
AndrF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пусть на сервере есть инстансы:

CORE-TATA\CORETATA
CORE-TATA\CORETATA1

К первому из них можно так же подключиться просто по имени сервера: CORE-TATA.

Соответственно, вопрос - можно ли как-то подключившись к CORE-TATA\CORETATA узнать что доступен и более короткий вариант подключения CORE-TATA?
...
Рейтинг: 0 / 0
Инстанс
    #39880235
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndrF,
дефолтный инстанс называется
Код: sql
1.
SELECT SERVERPROPERTY('InstanceName')


NULL значить можно " более короткий вариант "
...
Рейтинг: 0 / 0
Инстанс
    #39880241
AndrF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TaPaKAndrF,
NULL значить можно " более короткий вариант "

Увы - не работает. Могу подключиться "по короткому", но SERVERPROPERTY('InstanceName') возвращает не NULL...
...
Рейтинг: 0 / 0
Инстанс
    #39880242
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndrF,

авторInstanceName Name of the instance to which the user is connected.

Returns NULL if the instance name is the default instance, if the input is not valid, or error.

NULL = Input is not valid, an error, or not applicable.

Base data type: nvarchar(128)
...
Рейтинг: 0 / 0
Инстанс
    #39880249
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TaPaKAndrF,
дефолтный инстанс называется
Код: sql
1.
SELECT SERVERPROPERTY('InstanceName')



NULL значить можно " более короткий вариант "Это же имя инстанса, и NULL будет, когда его нет.
А если имя инстанса есть, но подключиться можно без него, то это значит, что порт 1433
Может, посмотреть в sys.dm_server_registry, параметр TcpPort? Или подобный параметр, относящийся к порту, там их много...
...
Рейтинг: 0 / 0
Инстанс
    #39880250
Фотография Yasha123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndrFК первому из них можно так же подключиться просто по имени сервера: CORE-TATA.

значит, что он сидит на порту 1433.
проверяйте, на каком порту сидит инстанс, где 1433, там и можно подключиться по имени компа.
например, в первых строках выхлопа xp_readerrorlog
...
Рейтинг: 0 / 0
Инстанс
    #39880254
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alexeyvgМожет, посмотреть в sys.dm_server_registry, параметр TcpPort? Или подобный параметр, относящийся к порту, там их много...
Yasha123например, в первых строках выхлопа xp_readerrorlogА, есть же специальное dmv
sys.dm_tcp_listener_states
...
Рейтинг: 0 / 0
Инстанс
    #39880259
AndrF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TaPaK,

Ну я же на живом сервере проверил...

Сейчас прогнал на всех серверах запрос:

Код: sql
1.
SELECT SERVERPROPERTY('InstanceName'), @@SERVICENAME



Видно что NULL возвращается только на тех серверах где имя инстанса оставлено по умолчанию, а именно - MSSQLSERVER. Но ведь имя инстанса может быть задано и другое и, несмотря на это, он может быть дефолтным.

В общем, вопрос остается - как определить дефолтный ли текущий экземпляр инстанса?
...
Рейтинг: 0 / 0
Инстанс
    #39880262
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndrF,

автороставлено по умолчанию, а именно - MSSQLSERVER
это не причём

уже сказали, правильно определять что слушает 1433, но для всех вариантов надо много прав на выполнение(SERVER STATE наверное на всех)
...
Рейтинг: 0 / 0
Инстанс
    #39880274
AndrF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TaPaKуже сказали, правильно определять что слушает 1433, но для всех вариантов надо много прав на выполнение(SERVER STATE наверное на всех)

Права есть - то что делаю для админа.

Пока не получается определить порт на всех серверах. dm_tcp_listener_states есть только начиная с 2012 версии, и xp_readerrorlog не возвращает строчку с портом на 2008-м SQL-е...
...
Рейтинг: 0 / 0
Инстанс
    #39880278
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndrFTaPaKуже сказали, правильно определять что слушает 1433, но для всех вариантов надо много прав на выполнение(SERVER STATE наверное на всех)

Права есть - то что делаю для админа.

Пока не получается определить порт на всех серверах. dm_tcp_listener_states есть только начиная с 2012 версии, и xp_readerrorlog не возвращает строчку с портом на 2008-м SQL-е...
потому что это не вопрос на уровне sql сервера
...
Рейтинг: 0 / 0
Инстанс
    #39880283
Фотография Yasha123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndrFи xp_readerrorlog не возвращает строчку с портом на 2008-м SQL-е...
это просто кто-то читать не умеет
...
Рейтинг: 0 / 0
Инстанс
    #39880284
AndrF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В общем, нашел на этом же форуме от 12-го года - порт можно выдернуть следующим образом:

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
SELECT  
    s.session_id   , s.login_name ,
	c.protocol_type, c.auth_scheme, c.net_transport,
	serverproperty('ComputerNamePhysicalNetBIOS') [Server Host],
	c.local_tcp_port, c.client_tcp_port,
	c.connect_time, s.HOST_NAME [Client Host], s.program_name 
FROM sys.dm_exec_sessions s 
  JOIN sys.dm_exec_connections c 
    ON s.session_id = c.session_id
WHERE s.session_id=@@SPID
...
Рейтинг: 0 / 0
Инстанс
    #39880286
AndrF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Yasha123AndrFи xp_readerrorlog не возвращает строчку с портом на 2008-м SQL-е...
это просто кто-то читать не умеет

Ну нет такой строки. Фильтр по слову Server я все же ставить умею...
...
Рейтинг: 0 / 0
Инстанс
    #39880287
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndrF,

Код: sql
1.
2.
3.
SELECT local_tcp_port
FROM sys.dm_exec_connections
WHERE session_id = @@SPID
...
Рейтинг: 0 / 0
Инстанс
    #39880288
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndrFYasha123пропущено...

это просто кто-то читать не умеет

Ну нет такой строки. Фильтр по слову Server я все же ставить умею...

Код: sql
1.
EXEC xp_ReadErrorLog 0, 1, N'Server is listening on', N'any', NULL, NULL, 'DESC'
...
Рейтинг: 0 / 0
Инстанс
    #39880289
AndrF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну это понятно, я просто на тот момент еще не причесывал...
...
Рейтинг: 0 / 0
Инстанс
    #39880290
AndrF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TaPaKAndrFпропущено...


Ну нет такой строки. Фильтр по слову Server я все же ставить умею...

Код: sql
1.
EXEC xp_ReadErrorLog 0, 1, N'Server is listening on', N'any', NULL, NULL, 'DESC'



(0 rows affected)
...
Рейтинг: 0 / 0
Инстанс
    #39880293
Фотография Yasha123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndrFYasha123пропущено...

это просто кто-то читать не умеет

Ну нет такой строки. Фильтр по слову Server я все же ставить умею...
значит, Error log has been reinitialized. See previous log for older entries
у процедуры 3 параметра, вот и шарьтесь по соседним еррорлогам,
когда данный пишет, что has been reinitialized
...
Рейтинг: 0 / 0
Инстанс
    #39880299
AndrF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Yasha123Ну нет такой строки. Фильтр по слову Server я все же ставить умею...
значит, Error log has been reinitialized. See previous log for older entries
у процедуры 3 параметра, вот и шарьтесь по соседним еррорлогам,
когда данный пишет, что has been reinitialized[/quot]

Слишком заумно. Рабочий вариант с простеньким запросом уже найден...
...
Рейтинг: 0 / 0
Инстанс
    #39880303
Фотография Yasha123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndrFСлишком заумно. Рабочий вариант с простеньким запросом уже найден...
да ради бога.
это было к тому, что в еррорлоге порт есть всегда.
просто кто-то не умеет найти начало еррорлога
...
Рейтинг: 0 / 0
Инстанс
    #39880304
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndrFРабочий вариант с простеньким запросом уже найден...Вы про sys.dm_exec_connections?
Он может NULL вернуть, если текущая сессия не по TCP.
И вообще, может не быть сессий с TCP, так что вариант
Код: sql
1.
SELECT TOP 1 local_tcp_port FROM sys.dm_exec_connections WHERE local_tcp_port is not NULL 

тоже может не сработать.
...
Рейтинг: 0 / 0
Инстанс
    #39880306
AndrF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alexeyvgОн может NULL вернуть, если текущая сессия не по TCP.
И вообще, может не быть сессий с TCP, так что вариант

Не может. Я не пытаюсь охватить все варианты работы серверов во всем мире. Просто облегчаю отдельные моменты своей работы. Кстати, и IP-шник там же есть:

[src][/SELECT c.local_net_address, c.local_tcp_port FROM sys.dm_exec_connections c WHERE c.session_id=@@SPIDSRC]
...
Рейтинг: 0 / 0
Инстанс
    #39880308
Фотография Yasha123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alexeyvgAndrFРабочий вариант с простеньким запросом уже найден...Вы про sys.dm_exec_connections?
Он может NULL вернуть, если текущая сессия не по TCP.
И вообще, может не быть сессий с TCP, так что вариант
Код: sql
1.
SELECT TOP 1 local_tcp_port FROM sys.dm_exec_connections WHERE local_tcp_port is not NULL 

тоже может не сработать.
так надо самому же и законнектиться принудительно по TCP
...
Рейтинг: 0 / 0
Инстанс
    #39880309
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndrFalexeyvgОн может NULL вернуть, если текущая сессия не по TCP.
И вообще, может не быть сессий с TCP, так что вариант
Не может. Я не пытаюсь охватить все варианты работы серверов во всем мире. Просто облегчаю отдельные моменты своей работы.Запустите свой скрипт для облегчения работы в джобе, и будет NULL
...
Рейтинг: 0 / 0
Инстанс
    #39880310
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Yasha123alexeyvgИ вообще, может не быть сессий с TCP, так что вариант
Код: sql
1.
SELECT TOP 1 local_tcp_port FROM sys.dm_exec_connections WHERE local_tcp_port is not NULL 


тоже может не сработать.
так надо самому же и законнектиться принудительно по TCPВ принципе да, но проще искать любой коннект с TCP, уж такой на реальном продакшене всегда будет.
...
Рейтинг: 0 / 0
Инстанс
    #39880311
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alexeyvgAndrFпропущено...

Не может. Я не пытаюсь охватить все варианты работы серверов во всем мире. Просто облегчаю отдельные моменты своей работы.Запустите свой скрипт для облегчения работы в джобе, и будет NULL
да, локальный коннект даст null
...
Рейтинг: 0 / 0
Инстанс
    #39880317
AndrF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[quot TaPaK]alexeyvgпропущено...
да, локальный коннект даст null

Мне это не локально надо! Нужно с удаленного компютера собирать и периодически обновлять данные о имеющихся серверах - их типы, ноды, диски, базы и прочее что на ум взбредет. Сервера работают только по TCP... Переусложнять то что и так будет прекрасно работать совершенно нет необходимости.
...
Рейтинг: 0 / 0
28 сообщений из 28, показаны все 2 страниц
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Инстанс
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]