Microsoft Windows Power Shell và SQL Server 2005 SMO - Phần IV
Số trang: 10
Loại file: pdf
Dung lượng: 454.60 KB
Lượt xem: 7
Lượt tải: 0
Xem trước 2 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Phần I và Phần II của loạt bài này đã chỉ dẫn các thiết lập Power Shell, SMO và WMI cmdlet đơn giản. Phần III chỉ dẫn viết mã PowerShell và kết nối với SQL Server. Phần 4 sẽ giới thiệu cách sử dụng mã PowerShell để lặp nội dung tập tin và kết nối tới các máy chủ khác. Hãy tưởng tượng rằng chúng ta muốn kết nối tới các SQL Servers khác nhau và thu thập thông tin chính xác như tên máy chủ, phiên bản và tất cả tên các cơ sở dữ liệu. Bước 1 Chúng...
Nội dung trích xuất từ tài liệu:
Microsoft Windows Power Shell và SQL Server 2005 SMO - Phần IV Microsoft Windows Power Shell và SQL Server 2005 SMO - Phần IV Phần I và Phần II của loạt bài này đã chỉ dẫn các thiết lập Power Shell, SMO và WMI cmdlet đơn giản. Phần III chỉ dẫn viết mã PowerShell và kết nối với SQL Server. Phần 4 sẽ giới thiệu cách sử dụng mã PowerShell để lặp nội dung tập tin và kết nối tới các máy chủ khác. Hãy tưởng tượng rằng chúng ta muốn kết nối tới các SQL Servers khác nhau và thu thập thông tin chính xác như tên máy chủ, phiên bản và tất cả tên các cơ sởdữ liệu.Bước 1Chúng ta cần tạo một đoạn mã PowerShell hiển thị tất cả các thông tin trên đối với một máy chủ.Tạo connect2.ps1 như minh họa dưới đây. [Hình 1.0]param ( [string] $SQLSERVER)$SqlConnection = New-Object System.Data.SqlClient.SqlConnection$SqlConnection.ConnectionString = Server=$SQLSERVER;Database=master;Integrated Security=True$SqlCmd = New-Object System.Data.SqlClient.SqlCommand$SqlCmd.CommandText = select Servername: +@@servername as Result union Select Version:+@@version as Result union select Database: +name from sysdatabases asResultorder by Result desc $SqlCmd.Connection = $SqlConnection$SqlAdapter = New-Object System.Data.SqlClient.SqlDataAdapter$SqlAdapter.SelectCommand = $SqlCmd$DataSet = New-Object System.Data.DataSet$SqlAdapter.Fill($DataSet)$SqlConnection.Close()$DataSet.Tables[0] Hình 1.0Bước 2Thực hiện đoạn mã sau: [Hình 1.1]./connect2 HOMEChú ý: HOME là tên máy chủ. Hãy thay vào đó tên máy chủ của bạn.Kết quảResult------Version:Microsoft SQL Server 2000 - 8.00.2039 (Intel X86) ...Servername: HOMEDatabase: VixiaTrackDatabase: vixiadataDatabase: vixiaDatabase: TrackEquipmentDatabase: testDatabase: tempdbDatabase: Sales2Database: SalesDatabase: pubsDatabase: NorthwindDatabase: msdbDatabase: modelDatabase: masterDatabase: Legacy_VixiaDatabase: abc3Database: abc2Database: abc Hình 1.1Bước 3Hãy lặp qua một tập tin và hiển thị ra nội dung của tập tin đó. Tạo mã loop1.ps1 sau đây: [Hình1.2] Đồng thời tạo tập tin serverlist.txt file. [Hình 1.3]param ([string] $filename)$computers = get-content $filenameforeach ($computer in $computers){write-host $computer} Hình 1.2Serverlist.txtHOMEHOMESQLEXPRESS Hình 1.3Hãy thực hiện mã loop1.ps1. [Hình 1.4]./loop1 serverlist.txt Hình 1.4Bước 4Bây giờ hãy kết hợp connect2.ps1 và loop1.ps1 để thu được tên của SQL Server, phiên bản SQLServer và tất cả tên các cơ sở dữ liệu liệt kê trên serverlist.txt.Tạo connect3.ps1 như sau: [Hình 1.5]param ([string] $filename)$SqlConnection = New-Object System.Data.SqlClient.SqlConnection$computers = get-content $filenameforeach ($computer in $computers){write-host Details of the Server : $computerwrite-host -----------------------------------$SqlConnection.ConnectionString =Server=$computer;Database=master;Integrated Security=True$SqlCmd = New-Object System.Data.SqlClient.SqlCommand$SqlCmd.CommandText = select Servername: +@@servername as Result unionSelect Version: +@@version as Result union select Database: +name from sysdatabases asResultorder by Result desc $SqlCmd.Connection = $SqlConnection$SqlAdapter = New-Object System.Data.SqlClient.SqlDataAdapter$SqlAdapter.SelectCommand = $SqlCmd$DataSet = New-Object System.Data.DataSet$SqlAdapter.Fill($DataSet)$SqlConnection.Close()$DataSet.Tables[0]} Hình 1.5Bước 5Hãy thực hiện đoan mã sau đây: [Hình 1.6]./connect3 serverlist.txt Hình 1.6Kết quả:Details of the Server : HOME-----------------------------------19Result------Version: Microsoft SQL Server 2000 - 8.00.2039 (Intel X86) ...Servername: HOMEDatabase: VixiaTrackDatabase: vixiadataDatabase: vixiaDatabase: TrackEquipmentDatabase: testDatabase: tempdbDatabase: Sales2Database: SalesDatabase: pubsDatabase: NorthwindDatabase: msdbDatabase: modelDatabase: masterDatabase: Legacy_VixiaDatabase: abc3Database: abc2Database: abcDetails of the Server : HOMESQLEXPRESS-----------------------------------11Version: Microsoft SQL Server 2005 - 9.00.2047.00 (Intel X86) ...Servername: HOMESQLEXPRESSDatabase: XMLTestDatabase: VixiaTrackDatabase: testDatabase: tempdbDatabase: msdbDatabase: modelDatabase: masterDatabase: AdventureWorksDatabase: adminBây giờ bạn hãy tạo một mã PowerShell thực hiện giống nhau, sử dụng SQL Server SMO.Bước 1Tạo mã connect4.ps1 PowerShell [Hình 1.7]param([string] $filename)[reflection.assembly]::LoadWithPartialName(Microsoft.Sq ...
Nội dung trích xuất từ tài liệu:
Microsoft Windows Power Shell và SQL Server 2005 SMO - Phần IV Microsoft Windows Power Shell và SQL Server 2005 SMO - Phần IV Phần I và Phần II của loạt bài này đã chỉ dẫn các thiết lập Power Shell, SMO và WMI cmdlet đơn giản. Phần III chỉ dẫn viết mã PowerShell và kết nối với SQL Server. Phần 4 sẽ giới thiệu cách sử dụng mã PowerShell để lặp nội dung tập tin và kết nối tới các máy chủ khác. Hãy tưởng tượng rằng chúng ta muốn kết nối tới các SQL Servers khác nhau và thu thập thông tin chính xác như tên máy chủ, phiên bản và tất cả tên các cơ sởdữ liệu.Bước 1Chúng ta cần tạo một đoạn mã PowerShell hiển thị tất cả các thông tin trên đối với một máy chủ.Tạo connect2.ps1 như minh họa dưới đây. [Hình 1.0]param ( [string] $SQLSERVER)$SqlConnection = New-Object System.Data.SqlClient.SqlConnection$SqlConnection.ConnectionString = Server=$SQLSERVER;Database=master;Integrated Security=True$SqlCmd = New-Object System.Data.SqlClient.SqlCommand$SqlCmd.CommandText = select Servername: +@@servername as Result union Select Version:+@@version as Result union select Database: +name from sysdatabases asResultorder by Result desc $SqlCmd.Connection = $SqlConnection$SqlAdapter = New-Object System.Data.SqlClient.SqlDataAdapter$SqlAdapter.SelectCommand = $SqlCmd$DataSet = New-Object System.Data.DataSet$SqlAdapter.Fill($DataSet)$SqlConnection.Close()$DataSet.Tables[0] Hình 1.0Bước 2Thực hiện đoạn mã sau: [Hình 1.1]./connect2 HOMEChú ý: HOME là tên máy chủ. Hãy thay vào đó tên máy chủ của bạn.Kết quảResult------Version:Microsoft SQL Server 2000 - 8.00.2039 (Intel X86) ...Servername: HOMEDatabase: VixiaTrackDatabase: vixiadataDatabase: vixiaDatabase: TrackEquipmentDatabase: testDatabase: tempdbDatabase: Sales2Database: SalesDatabase: pubsDatabase: NorthwindDatabase: msdbDatabase: modelDatabase: masterDatabase: Legacy_VixiaDatabase: abc3Database: abc2Database: abc Hình 1.1Bước 3Hãy lặp qua một tập tin và hiển thị ra nội dung của tập tin đó. Tạo mã loop1.ps1 sau đây: [Hình1.2] Đồng thời tạo tập tin serverlist.txt file. [Hình 1.3]param ([string] $filename)$computers = get-content $filenameforeach ($computer in $computers){write-host $computer} Hình 1.2Serverlist.txtHOMEHOMESQLEXPRESS Hình 1.3Hãy thực hiện mã loop1.ps1. [Hình 1.4]./loop1 serverlist.txt Hình 1.4Bước 4Bây giờ hãy kết hợp connect2.ps1 và loop1.ps1 để thu được tên của SQL Server, phiên bản SQLServer và tất cả tên các cơ sở dữ liệu liệt kê trên serverlist.txt.Tạo connect3.ps1 như sau: [Hình 1.5]param ([string] $filename)$SqlConnection = New-Object System.Data.SqlClient.SqlConnection$computers = get-content $filenameforeach ($computer in $computers){write-host Details of the Server : $computerwrite-host -----------------------------------$SqlConnection.ConnectionString =Server=$computer;Database=master;Integrated Security=True$SqlCmd = New-Object System.Data.SqlClient.SqlCommand$SqlCmd.CommandText = select Servername: +@@servername as Result unionSelect Version: +@@version as Result union select Database: +name from sysdatabases asResultorder by Result desc $SqlCmd.Connection = $SqlConnection$SqlAdapter = New-Object System.Data.SqlClient.SqlDataAdapter$SqlAdapter.SelectCommand = $SqlCmd$DataSet = New-Object System.Data.DataSet$SqlAdapter.Fill($DataSet)$SqlConnection.Close()$DataSet.Tables[0]} Hình 1.5Bước 5Hãy thực hiện đoan mã sau đây: [Hình 1.6]./connect3 serverlist.txt Hình 1.6Kết quả:Details of the Server : HOME-----------------------------------19Result------Version: Microsoft SQL Server 2000 - 8.00.2039 (Intel X86) ...Servername: HOMEDatabase: VixiaTrackDatabase: vixiadataDatabase: vixiaDatabase: TrackEquipmentDatabase: testDatabase: tempdbDatabase: Sales2Database: SalesDatabase: pubsDatabase: NorthwindDatabase: msdbDatabase: modelDatabase: masterDatabase: Legacy_VixiaDatabase: abc3Database: abc2Database: abcDetails of the Server : HOMESQLEXPRESS-----------------------------------11Version: Microsoft SQL Server 2005 - 9.00.2047.00 (Intel X86) ...Servername: HOMESQLEXPRESSDatabase: XMLTestDatabase: VixiaTrackDatabase: testDatabase: tempdbDatabase: msdbDatabase: modelDatabase: masterDatabase: AdventureWorksDatabase: adminBây giờ bạn hãy tạo một mã PowerShell thực hiện giống nhau, sử dụng SQL Server SMO.Bước 1Tạo mã connect4.ps1 PowerShell [Hình 1.7]param([string] $filename)[reflection.assembly]::LoadWithPartialName(Microsoft.Sq ...
Tìm kiếm theo từ khóa liên quan:
Cơ sở dữ liệu Quản trị web Hệ điều hành Công nghệ thông tin Tin họcGợi ý tài liệu liên quan:
-
Giáo trình Lý thuyết hệ điều hành: Phần 1 - Nguyễn Kim Tuấn
110 trang 451 0 0 -
52 trang 429 1 0
-
62 trang 401 3 0
-
Đề thi kết thúc học phần học kì 2 môn Cơ sở dữ liệu năm 2019-2020 có đáp án - Trường ĐH Đồng Tháp
5 trang 378 6 0 -
Top 10 mẹo 'đơn giản nhưng hữu ích' trong nhiếp ảnh
11 trang 312 0 0 -
74 trang 294 0 0
-
Giáo trình Cơ sở dữ liệu: Phần 2 - TS. Nguyễn Hoàng Sơn
158 trang 292 0 0 -
13 trang 292 0 0
-
96 trang 291 0 0
-
Báo cáo thực tập thực tế: Nghiên cứu và xây dựng website bằng Wordpress
24 trang 288 0 0