15 คำสั่ง PowerShell SQL พื้นฐาน

15 Kha Sang Powershell Sql Phun Than



SQL เป็นภาษาโปรแกรมที่สร้างขึ้นใน RDBMS มันถูกใช้เพื่อจัดการข้อมูลที่มีโครงสร้าง อัปเดตแบบสอบถาม SQL หรือดึงข้อมูลจากฐานข้อมูล นอกจากนี้ โมดูล SQLServer ยังจัดการผลิตภัณฑ์เซิร์ฟเวอร์ เช่น ฐานข้อมูล Azure SQL และ Azure Synapse Analytics

โครงร่างด่วน:

คำสั่ง PowerShell SQL







บทสรุป



คำสั่ง PowerShell SQL

คำสั่ง PowerShell โมดูล SQLServer จัดการเซิร์ฟเวอร์ คำสั่งเหล่านี้ช่วยสื่อสารกับฐานข้อมูล เซิร์ฟเวอร์ SQL มีสองโมดูล โมดูลหนึ่งคือ SQLPS (ไม่รองรับอีกต่อไป) และอีกโมดูลคือ SQLServer (ใช้ในปัจจุบัน) โมดูล SQLServer ช่วยโต้ตอบกับเซิร์ฟเวอร์ SQL ผ่าน PowerShell คำสั่ง SQL พร้อมใช้งานสำหรับคอมพิวเตอร์ที่ติดตั้งโมดูล SQLServer



1. เพิ่ม-RoleMember

คำสั่ง Add-RoleMember จะเพิ่มสมาชิกเฉพาะให้กับบทบาทฐานข้อมูลเฉพาะ





ตัวอย่าง:

ตัวอย่างนี้จะเพิ่มผู้ใช้ลงในฐานข้อมูลโดยใช้ชื่อและจะกำหนดบทบาทของผู้ใช้ด้วย:

เพิ่ม - - สมาชิกบทบาท - - ชื่อสมาชิก 'ชื่อผู้ใช้' - - ฐานข้อมูล 'ชื่อฐานข้อมูล' - - ชื่อบทบาท 'บทบาทของคุณ'

ตามรหัสข้างต้น:



  • ก่อนอื่นให้ระบุ เพิ่ม-RoleMember cmdlet และระบุชื่อผู้ใช้โดยใช้ -ชื่อสมาชิก พารามิเตอร์.
  • หลังจากนั้นให้จัดทำฐานข้อมูลโดยใช้ -ฐานข้อมูล พารามิเตอร์.
  • สุดท้ายระบุบทบาทของสมาชิกโดยใช้ -ชื่อบทบาท พารามิเตอร์.

2. ลบ-RoleMember

คำสั่ง Remove-RoleMember จะลบสมาชิกที่มีอยู่ออกจากบทบาทเฉพาะในฐานข้อมูล

ตัวอย่าง:

ตัวอย่างนี้จะลบสมาชิกเฉพาะออกจากบทบาทของฐานข้อมูลโดยใช้ชื่อ:

ลบ - - สมาชิกบทบาท - - ชื่อสมาชิก 'ชื่อผู้ใช้' - - ฐานข้อมูล 'ชื่อฐานข้อมูล' - - ชื่อบทบาท 'บทบาทของคุณ'

หากต้องการลบสมาชิกออกจากบทบาทฐานข้อมูล:

  • ขั้นแรกให้วาง ลบ-RoleMember คำสั่งและระบุชื่อสมาชิกโดยใช้ -ชื่อสมาชิก พารามิเตอร์.
  • หลังจากนั้นให้ระบุชื่อฐานข้อมูลให้กับ -ฐานข้อมูล พารามิเตอร์.
  • สุดท้ายนี้ ให้ระบุบทบาทที่คุณต้องการลบผู้ใช้ออก -ชื่อบทบาท พารามิเตอร์.

3. เพิ่ม-SqlFirewallRule

คำสั่ง Add-SqlFirewallRule จะเพิ่มกฎไฟร์วอลล์เพื่อตรวจสอบความถูกต้องของการเชื่อมต่อกับอินสแตนซ์ SQL Server

ตัวอย่าง:

ตัวอย่างนี้จะเพิ่มกฎไฟร์วอลล์บนคอมพิวเตอร์ที่ระบุ:

รับ - - SqlInstance -หนังสือรับรอง 'ระบุ-หนังสือรับรอง' - - ชื่อเครื่อง 'ชื่อคอมพิวเตอร์' | เพิ่ม - - กฎไฟร์วอลล์ SQL -หนังสือรับรอง 'ระบุ-หนังสือรับรอง'

หากต้องการเพิ่มกฎไฟร์วอลล์ Windows บนเครื่องคอมพิวเตอร์:

  • ก่อนอื่นให้ระบุ รับ-SqlInstance คำสั่งและมอบหนังสือรับรองให้กับ -หนังสือรับรอง พารามิเตอร์.
  • จากนั้นให้ระบุชื่อคอมพิวเตอร์ให้กับ -ชื่อเครื่อง พารามิเตอร์และไพพ์ไปที่ เพิ่ม-SqlFirewallRule สั่งการ.
  • อีกครั้ง ระบุข้อมูลรับรองผู้ใช้ไปที่ -หนังสือรับรอง ธง.

4. ลบ-SqlFirewallRule

คำสั่ง Remove-SqlFirewallRule จะปิดใช้งานกฎไฟร์วอลล์ที่รับรองความถูกต้องของการเชื่อมต่อกับอินสแตนซ์ของ SQL Server

ตัวอย่าง:

ตัวอย่างนี้จะลบกฎไฟร์วอลล์ที่หยุดการเชื่อมต่อกับอินสแตนซ์ทั้งหมดของ SQL Server :

รับ - - SqlInstance -หนังสือรับรอง 'ระบุ-หนังสือรับรอง' - - ชื่อเครื่อง 'ชื่อคอมพิวเตอร์' | ลบ - - กฎไฟร์วอลล์ SQL -หนังสือรับรอง 'ระบุ-หนังสือรับรอง'

บันทึก: คำอธิบายของโค้ดข้างต้นเหมือนกับตัวอย่างของคำสั่ง Add-SqlFirewallRule ยกเว้นคำสั่ง Remove-SqlInstance

5. เพิ่ม-SqlLogin

คำสั่ง Add-SqlLogin สร้างวัตถุเข้าสู่ระบบในอินสแตนซ์ของ SQL Server

ตัวอย่าง:

ตัวอย่างนี้จะสร้างประเภท SqlLogin:

เพิ่ม - - SqlLogin - - เซิร์ฟเวอร์อินสแตนซ์ 'ชื่อเซิร์ฟเวอร์อินสแตนซ์' - - ชื่อเข้าสู่ระบบ 'ชื่อเข้าสู่ระบบ' - - ประเภทการเข้าสู่ระบบ 'เข้าสู่ระบบ SQL' - - ฐานข้อมูลเริ่มต้น 'ประเภทฐานข้อมูล'

หากต้องการสร้างประเภท SqlLogin:

  • ก่อนอื่นให้ระบุ เพิ่ม-SqlLogin คำสั่งและจัดเตรียมอินสแตนซ์เซิร์ฟเวอร์ให้กับ -เซิร์ฟเวอร์อินสแตนซ์ พารามิเตอร์.
  • หลังจากนั้นให้ทำการล็อกอินชื่อเข้าใช้งาน -ชื่อเข้าสู่ระบบ พารามิเตอร์ ประเภทการเข้าสู่ระบบไปที่ -ประเภทการเข้าสู่ระบบ พารามิเตอร์และชนิดของฐานข้อมูลไปที่ -ฐานข้อมูลเริ่มต้น พารามิเตอร์.

6. ลบ-SqlLogin

คำสั่ง Remove-SqlLogin จะลบวัตถุการเข้าสู่ระบบออกจากอินสแตนซ์ของ SQL Server สามารถลบเซิร์ฟเวอร์ SQL แต่ละรายการและหลายอินสแตนซ์ได้

ตัวอย่าง:

ตัวอย่างนี้จะลบออบเจ็กต์ล็อกอินโดยใช้ชื่อ:

รับ - - SqlLogin - - เซิร์ฟเวอร์อินสแตนซ์ 'ชื่อเซิร์ฟเวอร์อินสแตนซ์' - - ชื่อเข้าสู่ระบบ 'ชื่อเข้าสู่ระบบ' | ลบ - - SqlLogin

หากต้องการลบออบเจ็กต์ล็อกอินตามชื่อ:

  • ขั้นแรกให้วาง รับ-SqlLogin คำสั่งและจัดเตรียมอินสแตนซ์เซิร์ฟเวอร์ให้กับ -เซิร์ฟเวอร์อินสแตนซ์ พารามิเตอร์.
  • จากนั้นใช้ -ชื่อเข้าสู่ระบบ พารามิเตอร์และระบุชื่อเข้าสู่ระบบ
  • หลังจากนั้นให้ไพพ์คำสั่งทั้งหมดไปที่ เอา-SqlLogin สั่งการ.

7. รับ-SqlAgent

คำสั่ง Get-SqlAgent รับเอเจนต์ SQL ที่มีอยู่ในอินสแตนซ์เป้าหมายของเซิร์ฟเวอร์ SQL

