探讨:如何查看和获取SQL Server实例名

一、查看實例名時可用

1、服务—SQL Server(实例名),默认实例为(MSSQLSERVER)

或在连接企业管理时-查看本地实例

2、通過注冊表
HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Microsoft SQL Server/InstalledInstance

3、用命令
sqlcmd/osql
sqlcmd -L
sqlcmd -Lc
osql -L

获取可用實例,以下舉一個例子,根據自己情況改
复制代码 代码如下:
DECLARE @Table TABLE ( instanceName  sysname NULL)

insert @Table EXEC sys.xp_cmdshell 'sqlcmd -Lc'

--LEFT(@@serverName,CHARINDEX('/',@@serverName+'/')-1) 替代為本機名就行了 , 根據實例命名規則判斷

SELECT * FROM @Table WHERE instanceName LIKE   LEFT( @@serverName , CHARINDEX ( '/' , @@serverName + '/' )- 1)+ '%'

二、

--1.
SELECT SERVERPROPERTY('InstanceName')

--2
sp_helpserver

--3
select @@SERVERNAME

--4
SELECT * FROM SYS.SYSSERVERS

--5
SELECT * FROM SYS.SERVERS

三、

EXECUTE xp_regread @rootkey='HKEY_LOCAL_MACHINE',
@key='SOFTWARE/Microsoft/Microsoft SQL Server/Instance Names/SQl',
@value_name='MSSQLSERVER'

四、

Select Case
When SERVERPROPERTY ('InstanceName') Is Null Then @@SERVERNAME
Else SERVERPROPERTY ('InstanceName')
End

五、在本地或网络得到所有实例名

1、You can do with registry reading , like my code
复制代码 代码如下:
using System;
using Microsoft.Win32;

namespace SMOTest
{
    class Program
    {
      static void Main()
      {
        RegistryKey rk = Registry.LocalMachine.OpenSubKey(@"SOFTWARE/Microsoft/Microsoft SQL Server");
        String[] instances = (String[])rk.GetValue("InstalledInstances");
        if (instances.Length > 0)
        {
           foreach (String element in instances)
           {
              if (element == "MSSQLSERVER")
                 Console.WriteLine(System.Environment.MachineName);
              else
                 Console.WriteLine(System.Environment.MachineName + @"/" + element);
           }
        }
      }
    }
}

2、You can use SQLDMO.dll to retrieve the list of SQL Server instances.  The SQLDMO.dll can be found from the "C:/Program Files/Microsoft SQL Server/80/Tools/Bin" folder. Refer this assembly in your project and the following snippet would return a List Object containing the sql server instances.
复制代码 代码如下:
public static List GetSQLServerInstances()
{
NameList sqlNameList = null;
Application app = null;

var sqlServers = new List();
try
{
app = new ApplicationClass();
sqlNameList = app.ListAvailableSQLServers();
foreach (string sqlServer in sqlNameList)
sqlServers.Add(sqlServer);
}
catch(Exception ex)
{
//play with the exception.
}
finally
{
if (sqlNameList != null)
sqlNameList = null;
if (app != null)
app = null;
}
return sqlServers;
}

时间: 2024-07-30 15:04:31

探讨:如何查看和获取SQL Server实例名的相关文章

探讨:如何查看和获取SQL Server实例名_MsSql

一.查看實例名時可用 1.服务-SQL Server(实例名),默认实例为(MSSQLSERVER) 或在连接企业管理时-查看本地实例 2.通過注冊表HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Microsoft SQL Server/InstalledInstance 3.用命令sqlcmd/osqlsqlcmd -Lsqlcmd -Lcosql -L 获取可用實例,以下舉一個例子,根據自己情況改 复制代码 代码如下: DECLARE @Table TABLE

《PowerShell V3——SQL Server 2012数据库自动化运维权威指南》——2.2 列出SQL Server实例

2.2 列出SQL Server实例 在这个方案中,我们将会列出本地网络中的所有SQL Server实例. 2.2.1 准备 以管理员帐号登录有SQL Server开发实例的服务器. 2.2.2 如何做- 1.通过"Start | Accessories | Windows PowerShell | Windows PowerShell ISE"打开PowerShell控制台. 2.让我们使用Start-Service cmdlet来启动SQLBrowser服务. Import-Mod

