Добро пожаловать в форум, Guest >> Войти | Регистрация | Поиск | Правила | | В избранное | Подписаться | ||
Все форумы / Microsoft SQL Server |
![]() ![]() |
Топик располагается на нескольких страницах: [1] 2 вперед Ctrl→ все |
AndrF Member Откуда: Сообщений: 2194 |
Пусть на сервере есть инстансы: CORE-TATA\CORETATA CORE-TATA\CORETATA1 К первому из них можно так же подключиться просто по имени сервера: CORE-TATA. Соответственно, вопрос - можно ли как-то подключившись к CORE-TATA\CORETATA узнать что доступен и более короткий вариант подключения CORE-TATA? |
23 окт 19, 09:13 [22000415] Ответить | Цитировать Сообщить модератору |
TaPaK Member Откуда: Kiev Сообщений: 6801 |
AndrF, дефолтный инстанс называется SELECT SERVERPROPERTY('InstanceName') NULL значить можно " более короткий вариант " |
23 окт 19, 09:16 [22000418] Ответить | Цитировать Сообщить модератору |
AndrF Member Откуда: Сообщений: 2194 |
Увы - не работает. Могу подключиться "по короткому", но SERVERPROPERTY('InstanceName') возвращает не NULL... |
||
23 окт 19, 09:20 [22000426] Ответить | Цитировать Сообщить модератору |
TaPaK Member Откуда: Kiev Сообщений: 6801 |
AndrF,
|
||
23 окт 19, 09:22 [22000429] Ответить | Цитировать Сообщить модератору |
alexeyvg Member Откуда: Moscow Сообщений: 31817 |
А если имя инстанса есть, но подключиться можно без него, то это значит, что порт 1433 Может, посмотреть в sys.dm_server_registry, параметр TcpPort? Или подобный параметр, относящийся к порту, там их много... |
||
23 окт 19, 09:28 [22000437] Ответить | Цитировать Сообщить модератору |
Yasha123 Member Откуда: Сообщений: 1968 |
значит, что он сидит на порту 1433. проверяйте, на каком порту сидит инстанс, где 1433, там и можно подключиться по имени компа. например, в первых строках выхлопа xp_readerrorlog |
||
23 окт 19, 09:29 [22000440] Ответить | Цитировать Сообщить модератору |
alexeyvg Member Откуда: Moscow Сообщений: 31817 |
sys.dm_tcp_listener_states |
||||
23 окт 19, 09:35 [22000447] Ответить | Цитировать Сообщить модератору |
AndrF Member Откуда: Сообщений: 2194 |
TaPaK, Ну я же на живом сервере проверил... Сейчас прогнал на всех серверах запрос: SELECT SERVERPROPERTY('InstanceName'), @@SERVICENAME Видно что NULL возвращается только на тех серверах где имя инстанса оставлено по умолчанию, а именно - MSSQLSERVER. Но ведь имя инстанса может быть задано и другое и, несмотря на это, он может быть дефолтным. В общем, вопрос остается - как определить дефолтный ли текущий экземпляр инстанса? |
23 окт 19, 09:38 [22000454] Ответить | Цитировать Сообщить модератору |
TaPaK Member Откуда: Kiev Сообщений: 6801 |
AndrF,
это не причём уже сказали, правильно определять что слушает 1433, но для всех вариантов надо много прав на выполнение(SERVER STATE наверное на всех) |
||
23 окт 19, 09:42 [22000462] Ответить | Цитировать Сообщить модератору |
AndrF Member Откуда: Сообщений: 2194 |
Права есть - то что делаю для админа. Пока не получается определить порт на всех серверах. dm_tcp_listener_states есть только начиная с 2012 версии, и xp_readerrorlog не возвращает строчку с портом на 2008-м SQL-е... |
||
23 окт 19, 09:50 [22000482] Ответить | Цитировать Сообщить модератору |
TaPaK Member Откуда: Kiev Сообщений: 6801 |
потому что это не вопрос на уровне sql сервера |
||||
23 окт 19, 09:53 [22000487] Ответить | Цитировать Сообщить модератору |
Yasha123 Member Откуда: Сообщений: 1968 |
это просто кто-то читать не умеет |
||
23 окт 19, 09:59 [22000492] Ответить | Цитировать Сообщить модератору |
AndrF Member Откуда: Сообщений: 2194 |
В общем, нашел на этом же форуме от 12-го года - порт можно выдернуть следующим образом: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 |
23 окт 19, 09:59 [22000493] Ответить | Цитировать Сообщить модератору |
AndrF Member Откуда: Сообщений: 2194 |
Ну нет такой строки. Фильтр по слову Server я все же ставить умею... |
||||
23 окт 19, 10:01 [22000495] Ответить | Цитировать Сообщить модератору |
TaPaK Member Откуда: Kiev Сообщений: 6801 |
AndrF,SELECT local_tcp_port FROM sys.dm_exec_connections WHERE session_id = @@SPID |
23 окт 19, 10:02 [22000496] Ответить | Цитировать Сообщить модератору |
TaPaK Member Откуда: Kiev Сообщений: 6801 |
EXEC xp_ReadErrorLog 0, 1, N'Server is listening on', N'any', NULL, NULL, 'DESC' |
||||
23 окт 19, 10:04 [22000498] Ответить | Цитировать Сообщить модератору |
AndrF Member Откуда: Сообщений: 2194 |
Ну это понятно, я просто на тот момент еще не причесывал... |
23 окт 19, 10:04 [22000499] Ответить | Цитировать Сообщить модератору |
AndrF Member Откуда: Сообщений: 2194 |
(0 rows affected) |
||||
23 окт 19, 10:05 [22000501] Ответить | Цитировать Сообщить модератору |
Yasha123 Member Откуда: Сообщений: 1968 |
значит, Error log has been reinitialized. See previous log for older entries у процедуры 3 параметра, вот и шарьтесь по соседним еррорлогам, когда данный пишет, что has been reinitialized |
||||
23 окт 19, 10:07 [22000504] Ответить | Цитировать Сообщить модератору |
AndrF Member Откуда: Сообщений: 2194 |
значит, Error log has been reinitialized. See previous log for older entries у процедуры 3 параметра, вот и шарьтесь по соседним еррорлогам, когда данный пишет, что has been reinitialized[/quot] Слишком заумно. Рабочий вариант с простеньким запросом уже найден... |
||
23 окт 19, 10:12 [22000513] Ответить | Цитировать Сообщить модератору |
Yasha123 Member Откуда: Сообщений: 1968 |
да ради бога. это было к тому, что в еррорлоге порт есть всегда. просто кто-то не умеет найти начало еррорлога |
||
23 окт 19, 10:19 [22000525] Ответить | Цитировать Сообщить модератору |
alexeyvg Member Откуда: Moscow Сообщений: 31817 |
Он может NULL вернуть, если текущая сессия не по TCP. И вообще, может не быть сессий с TCP, так что вариант SELECT TOP 1 local_tcp_port FROM sys.dm_exec_connections WHERE local_tcp_port is not NULLтоже может не сработать. |
||
23 окт 19, 10:19 [22000528] Ответить | Цитировать Сообщить модератору |
AndrF Member Откуда: Сообщений: 2194 |
Не может. Я не пытаюсь охватить все варианты работы серверов во всем мире. Просто облегчаю отдельные моменты своей работы. Кстати, и IP-шник там же есть: [src][/SELECT c.local_net_address, c.local_tcp_port FROM sys.dm_exec_connections c WHERE c.session_id=@@SPIDSRC] |
||
23 окт 19, 10:23 [22000533] Ответить | Цитировать Сообщить модератору |
Yasha123 Member Откуда: Сообщений: 1968 |
так надо самому же и законнектиться принудительно по TCP |
||||
23 окт 19, 10:24 [22000535] Ответить | Цитировать Сообщить модератору |
alexeyvg Member Откуда: Moscow Сообщений: 31817 |
|
||||
23 окт 19, 10:25 [22000537] Ответить | Цитировать Сообщить модератору |
Топик располагается на нескольких страницах: [1] 2 вперед Ctrl→ все |
Все форумы / Microsoft SQL Server | ![]() |