ตัวอย่าง:

ตัวอย่างนี้จะแสดงเอเจนต์ SQL ของอินสแตนซ์เซิร์ฟเวอร์:

รับ - - SqlAgent - - เซิร์ฟเวอร์อินสแตนซ์ 'ชื่อเซิร์ฟเวอร์อินสแตนซ์'

หากต้องการรับเอเจนต์ SQL ของอินสแตนซ์เซิร์ฟเวอร์ ขั้นแรก ให้ใช้ไฟล์ รับ-SqlAgent คำสั่งแล้วระบุอินสแตนซ์เซิร์ฟเวอร์โดยใช้ -เซิร์ฟเวอร์อินสแตนซ์ พารามิเตอร์.

8. รับ-SqlCredential

คำสั่ง Get-SqlCredential รับข้อมูลประจำตัว SQL ของวัตถุ

ตัวอย่าง:

ตัวอย่างนี้จะแสดงข้อมูลประจำตัวของวัตถุ:

รับ - - ข้อมูลรับรอง SQL -ชื่อ 'ข้อมูลรับรอง'

ในการรับข้อมูลรับรองของออบเจ็กต์ ขั้นแรกให้จัดเตรียม รับ-SqlCredential คำสั่งและระบุชื่อของหนังสือรับรองโดยใช้ -ชื่อ พารามิเตอร์.

9. รับ-SqlDatabase

คำสั่ง Get-SqlDatabase รับฐานข้อมูล SQL สำหรับแต่ละฐานข้อมูลที่มีอยู่ในอินสแตนซ์เป้าหมายของเซิร์ฟเวอร์ SQL

ตัวอย่าง:

ตัวอย่างนี้จะได้รับอินสแตนซ์ของ SQL Server บนคอมพิวเตอร์:

รับ - - SqlInstance -หนังสือรับรอง 'ระบุ-หนังสือรับรอง' - - ชื่อเครื่อง 'ชื่อคอมพิวเตอร์' | รับ - - ฐานข้อมูล Sql -หนังสือรับรอง 'ระบุ-หนังสือรับรอง'

ตามรหัสข้างต้น:

  • ขั้นแรกให้วาง รับ-SqlInstance สั่งการ.
  • จากนั้นจึงมอบหนังสือรับรองให้กับ -หนังสือรับรอง ธง.
  • จากนั้นให้ระบุชื่อคอมพิวเตอร์ให้กับ -ชื่อเครื่อง พารามิเตอร์และไพพ์ไปที่ รับ-SqlDatabase สั่งการ.
  • อีกครั้ง ระบุข้อมูลรับรอง SQL ไปที่ -หนังสือรับรอง พารามิเตอร์.

10. รับ-SqlLogin

คำสั่ง Get-SqlLogin ส่งคืนออบเจ็กต์ล็อกอิน SQL ในอินสแตนซ์ของเซิร์ฟเวอร์ SQL

ตัวอย่าง:

ตัวอย่างนี้จะแสดงออบเจ็กต์การเข้าสู่ระบบทั้งหมดสำหรับอินสแตนซ์ที่ระบุ:

รับ - - SqlLogin - - เซิร์ฟเวอร์อินสแตนซ์ 'ชื่อเซิร์ฟเวอร์อินสแตนซ์'

หากต้องการรับออบเจ็กต์การเข้าสู่ระบบของอินสแตนซ์ที่ระบุ ขั้นแรกให้ใช้ รับ-SqlLogin คำสั่งและระบุชื่ออินสแตนซ์เซิร์ฟเวอร์โดยใช้ -เซิร์ฟเวอร์อินสแตนซ์ พารามิเตอร์.

11. เรียกใช้-Sqlcmd

คำสั่ง Invoke-Sqlcmd รันสคริปต์ที่มีคำสั่งที่ SQL รองรับ

ตัวอย่าง:

ตัวอย่างนี้จะเชื่อมต่อกับอินสแตนซ์ที่มีชื่อและรันสคริปต์:

วิงวอน - - Sqlcmd -แบบสอบถาม 'แบบสอบถามที่จะดำเนินการ' - - เซิร์ฟเวอร์อินสแตนซ์ 'ชื่อเซิร์ฟเวอร์อินสแตนซ์'

ตามรหัสข้างต้น:

  • ขั้นแรกให้ใช้ เรียกใช้-SqlCmd คำสั่งและระบุคำถามของคุณไปที่ -แบบสอบถาม พารามิเตอร์.
  • จากนั้นระบุชื่ออินสแตนซ์เซิร์ฟเวอร์เป็น -เซิร์ฟเวอร์อินสแตนซ์ พารามิเตอร์.

12. ชุด-SqlCredential