HOW TO:在 SQL Server 实例之间传输登录和密码

server 概要在将数据库移动到新服务器后,用户可能无法登录到新服务器.相反,他们会收到下面的错误信息: Msg 18456, Level 16, State 1Login failed for user '%ls'. 您必须将登录和密码传输到新服务器.本文介绍如何向新服务器传输登录和密码. 返回页首如何在正运行 SQL Server 7.0 的服务器之间传输登录和密码SQL Server 7.0 数据转换服务 (DTS) 对象传输功能可在两台服务器之间传输登录和用户,但它不传输 SQL Se

在SQL Server实例之间传输登录和密码

概要 在将数据库移动到新服务器后,用户可能无法登录到新服务器.相反,他们会收到下面的错误消息: Msg 18456, Level 16, State 1Login failed for user '%ls'. 您必须将登录和密码传输到新服务器.本文介绍如何将登录和密码传输到新服务器. 如何在运行 SQL Server 7.0 的服务器之间传输登录和密码 SQL Server 7.0 数据转换服务 (DTS) 对象传输功能可在两台服务器之间传输登录和用户,但它不传输 SQL Server 验证登录

《PowerShell V3——SQL Server 2012数据库自动化运维权威指南》——1.8 创建SQL Server实例对象

1.8 创建SQL Server实例对象 大多数在SQL Server中的操作都需要连接到实例. 1.8.1 准备 打开PowerShell控制台.PowerShell ISE或者你喜欢的PowerShell编辑器. 你需要注意你的实例名是什么.如果你有一个默认实例,你可以使用机器名.如果你有一个命名实例,这个格式将会是<机器名><实例名>. 1.8.2 如何做- 如果你使用Windows验证连接到实例,使用你当前的Windows登录,按如下步骤操作. 1.导入SQLPS模块. #

《PowerShell V3——SQL Server 2012数据库自动化运维权威指南》——2.6 修改SQL Server实例配置

2.6 修改SQL Server实例配置 本方案讲述如何使用PowerShell修改实例配置设置. 2.6.1 准备 在本方案,你将会: 修改FillFactor到60%启用SQL Server Agent设置最小服务器内存到500MB修改验证方式为Mixed 2.6.2 如何做- 让我们用PowerShell修改一些SQL Server设置. 1.通过"Start | Accessories | Windows PowerShell | Windows PowerShell ISE"

安装完成后如何找回SQL Server实例安装时的序列号_MsSql

当需要再次安装SQL Server时,如果序列号找不到了,可以试着从已经安装的实例里找回序列号,因为安装完SQL Server后,序列号(Product Key)被保存在注册表里: MSDN订阅下载的安装包是内置序列号的,则没有这个困扰. 一. 序列号保存在哪 通过无文档记载的扩展存储过程xp_regread读取注册表: --For SQL Server 2008, 2008 R2 use master GO exec xp_regread 'HKEY_LOCAL_MACHINE','SOFTW

sqlserver-如何获取SQL SERVER 2008 存储过程参数默认值

问题描述 如何获取SQL SERVER 2008 存储过程参数默认值 比如我的存储过程创建语句如下: CREATE PROC [dbo].[SearchBillDetail] ( @OpBeginDate DATETIME , @OpEndDate DATETIME , @BillTypeID INT , @BillOperType INT , @SaleOperID INT = 1, @DrCompID INT = NULL ) AS SET NOCOUNT ON -- 后面省略 这是我需要通

将 SQL Server 实例设置为自动启动(SQL Server 配置管理器)

本主题说明如何使用 SQL Server 配置管理器在 SQL Server 2012 中将 SQL Server 实例设置为自动启动. 在安装过程中,SQL Server 通常配置为自动启动. 如果没有这样做,则可以随时更改该设置. 使用 SQL Server 配置管理器 将 SQL Server 实例设置为自动启动 在"开始"菜单中,依次指向"所有程序". Microsoft SQL Server 2012 ."配置工具",然后单击"