连接到正确的远程SQL服务器

时间:2013-06-13 16:52:55

标签: sql sql-server

在我们的开发服务器上,我们安装了三个版本的SQL Server(SQLEXPRESS 08,SQL2008 R2和SQL 2012)。

在服务中,我可以看到以下实例:

SQL Server (MSSQLSERVER)
SQL Server (SQLEXPRESS)
SQL Server (SQL2008)

当我在SQL Mgmt Studio中打开所有三台服务器并连接到所有三台服务器时,我看到服务器的以下名称:

(local) (SQL Server 11.0.3128 - OBX1\Administrator)
(local)\SQLEXPRESS (SQL Server 10.50.2500 - OBX1\Administrator)
(local)\SQL2008 (SQL Server 10.50.2500 - OBX1\Administrator)

当我通过IP地址或服务器URL连接到服务器时,它连接到SQLEXPRESS实例,但我需要连接2012实例,即(local) (SQL Server 11.0.3128 - OBX1\Administrator)

无论我尝试什么,我都无法连接到默认实例以外的任何实例,由于某种原因,它似乎是SQLEXPRESS。

查找其他实例的正确连接值的示例??

截图如下: enter image description here

如果我RDP到服务器并打开SQL Mgmt Studio,我有三个服务器连接选项,(local), (local)\SQL2008, (local)\SQLEXPRESS。如果我选择(local)并运行命令以获取服务器名称和版本,我会获得名称OBX1和版本2012。如果我选择(local)\SQL2008并运行相同的命令,我会获得OBX1\SQL2008SQL Server 2008 R2(sp1),如果我选择(local)\SQLEXPRESS并运行命令,我会获得OBX1\SQLEXPRESS和{{1 }}

鉴于此附加信息,如何将仅SQL Server 2008 R2 (SP1)远程实例与IP地址连接?这可能吗?

同样,目前如果我在(local)远程连接,它将连接到SQLEXPRESS实例。如果我尝试连接到,例如像这样的SQLEXPRESS实例,the_ip_address它再次连接到SQLEXPRESS实例。

3 个答案:

答案 0 :(得分:1)

您可能还需要识别并随后指定端口号。即:

tcp:MyServer,7701
tcp:MyServer,7704

请注意,上面的端口号来自我的一个安装 - 您的安装可能会有所不同。

要识别端口号,请转到SQL Server配置管理器,然后查看SQL Server网络配置。您应该在此处看到实例的单独条目,每个实例的属性应包括TCP端口或动态端口等。

This回答可能有用。

答案 1 :(得分:1)

重申:https://serverfault.com/questions/104922/sql-server-connection-string-question

要连接到指定的SQL Server实例,您可以:

  • 在连接字符串中指定服务器(机器)名称和实例名称:

    Server=myServerName\myInstanceName;Database=myDataBase;Trusted_Connection=True;
    
  • 指定特定端口以及服务器(计算机)名称或IP地址:

    Server=myServerName,1437;Database=myDataBase;Trusted_Connection=True;
    Server=123.98.76.45,1437;Database=myDataBase;Trusted_Connection=True;
    

    注意:指定端口1433 [通常]将为您提供计算机上默认的未命名SQL Server实例(但并不总是因为它取决于SQL Server的安装和配置方式)。另请注意,指定显式端口以及实例名称毫无意义。

如果有疑问,请访问http://www.connectionstrings.com/几乎任何数据库[虽然连接/配置Oracle连接是它自己特有的地狱形式]。

答案 2 :(得分:0)

您应该启用 SQL浏览器服务,但很可能正在运行。还要确保使用SQL Server程序组中的 SQL Server Configuration Manager 应用程序为每项服务启用TCP协议。您将在 SQL Server网络配置下找到这些设置。 SQL Some versions默认禁用TCP / IP。

我不确定2012 SQL Server配置是否会看到其他实例,因此您可能需要在多个位置进行更改。我将从2012年的Config Manager开始。

在设置实例以使用动态端口时指定端口号可能不是一个好主意。

某些应用程序要求您设置静态端口 - 通常使用JDBC应用程序。

如果您仍然遇到问题,请检查防火墙。 Portqry和telnet可以帮助测试连接性。