Tài liệu Kiểm tra SQL Server bằng Windows PowerShell – Phần 2 pptx

5 375 0
Tài liệu Kiểm tra SQL Server bằng Windows PowerShell – Phần 2 pptx

Đang tải... (xem toàn văn)

Thông tin tài liệu

Kim tra SQL Server bng Windows PowerShell Phn 2 Phn 1 ca lot bài này chúng tôi ã gii thiu cho các bn cách ping n host, ó chính là kim tra u tiên trên SQL Server. Kim tra quan trng th hai  mc h iu hành là xem xem tt c các dch v Windows có liên quan n SQL Server trên host hin có ang hot ng hay không và báo cáo v trng thái ca h thng. Phn 2 này s gii thiu cho các bn cách truy cp vào dch v Windows trên máy t xa bng cách s dng Windows PowerShell và WMI-Object. Bc 1 ánh hoc copy và paste on mã di ây vào file C:\CheckSQLServer\CheckServices.ps1. # Function to check windows services related to SQL Server Function checkservices ([string] $Hostname ) { $Services=get-wmiobject -class win32_service -computername $hostname| where {$_.name -like '*SQL*'}| select-object Name,state,status,Started,Startname,Description foreach ( $service in $Services) { if($service.state -ne "Running" -or $service.status -ne "OK" -or $service.started -ne "True" ) { $message="Host="+$Hostname+" " +$Service.Name +" "" +$Service.state +" +$Service.status +" " +$Service.Started +" " +$Service.Startname write-host $message -background "RED" -foreground "BLACk" } else { $message="Host="+$Hostname+" " +$Service.Name +" " +$Service.state +" " +$Service.status +" " +$Service.Started +" " +$Service.Startname write-host $message -background "GREEN" -foreground "BLACk" } } } Bc 2 B sung thêm vào file C:\CheckSQLServer\CheckSQL_Lib.ps1 on mã di ây: . ./checkservices.ps1 Lúc này C:\CheckSQLServer\CheckSQL_Lib.ps1 s có c pinghost và dch v kim tra (checkservices) nh th hin bên di. #Source all the functions relate to CheckSQL . ./PingHost.ps1 . ./checkservices.ps1 Lu ý: File CheckSQL_Lib.ps1 này s c cp nht ngun ca các kch bn bn mi ging nh checkservices.PS1 Bc 3 Gn vào file C:\CheckSQLServer\CheckSQLServer.ps1 bng cách copy và paste on mã di ây. checkservices $Hostname Lúc này file C:\CheckSQLServer\CheckSQLServer.ps1 s có c pinghost và checkservices nh th hin bên di. Chúng ta ã thêm vào mt s tuyên b  hin toàn b quá trình. #Objective: To check various status of SQL Server #Host, instances and databases. #Author: MAK #Date Written: June 5, 2008 param ( [string] $Hostname ) . ./CheckSQL_Lib.ps1 Write-host "Checking SQL Server " Write-host " " Write-host " " Write-host "Arguments accepted : $Hostname" write-host " " Write-host "Pinging the host machine" write-host " " PingHost $Hostname Write-host "Checking windows services on the host related to SQL Server" write-host " " checkservices $Hostname Lu ý: CheckSQLServer.ps1 này s c cp nht các iu kin mi và cng nh các tham s trong các cài t sau ca lot bài này. Ngun dn c bn load các chc nng c lit kê trong file kch bn và làm cho nó hin hu trong toàn b PowerShell session. Trong tr ng hp này, chúng ta ang dn ngun cho mt kch bn. Bc 4 Hãy th!c thi kch bn CheckSQLServer.ps1 bng vic chuyn host “Powerpc” nh mt i s, xem th hin bên di. ./CheckSQLServer.ps1 PowerPC Bn s có c các k"t qu nh th hin bên di (xem hình 1.0) Checking SQL Server Arguments accepted : PowerPC Pinging the host machine PowerPC is REACHABLE Checking windows services on the host related to SQL Server Host=PowerPC msftesql$SQL2008 Stopped OK False .\mak Host=PowerPC MSSQL$NY0QD1 Running OK True .\mak Host=PowerPC MSSQL$SQL2008 Stopped OK False .\mak Host=PowerPC MSSQLServerADHelper100 Stopped OK False NT AUTHORITY\NETWORK SERVICE Host=PowerPC SQLAgent$NY0QD1 Stopped OK False .\mak Host=PowerPC SQLAgent$SQL2008 Stopped OK False .\mak Host=PowerPC SQLBrowser Stopped OK False NT AUTHORITY\LOCAL SERVICE Host=PowerPC SQLWriter Running OK True LocalSystem Hình 1.0 T k"t qu bn có th th#y c rng b#t k$ SQL Server nào có liên quan ti dch v u không c kh%i to hoc c ánh d#u trng thái “OK” màu & và t#t c các dch v liên quan "n SQL Server ang hot ng c ánh d#u màu xanh. Bc 5 Chúng ta hãy th!c thi kch bn trên máy tính không tn ti nh th hin bên di. ./CheckSQLServer.ps1 TestMachine Khi ó bn s nhn c k"t qu nh th hin di ây (xem hình 1.1) Kt qu Checking SQL Server Arguments accepted : TestMachine Pinging the host machine TestMachine is NOT reachable Checking windows services on the host related to SQL Server Get-WmiObject : The RPC server is unavailable. (Exception from HRESULT: 0x800706BA) At C:\checksqlserver\checkservices.ps1:5 char:24 + $Services=get-wmiobject <<<< -class win32_service -computername $hostname| where {$_.name -like '*SQL*'}| select-obj ect Name,state,status,Started,Startname,Description Host=TestMachine Hình 1.1 N"u bn bt gp l'i “Get-WmiObject : The RPC server is unavailable. (Exception from HRESULT: 0x800706BA)” thì nguyên nhân có th là mt s lý do di ây: • Host không hin hu (ví d: bc 5) • T ng la khóa chn tính nng qun tr t xa N"u bn mun vô hiu hóa t ng la, hãy th!c thi lnh di ây ti nhc lnh: netsh.exe firewall set service type=REMOTEADMIN mode=ENABLE scope=ALL N"u mun gi các thi"t lp t ng la và ch( cho phép các cng c yêu cu i vi qun tr t xa, hãy th!c thi on mã di ây: netsh firewall add portopening protocol=tcp port=135 name=DCOM_TCP135 • Dch v Windows Management Instrumentation không hot ng Thi"t lp dch v WMI chy t! ng và sau ó kh%i to dch v • Add ng i dùng hin hành vào DCOM users. Kt lun Phn th hai này chúng ta ã c gii thiu v cách truy cp dch v Windows Service trên máy t xa bng Windows PowerShell và WMI-Object. Trong phn ti"p theo ca lot bài, chúng tôi s b sung thêm các kim tra khác  chúng ta không phi th!c hin t#t c các kim tra n"u ping b th#t bi. Thêm vào ó chúng tôi s gii thiu cách capture mt s thông tin phn cng và h iu hành.  . Kim tra SQL Server bng Windows PowerShell – Phn 2 Phn 1 ca lot bài này chúng tôi ã gii thiu cho các bn cách ping n host, ó chính là kim tra. C:CheckSQLServerCheckSQLServer.ps1 bng cách copy và paste on mã di ây. checkservices $Hostname Lúc này file C:CheckSQLServerCheckSQLServer.ps1

Ngày đăng: 20/01/2014, 18:20

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan