Verbindung zu einer benannten MS-SQL-Instanz herstellen

Microsoft SQL Server (MS-SQL) bietet die Funktion benannte Instanzen. Mit diesem Feature können Sie mehrere Datenbanken mit unterschiedlichen Einstellungen auf demselben Host (oder in Cluster-Hosts) ausführen. Jede Datenbankinstanz wird auf einem eigenen Port ausgeführt. Wenn Sie jedoch MS-SQL-kompatible Clients verwenden, die unter Windows ausgeführt werden, können Sie eine Verbindung per Name anstelle per Portnummer herstellen. Wenn Ihr Hostname beispielsweise dbserver und Ihre Instanz proddb heißt, stellen Sie eine Verbindung über den Hostnamen dbserver\proddb her.

Verbindung mit benannten MS-SQL-Instanzen

  1. Ihr Client kontaktiert den Host, der auf dem MS-SQL-Standardport (1433) benannt ist.
  2. MS-SQL antwortet mit dem Port der benannten Instanz.
  3. Der Client stellt dann eine Verbindung zu diesem Port her.

Looker kann die Portnummer einer benannten Instanz auf diese Weise nicht finden. Sobald Looker eine Verbindung zu einem Port herstellt, erwartet es, Abfragen ausführen zu können, und stellt keine Verbindung zu einem anderen Port her.

So verbinden Sie eine benannte MS-SQL-Instanz mit Looker

MS-SQL wählt beim Start einen zufälligen Port aus. Damit Looker eine Verbindung zu einer benannten MS-SQL-Instanz herstellen kann, müssen Sie den Port ermitteln, auf dem die benannte Instanz ausgeführt wird:

  • Im Artikel SQL Server – Finding TCP Port Number SQL Instance Is Listening On wird die Methode zum Suchen des Ports beschrieben. Obwohl der Artikel aus dem Jahr 2012 stammt, ist das Verfahren für die verschiedenen Versionen von MS-SQL ähnlich.
  • Nachdem Sie den Port gefunden haben, können Sie den Portnamen in das Feld Host:Port in der Datenbankverbindungskonfiguration von Looker eingeben. Wenn der Port beispielsweise 61499 und der Host dbserver heißt, sieht die Verbindung in Looker so aus:

      host: dbserver
      port: 61499
  • HINWEIS:Der Datenbankhostname ist nicht in der Form dbserver\proddb, wie wenn Sie die Verbindung über den Instanznamen herstellen würden.
  • ist zu beachten, dass MS-SQL bei jedem Neustart des Servers möglicherweise einen anderen Port für die genannte Instanz auswählt. Möglicherweise müssen Sie in MS-SQL die Firewallregeln ändern und Looker so konfigurieren, dass der neue Port verwendet wird. Um zu vermeiden, dass sich Ports ändern, können Sie Ihrer benannten Instanz einen statischen Port zuweisen. Weitere Informationen finden Sie unter How to Assign a Static Port to a SQL Server Named Instance – and Avoid a Common Pitfall (Einem benannten SQL Server-Server einen statischen Port zuweisen – und eine häufige Falle vermeiden).