SSMS
 sql >> база данни >  >> Database Tools >> SSMS

Отдалечена връзка с MS SQL - Грешка при използване на pyodbc срещу успех при използване на SQL Server Management Studio

„Но защо...?“

За тези, които се интересуват от защо SQL Server Management Studio (SSMS) може да се свърже с servername\instance докато други приложения (като нашите pyodbc приложения) не могат, това е защото SSMS поддържа MRU (Най-скоро използван) списък с номера на портове в системния регистър на Windows на

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\Client\SuperSocketNetLib\LastConnect

HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\MSSQLServer\Client\SuperSocketNetLib\LastConnect

Всеки запис на MRU (стойност в регистъра) изглежда така:

Name: PANORAMA\SQLEXPRESS
Type: REG_SZ 
Data: -1006030326:tcp:PANORAMA,52865

След като SSMS се свърже успешно по име на екземпляр чрез услугата SQL Browser на отдалечената машина, той може да продължи да се свързва по име на екземпляр, дори ако SQL браузърът вече не работи на отдалечената машина, при условие че номерът на порта не е променен. Приложенията, които не използват този списък MRU (като нашето приложение pyodbc), трябва да имат услугата SQL Browser, работеща на отдалечената машина всеки път, когато искат да се свържат по име на екземпляр.

Най-често срещаният сценарий:

  • Искам да се свържа с YOUR-PC\SQLEXPRESS . Опитвам се да направя това от SSMS на MY-PC , но не работи, защото SQL браузърът е инсталиран със „Стартов режим“, зададен на „Ръчно“ на YOUR-PC .
  • Моля ви да стартирате услугата SQL браузър на YOUR-PC , и любезно се съобразявате, но просто стартирате услугата и забравяте да промените настройката „Стартов режим“ на „Автоматично“.
  • Мога да се свържа чрез SSMS (който кешира YOUR-PC\SQLEXPRESS порт в MRU). Моето приложение за Python също може да се свърже.
  • След следващия път YOUR-PC се рестартира, мога да се свържа чрез SSMS (чрез MRU), но моето приложение за Python не може (защото услугата SQL Browser вече не работи на YOUR-PC ).


  1. DBeaver
  2.   
  3. phpMyAdmin
  4.   
  5. Navicat
  6.   
  7. SSMS
  8.   
  9. MySQL Workbench
  10.   
  11. SQLyog
  1. SQL Server 2012 Management Studio за Windows XP

  2. Как да използвате git като доставчик на контрол на източника за SQL Server Management Studio

  3. Контрол на мрежата в SSMS

  4. БУТОНЪТ „НОВО ЗАПУСКАНЕ“ на SQL Server Express Е ИЗКЛЮЧЕНО

  5. TSQL Query връща стойности за всеки час за последните 24 часа