Solved

powershell script to connect standalone or cluster SQL

Posted on 2013-01-22
2
695 Views
Last Modified: 2013-01-23
Hello,

How can I use this script for connect to standalone or cluster SQL :
$list_inst = (get-service -Name "MSSQL*" -exclude "*Launcher*" | Where-Object {$_.status -eq "Running"})

foreach($inst in $list_inst) {
	$inst_name = $inst.name.replace("MSSQL$","")
	try
	{
	$cluster=get-wmiobject -class "MSCluster_Cluster" -namespace "root\mscluster" -computername "$mach_name" -ErrorAction Stop | select -ExpandProperty Name    
	}
	catch [Exception]
	{ 
    	echo "$cluster" | out-file $LOG_FILE -ErrorVariable ERR1 -encoding "default" -append -ErrorAction silentlycontinue 
	}
	function GetClusterSQL
	{
    	param($cluster)
   
    	gwmi -class "MSCluster_Resource" -namespace "root\mscluster" -computername $cluster  | where {$_.type -eq "SQL Server"} | Select `
    	@{n='ServerInstance';e={("{0}\{1}" -f $_.PrivateProperties.VirtualServerName,$_.PrivateProperties.InstanceName).TrimEnd('\')}} | 
    	Select -ExpandProperty ServerInstance
   
	}
	if($cluster -ne $null) {
	$list_vsql = GetClusterSQL $cluster
	}
	if($cluster -eq $null) {
		$ser_name = (Get-WmiObject Win32_Computersystem).Name
	}

	if($inst_name -eq "MSSQLSERVER") {
		$server = $ser_name
	}
	if($cluster -ne $null) {
	foreach($vsql in $list_vsql) {
		$server = $vsql
		[string] $ser_name =  $server.split("\")[0]
	}
	}
	$server = $ser_name + '\'+$inst_name
	function IsMSSQLUp([string] $server)
	{
		trap { 
			write-host "Message: " $_.Exception.Message ; 
			return $false ; 
		} ;

		$Connection = New-Object System.Data.SQLClient.SQLConnection
		$Connection.ConnectionString = "server=$server;Database=master;trusted_connection=true;"
		$Connection.Open()
		return $true;
		$Connection.close()
	}


	$IsMSSQLUp = IsMSSQLUp([string] $server)
}

Open in new window


Thanks

bibi
0
Comment
Question by:bibi92
2 Comments
 
LVL 39

Accepted Solution

by:
lcohan earned 500 total points
ID: 38806443
0
 

Author Closing Comment

by:bibi92
ID: 38809247
Thanks bibi
0

Featured Post

Better Security Awareness With Threat Intelligence

See how one of the leading financial services organizations uses Recorded Future as part of a holistic threat intelligence program to promote security awareness and proactively and efficiently identify threats.

Join & Write a Comment

Set OWA language and time zone in Exchange for individuals, all users or per database.
This article explains how to prepare an HTML email signature template file containing dynamic placeholders for users' Azure AD data. Furthermore, it explains how to use this file to remotely set up a department-wide email signature policy in Office …
Internet Business Fax to Email Made Easy - With eFax Corporate (http://www.enterprise.efax.com), you'll receive a dedicated online fax number, which is used the same way as a typical analog fax number. You'll receive secure faxes in your email, fr…
Get a first impression of how PRTG looks and learn how it works.   This video is a short introduction to PRTG, as an initial overview or as a quick start for new PRTG users.

708 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

13 Experts available now in Live!

Get 1:1 Help Now