คำสั่ง Set-SqlCredential ตั้งค่าคุณสมบัติชื่อผู้ใช้และรหัสผ่านสำหรับวัตถุข้อมูลรับรอง SQL

ตัวอย่าง:

ตัวอย่างนี้จะตั้งค่าข้อมูลประจำตัวของวัตถุข้อมูลรับรอง SQL:

ชุด - - ข้อมูลรับรอง SQL -เส้นทาง 'SQL-เซิร์ฟเวอร์-อินสแตนซ์-เส้นทาง' - - ตัวตน 'บัญชีจัดเก็บข้อมูลของคุณ'

ในโค้ดข้างต้น:

  • ขั้นแรกให้ใช้ ชุด-SqlCredential จากนั้นระบุเส้นทางของอินสแตนซ์ SQL ไปที่ -เส้นทาง พารามิเตอร์.
  • หลังจากนั้น ให้ระบุตัวตนที่คุณต้องการกำหนดค่าโดยใช้ -ตัวตน ธง.

13. เริ่ม-SqlInstance

คำสั่ง Start-SqlInstance เริ่มต้นอินสแตนซ์ที่ระบุของอินสแตนซ์ SQL Server

ตัวอย่าง:

ตัวอย่างนี้จะเริ่มต้นอินสแตนซ์ทั้งหมดของเซิร์ฟเวอร์ SQL บนคอมพิวเตอร์ที่ระบุ:

รับ - - SqlInstance -หนังสือรับรอง $หนังสือรับรอง - - ชื่อเครื่อง 'ชื่อคอมพิวเตอร์' | เริ่ม - - SqlInstance -หนังสือรับรอง $หนังสือรับรอง - - ยอมรับใบรับรองการลงนามด้วยตนเอง

ตามรหัสข้างต้น:

  • ขั้นแรกให้ใช้ รับ-SqlInstance คำสั่งและระบุข้อมูลรับรอง SQL ให้กับ -หนังสือรับรอง พารามิเตอร์.
  • หลังจากนั้นให้ระบุชื่อคอมพิวเตอร์ไปที่ -ชื่อเครื่อง พารามิเตอร์.
  • จากนั้นไพพ์คำสั่งทั้งหมดไปที่ เริ่ม-SqlInstance คำสั่งและระบุข้อมูลประจำตัวให้กับ -หนังสือรับรอง พารามิเตอร์.
  • สุดท้ายระบุ - ยอมรับใบรับรองการลงนามด้วยตนเอง พารามิเตอร์เพื่อเรียกใช้สคริปต์ที่ไม่ได้เซ็นชื่อแบบดิจิทัล

14. หยุด-SqlInstance

คำสั่ง Stop-SqlInstance หยุดอินสแตนซ์ที่ระบุของอินสแตนซ์ SQL Server

ตัวอย่าง:

ตัวอย่างนี้จะหยุดอินสแตนซ์ของเซิร์ฟเวอร์ SQL:

รับ - - SqlInstance -หนังสือรับรอง $หนังสือรับรอง - - ชื่อเครื่อง 'ชื่อคอมพิวเตอร์' | หยุด - - SqlInstance -หนังสือรับรอง $หนังสือรับรอง - - ยอมรับใบรับรองการลงนามด้วยตนเอง

บันทึก: รหัสสำหรับการหยุดอินสแตนซ์ SQL จะเหมือนกับรหัสสำหรับการเริ่มอินสแตนซ์ยกเว้นคำสั่ง Stop-SqlInstance

15. รับคำสั่ง

Get-Command รับคำสั่งจากโมดูลที่ระบุ ในการรับคำสั่งที่จัดเก็บไว้ในโมดูล SQLServer เราจำเป็นต้องใช้ Get-Command cmdlet

ตัวอย่าง:

ตัวอย่างนี้จะได้รับคำสั่งจากโมดูล PowerShell SQLServer:

รับคำสั่ง - - โมดูล SQLServer

หากต้องการรับรายการคำสั่งเซิร์ฟเวอร์ SQL ขั้นแรกให้ใช้ไฟล์ รับคำสั่ง cmdlet แล้วระบุ SQLServer โมดูลโดยใช้ -โมดูล พารามิเตอร์:

บทสรุป

โมดูล SQLServer ประกอบด้วยคำสั่งต่างๆ สำหรับการจัดการเซิร์ฟเวอร์ SQL คำสั่งโมดูล PowerShell SQLServer ช่วยจัดการเซิร์ฟเวอร์ SQL คำสั่ง SQL ที่ใช้บ่อยที่สุด ได้แก่ คำสั่ง PowerShell SQL Add-RoleMember, Remove-RoleMember, Add-SqlFirewallRule หรือ Remove-SqlFirewallRule