㈠ 如何查看本機已經安裝的「sqlserver」的所有實例名
您好,很高興能幫助您,
來源於csdn
一、
查看實例名時可用
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;
}
你的採納是我前進的動力,還有不懂的地方,請你繼續「追問」!
如你還有別的問題,可另外向我求助;答題不易,互相理解,互相幫助!
㈡ 如何刪除sqlserver實例
若要維護或更新 SQL Server 實例,您必須是擁有「作為服務登錄」許可權的本地管理員。
使用此過程卸載 SQL Server 之前,請注意以下重要信息:
建議使用「控制面板」中的「添加或刪除程序」卸載 SQL Server。
在同時運行 SQL Server 和早期 SQL Server 版本的計算機上,企業管理器和其他依賴於 SQL-DMO 的程序可能被禁用。這可能出現在以下情況中:
並行安裝了 SQL Server 2008、SQL Server 2000 和 SQL Server 7.0 三者中的任意組合之後,又卸載了其中任何一個或多個實例。
並行安裝了 SQL Server 2000 和 SQL Server 2008,且是在安裝 SQL Server 2008 後安裝 SQL Server 2000。
https://msdn.microsoft.com/zh-cn/magazine/ms143412(en-us,SQL.100).aspx
㈢ sqlserver 什麼是資料庫實例
一個SQL實例就是一個SQL服務務器引擎
http://blog.csdn.net/liuliuyushun/article/details/4215233
http://..com/link?url=p80cLMLr2JVuXjW_
㈣ sqlserver 多實例怎麼連接資料庫
1.鏈接資料庫的時候 指定實例名 例如 192.168.0.2\實例名,
2.使用埠直接鏈接(需要在配置里指定埠號)192.168.0.2,1435
㈤ JDBC連接SQLServer多個實例
配置資料庫連接池使用單例模式直接改配置文件
㈥ SQLServer一個實例有很多資料庫,如何查詢該實例所有資料庫的消耗CPU佔Top50的SQL腳本
網上一搜一堆的腳本。使用sys.databases和sys.dm_exec_sessions,sys.dm_exec_connections三個DMV進行關聯就可以。語句你自己去網上找吧,希望你能靠自己學會解決問題。
㈦ SQLServer多實例更改默認實例
能看懂么?我沒改什麼埠,我電腦兩個實例名一個叫SQL2000一個叫SQL2008
㈧ 什麼是sqlserver的集群
由二台或更多物理上獨立的伺服器共同組成的「虛擬」伺服器稱之為集群伺服器。一項稱做MicroSoft集群服務(MSCS)的微軟服務可對集群伺服器進行管理。一個SQL Server集群是由二台或更多運行SQL Server的伺服器(節點)組成的虛擬伺服器。如果集群中的一個節點發生故障,集群中的另一個節點就承擔這個故障節點的責任。
認為一個SQL Server集群能夠給集群中的兩個節點帶來負載平衡,這是一種常見的誤解。雖然這似乎很有用,但卻是不正確的。這也意味著集束SQL Server不能真正提高性能。集束SQL Server只能提供故障轉移功能。故障轉移就是當系統中的一台機器發生故障失去其功能時,另一台機器將接手運行它的SQL Server實例。這種功能失效可能是由於硬體故障、服務故障、人工故障或各種其它原因。
為何要集束SQL Server環境?
在實用性方面,集群SQL Server環境令人滿意。在進行故障轉移時,將資料庫實例由一台伺服器轉移到另一台伺服器的時間非常短暫,一般只需要3至7秒鍾。雖然需要重建連接,但對資料庫的終端用戶而言,故障轉移處理通常是透明的。低廉的故障轉移成本還可幫助你對集群中的節點進行維護,而不會造成伺服器完全無法訪問。
SQL Server集群類型
一共有兩種類型的SQL Server集群:主動/被動集群和主動/主動集群。下面分別對它們進行說明(說明以兩個節點的SQL Server集群為基礎)。
主動/被動集群
在這種類型的集群中,一次只有一個節點控制SQL Server資源。另一個節點一直處於備用模式,等待故障發生。進行故障轉移時,備用的節點即取得SQL Server資源的控制權。
優點:由於伺服器上只有一個實例在運行,所以在進行故障轉移時,不需要另外的伺服器來接管兩個SQL Server實例,性能也不會因此降低。
缺點:由於虛擬伺服器上只有一個SQL Server實例在運行,另一台伺服器總是處理備用模式與空閑狀態。這意味著你並沒有充分利用你購買的硬體。
主動/主動集群
在這種類型的集群中,集群中的每個節點運行一個獨立且主動的SQL Server實例。發生節點故障時,另一個節點能夠控制發生故障節點的SQL Server實例。然後這個正常的節點將運行兩個SQL Server實例——它自己的實例和發生故障的實例。
優點:通過這種配置,你能夠充分利用你的硬體。在這樣的系統中,兩個伺服器都在運行,而不是只有一台伺服器運行,而另一台處於等待故障發生的備用模式,因此你能夠充分利用你購買的機器。
缺點:如果進行故障轉移,一台伺服器運行兩個SQL Server實例,性能就會受到不利影響。然而,性能降低總比虛擬伺服器完全失靈要強得多。這種配置的另一故障在於它要求購買的許可要比主動/被動集群多一些。因為集群在運行兩個主動SQL Server實例,這要求你購買兩個單獨的伺服器許可。在某些情況下,這也可能對你形成阻礙。
集群考慮
在高實用性方面,集群SQL Server環境有一定的優勢。然而,高實用性也確實伴隨某種折衷。
首先,建立一個集群SQL Server環境非常昂貴。這是因為集群中的節點必須遵照集群節點的兼容性列表。而且,還需要建立一個復雜的網路,機器的配置必須幾乎相同,同時需要實現資料庫文件磁碟子系統共享。存儲區網路(SAN)是建立這種子系統的不錯選擇,但SAN並非必要,而且十分昂貴。另外,如果你正在運行一個主動/主動集群,你需要為集群中運行SQL Server實例的每台機器的處理器購買一個許可。
因為當地集群主要局限於同一地理區域,自然災難可能會使集群完全失靈。在那種情況下,你需要轉移到災難恢復站點進行繼續操作。你也可以建立地理分散的SQL Server集群,但這樣的系統更加復雜與昂貴。