MS SQL Server - คู่มือฉบับย่อ
บทนี้แนะนำ SQL Server กล่าวถึงการใช้งานข้อดีเวอร์ชันและส่วนประกอบ
SQL Server คืออะไร?
เป็นซอฟต์แวร์ที่พัฒนาโดย Microsoft ซึ่งนำมาใช้จากข้อกำหนดของ RDBMS
นอกจากนี้ยังเป็น ORDBMS
มันขึ้นอยู่กับแพลตฟอร์ม
เป็นทั้ง GUI และซอฟต์แวร์ตามคำสั่ง
สนับสนุนภาษา SQL (SEQUEL) ซึ่งเป็นผลิตภัณฑ์ของ IBM ฐานข้อมูลทั่วไปที่ไม่ใช่ขั้นตอนและภาษาที่ไม่คำนึงถึงตัวพิมพ์เล็กและใหญ่
การใช้ SQL Server
- เพื่อสร้างฐานข้อมูล
- เพื่อรักษาฐานข้อมูล
- เพื่อวิเคราะห์ข้อมูลผ่าน SQL Server Analysis Services (SSAS)
- เพื่อสร้างรายงานผ่าน SQL Server Reporting Services (SSRS)
- เพื่อดำเนินการ ETL ผ่าน SQL Server Integration Services (SSIS)
เวอร์ชันของ SQL Server
เวอร์ชัน | ปี | รหัสชื่อ |
---|---|---|
6.0 | พ.ศ. 2538 | SQL95 |
6.5 | พ.ศ. 2539 | ไฮดรา |
7.0 | พ.ศ. 2541 | สฟิงซ์ |
8.0 (พ.ศ. 2543) | พ.ศ. 2543 | ไชโลห์ |
9.0 (พ.ศ. 2548) | พ.ศ. 2548 | ยูคอน |
10.0 (พ.ศ. 2551) | พ.ศ. 2551 | กาดใหม่ |
10.5 (2008 R2) | พ.ศ. 2553 | คิลิมันจาโร |
11.0 (2555) | 2555 | เดนาลี |
12 (พ.ศ. 2557) | พ.ศ. 2557 | Hekaton (เริ่มแรก), SQL 14 (ปัจจุบัน) |
ส่วนประกอบเซิร์ฟเวอร์ SQL
SQL Server ทำงานในสถาปัตยกรรมไคลเอนต์เซิร์ฟเวอร์ดังนั้นจึงสนับสนุนส่วนประกอบสองประเภท - (ก) เวิร์กสเตชันและ (ข) เซิร์ฟเวอร์
Workstation componentsได้รับการติดตั้งในทุกเครื่องของอุปกรณ์ / ตัวดำเนินการ SQL Server สิ่งเหล่านี้เป็นเพียงอินเทอร์เฟซสำหรับโต้ตอบกับส่วนประกอบของเซิร์ฟเวอร์ ตัวอย่าง: SSMS, SSCM, Profiler, BIDS, SQLEM เป็นต้น
Server componentsได้รับการติดตั้งในเซิร์ฟเวอร์ส่วนกลาง นี่คือบริการ ตัวอย่าง: SQL Server, SQL Server Agent, SSIS, SSAS, SSRS, SQL browser, SQL Server full text search เป็นต้น
อินสแตนซ์ของ SQL Server
- อินสแตนซ์คือการติดตั้ง SQL Server
- อินสแตนซ์เป็นสำเนาของซอฟต์แวร์เดียวกันทุกประการ
- หากเราติดตั้ง 'n' ครั้งอินสแตนซ์ 'n' จะถูกสร้างขึ้น
- อินสแตนซ์ใน SQL Server มีสองประเภท a) ค่าเริ่มต้น b) ตั้งชื่อ
- รองรับอินสแตนซ์เริ่มต้นเดียวในเซิร์ฟเวอร์เดียว
- รองรับอินสแตนซ์ที่มีชื่อหลายรายการในเซิร์ฟเวอร์เดียว
- อินสแตนซ์เริ่มต้นจะใช้ชื่อเซิร์ฟเวอร์เป็นชื่ออินสแตนซ์
- ชื่อบริการอินสแตนซ์เริ่มต้นคือ MSSQLSERVER
- 16 อินสแตนซ์จะได้รับการสนับสนุนในเวอร์ชัน 2000
- 50 อินสแตนซ์จะรองรับในปี 2548 และเวอร์ชันที่ใหม่กว่า
ข้อดีของอินสแตนซ์
- ในการติดตั้งเวอร์ชันต่างๆในเครื่องเดียว
- เพื่อลดต้นทุน.
- เพื่อรักษาการผลิตการพัฒนาและการทดสอบสภาพแวดล้อมแยกกัน
- เพื่อลดปัญหาฐานข้อมูลชั่วคราว
- เพื่อแยกสิทธิ์ด้านความปลอดภัย
- เพื่อรักษาเซิร์ฟเวอร์สแตนด์บาย
SQL Server พร้อมใช้งานในหลายรุ่น บทนี้แสดงรายการหลายฉบับพร้อมคุณสมบัติต่างๆ
Enterprise - นี่คือรุ่นระดับบนสุดที่มีชุดคุณลักษณะเต็มรูปแบบ
Standard - มีคุณสมบัติน้อยกว่า Enterprise เมื่อไม่มีความต้องการคุณสมบัติขั้นสูง
Workgroup - เหมาะสำหรับสำนักงานระยะไกลของ บริษัท ขนาดใหญ่
Web - ออกแบบมาสำหรับเว็บแอปพลิเคชัน
Developer- สิ่งนี้คล้ายกับ Enterprise แต่ให้สิทธิ์ผู้ใช้เพียงรายเดียวในการพัฒนาทดสอบและสาธิต สามารถอัพเกรดเป็น Enterprise ได้อย่างง่ายดายโดยไม่ต้องติดตั้งใหม่
Express- นี่คือฐานข้อมูลระดับเริ่มต้นฟรี สามารถใช้ CPU เพียง 1 ตัวและหน่วยความจำ 1 GB ขนาดสูงสุดของฐานข้อมูลคือ 10 GB
Compact- นี่คือฐานข้อมูลแบบฝังฟรีสำหรับการพัฒนาแอปพลิเคชันมือถือ ขนาดสูงสุดของฐานข้อมูลคือ 4 GB
Datacenter- การเปลี่ยนแปลงที่สำคัญใน SQL Server 2008 R2 ใหม่คือ Datacenter Edition รุ่น Datacenter ไม่มีข้อ จำกัด ด้านหน่วยความจำและให้การสนับสนุนมากกว่า 25 อินสแตนซ์
Business Intelligence - Business Intelligence Edition เป็นการแนะนำใหม่ใน SQL Server 2012 รุ่นนี้มีฟีเจอร์ทั้งหมดใน Standard edition และรองรับฟีเจอร์ BI ขั้นสูงเช่น Power View และ PowerPivot แต่ไม่มีการรองรับฟีเจอร์ความพร้อมใช้งานขั้นสูงเช่น AlwaysOn Availability Groups และอื่น ๆ การดำเนินการออนไลน์
Enterprise Evaluation- SQL Server Evaluation Edition เป็นวิธีที่ยอดเยี่ยมในการรับอินสแตนซ์ SQL Server ที่ใช้งานได้อย่างสมบูรณ์และฟรีสำหรับการเรียนรู้และพัฒนาโซลูชัน รุ่นนี้มีการหมดอายุในตัว 6 เดือนนับจากเวลาที่คุณติดตั้ง
พ.ศ. 2548 | พ.ศ. 2551 | 2008 R2 | 2555 | พ.ศ. 2557 |
---|---|---|---|---|
องค์กร | ใช่ | ใช่ | ใช่ | ใช่ |
มาตรฐาน | ใช่ | ใช่ | ใช่ | ใช่ |
นักพัฒนา | ใช่ | ใช่ | ใช่ | ใช่ |
กลุ่มงาน | ใช่ | ใช่ | ไม่ | ไม่ |
รับรางวัล Compact Edition - มือถือ | ใช่ | ใช่ | ใช่ | ใช่ |
การประเมินองค์กร | ใช่ | ใช่ | ใช่ | ใช่ |
ด่วน | ใช่ | ใช่ | ใช่ | ใช่ |
เว็บ | ใช่ | ใช่ | ใช่ | |
ศูนย์ข้อมูล | ไม่ | ไม่ | ||
ระบบธุรกิจอัจฉริยะ | ใช่ |
SQL Server รองรับการติดตั้งสองประเภท -
- Standalone
- ตามคลัสเตอร์
ตรวจสอบ
- ตรวจสอบการเข้าถึง RDP สำหรับเซิร์ฟเวอร์
- ตรวจสอบ OS bit, IP, โดเมนของเซิร์ฟเวอร์
- ตรวจสอบว่าบัญชีของคุณอยู่ในกลุ่มผู้ดูแลระบบเพื่อเรียกใช้ไฟล์ setup.exe หรือไม่
- ตำแหน่งซอฟต์แวร์
ข้อกำหนด
- รุ่นใดรุ่น SP และโปรแกรมแก้ไขด่วนถ้ามี
- บัญชีบริการสำหรับเครื่องมือฐานข้อมูลตัวแทน SSAS SSIS SSRS ถ้ามี
- ตั้งชื่ออินสแตนซ์ถ้ามี
- ตำแหน่งสำหรับไบนารีระบบฐานข้อมูลผู้ใช้
- โหมดการพิสูจน์ตัวตน
- การตั้งค่าการเรียง
- รายการคุณสมบัติ
ข้อกำหนดเบื้องต้นสำหรับปี 2548
- ตั้งค่าไฟล์สนับสนุน
- .net framework 2.0
- ไคลเอ็นต์ดั้งเดิมของเซิร์ฟเวอร์ SQL
ข้อกำหนดเบื้องต้นสำหรับปี 2008 และ 2008R2
- ตั้งค่าไฟล์สนับสนุน
- .net framework 3.5 SP1.
- ไคลเอ็นต์ดั้งเดิมของเซิร์ฟเวอร์ SQL
- ตัวติดตั้ง Windows 4.5 / เวอร์ชันที่ใหม่กว่า
ข้อกำหนดเบื้องต้นสำหรับปี 2555 และ 2557
- ตั้งค่าไฟล์สนับสนุน
- .net framework 4.0
- ไคลเอ็นต์ดั้งเดิมของเซิร์ฟเวอร์ SQL
- ตัวติดตั้ง Windows 4.5 / เวอร์ชันที่ใหม่กว่า
- Windows PowerShell 2.0
ขั้นตอนการติดตั้ง
Step 1 - ดาวน์โหลด Evaluation Edition จาก http://www.microsoft.com/download/en/details.aspx?id=29066
เมื่อดาวน์โหลดซอฟต์แวร์แล้วไฟล์ต่อไปนี้จะพร้อมใช้งานตามตัวเลือกการดาวน์โหลด (32 หรือ 64 บิต) ของคุณ
ENU \ x86 \ SQLFULL_x86_ENU_Core.box
ENU \ x86 \ SQLFULL_x86_ENU_Install.exe
ENU \ x86 \ SQLFULL_x86_ENU_Lang.box
OR
ENU \ x86 \ SQLFULL_x64_ENU_Core.box
ENU \ x86 \ SQLFULL_x64_ENU_Install.exe
ENU \ x86 \ SQLFULL_x64_ENU_Lang.box
Note - X86 (32 บิต) และ X64 (64 บิต)
Step 2 - ดับเบิลคลิกที่“ SQLFULL_x86_ENU_Install.exe” หรือ“ SQLFULL_x64_ENU_Install.exe” จากนั้นจะแยกไฟล์ที่จำเป็นสำหรับการติดตั้งในโฟลเดอร์“ SQLFULL_x86_ENU” หรือ“ SQLFULL_x86_ENU” ตามลำดับ
Step 3 - คลิกโฟลเดอร์“ SQLFULL_x86_ENU” หรือ“ SQLFULL_x64_ENU_Install.exe” แล้วดับเบิลคลิกแอปพลิเคชัน“ SETUP”
เพื่อความเข้าใจที่นี่เราได้ใช้ซอฟต์แวร์ SQLFULL_x64_ENU_Install.exe
Step 4 - เมื่อเราคลิกที่แอพพลิเคชั่น 'ตั้งค่า' หน้าจอต่อไปนี้จะเปิดขึ้น
Step 5 - คลิกการติดตั้งซึ่งอยู่ทางด้านซ้ายของหน้าจอด้านบน
Step 6- คลิกตัวเลือกแรกของด้านขวาที่เห็นในหน้าจอด้านบน หน้าจอต่อไปนี้จะเปิดขึ้น
Step 7 - คลิกตกลงและหน้าจอต่อไปนี้จะปรากฏขึ้น
Step 8 - คลิกถัดไปเพื่อรับหน้าจอต่อไปนี้
Step 9 - ตรวจสอบการเลือกคีย์ผลิตภัณฑ์แล้วคลิกถัดไป
Step 10 - เลือกช่องทำเครื่องหมายเพื่อยอมรับตัวเลือกใบอนุญาตแล้วคลิกถัดไป
Step 11 - เลือกตัวเลือกการติดตั้งคุณสมบัติ SQL Server แล้วคลิกถัดไป
Step 12 - เลือกช่องทำเครื่องหมายบริการโปรแกรมฐานข้อมูลแล้วคลิกถัดไป
Step 13 - ป้อนอินสแตนซ์ที่มีชื่อ (ที่นี่ฉันใช้ TestInstance) แล้วคลิกถัดไป
Step 14 - คลิกถัดไปบนหน้าจอด้านบนและหน้าจอต่อไปนี้จะปรากฏขึ้น
Step 15 - เลือกชื่อบัญชีบริการและประเภทการเริ่มต้นสำหรับบริการที่ระบุไว้ด้านบนแล้วคลิกการเรียง
Step 16 - ตรวจสอบว่าได้เลือกการเรียงลำดับที่ถูกต้องแล้วคลิกถัดไป
Step 17 - ตรวจสอบให้แน่ใจว่าได้เลือกโหมดการตรวจสอบสิทธิ์และผู้ดูแลระบบแล้วคลิก Data Directories
Step 18- ตรวจสอบให้แน่ใจว่าได้เลือกตำแหน่งไดเร็กทอรีด้านบนแล้วคลิกถัดไป หน้าจอต่อไปนี้จะปรากฏขึ้น
Step 19 - คลิกถัดไปบนหน้าจอด้านบน
Step 20 - คลิกถัดไปบนหน้าจอด้านบนเพื่อรับหน้าจอต่อไปนี้
Step 21 - ตรวจสอบให้แน่ใจว่าได้ตรวจสอบการเลือกด้านบนอย่างถูกต้องแล้วคลิกติดตั้ง
การติดตั้งสำเร็จดังที่แสดงในหน้าจอด้านบน คลิกปิดเพื่อเสร็จสิ้น
เราได้จำแนกสถาปัตยกรรมของ SQL Server เป็นส่วนต่างๆดังต่อไปนี้เพื่อให้เข้าใจง่าย -
- สถาปัตยกรรมทั่วไป
- สถาปัตยกรรมหน่วยความจำ
- สถาปัตยกรรมไฟล์ข้อมูล
- สถาปัตยกรรมล็อกไฟล์
สถาปัตยกรรมทั่วไป
Client - เมื่อคำขอเริ่มต้น
Query - แบบสอบถาม SQL ซึ่งเป็นภาษาระดับสูง
Logical Units - คำหลักนิพจน์และตัวดำเนินการ ฯลฯ
N/W Packets - รหัสที่เกี่ยวข้องกับเครือข่าย
Protocols - ใน SQL Server เรามี 4 โปรโตคอล
หน่วยความจำที่ใช้ร่วมกัน (สำหรับการเชื่อมต่อภายในและวัตถุประสงค์ในการแก้ไขปัญหา)
ท่อที่มีชื่อ (สำหรับการเชื่อมต่อที่อยู่ในการเชื่อมต่อ LAN)
TCP / IP (สำหรับการเชื่อมต่อที่อยู่ในการเชื่อมต่อ WAN)
VIA-Virtual Interface Adapter (ต้องใช้ฮาร์ดแวร์พิเศษในการตั้งค่าโดยผู้ขายและเลิกใช้จากเวอร์ชัน SQL 2012 ด้วย)
Server - ตำแหน่งที่ติดตั้ง SQL Services และฐานข้อมูลอยู่
Relational Engine- นี่คือที่ที่จะดำเนินการจริง ประกอบด้วยตัวแยกวิเคราะห์แบบสอบถามเครื่องมือเพิ่มประสิทธิภาพการค้นหาและตัวดำเนินการสืบค้น
Query Parser (Command Parser) and Compiler (Translator) - สิ่งนี้จะตรวจสอบไวยากรณ์ของแบบสอบถามและจะแปลงแบบสอบถามเป็นภาษาเครื่อง
Query Optimizer - จะเตรียมแผนการดำเนินการเป็นผลลัพธ์โดยใช้แบบสอบถามสถิติและโครงสร้าง Algebrizer เป็นอินพุต
Execution Plan - เป็นเหมือนแผนงานที่มีลำดับขั้นตอนทั้งหมดที่จะดำเนินการเป็นส่วนหนึ่งของการดำเนินการสืบค้น
Query Executor - นี่คือที่ที่จะดำเนินการสืบค้นทีละขั้นตอนด้วยความช่วยเหลือของแผนการดำเนินการและจะติดต่อเครื่องมือจัดเก็บข้อมูล
Storage Engine - มีหน้าที่จัดเก็บและดึงข้อมูลบนระบบจัดเก็บข้อมูล (ดิสก์, SAN, ฯลฯ ), การจัดการข้อมูล, การล็อกและการจัดการธุรกรรม
SQL OS- สิ่งนี้อยู่ระหว่างเครื่องโฮสต์ (Windows OS) และ SQL Server กิจกรรมทั้งหมดที่ดำเนินการบนเครื่องมือฐานข้อมูลได้รับการดูแลโดย SQL OS SQL OS ให้บริการระบบปฏิบัติการต่างๆเช่นข้อตกลงการจัดการหน่วยความจำด้วยบัฟเฟอร์พูลบันทึกบัฟเฟอร์และการตรวจจับการหยุดชะงักโดยใช้โครงสร้างการบล็อกและการล็อก
Checkpoint Process- Checkpoint เป็นกระบวนการภายในที่เขียนเพจสกปรกทั้งหมด (หน้าที่แก้ไข) จาก Buffer Cache ไปยัง Physical disk นอกจากนี้ยังเขียนบันทึกบันทึกจากบัฟเฟอร์บันทึกไปยังไฟล์ฟิสิคัล การเขียนเพจสกปรกจากบัฟเฟอร์แคชไปยังไฟล์ข้อมูลเรียกอีกอย่างว่าการแข็งตัวของเพจสกปรก
เป็นกระบวนการเฉพาะและทำงานโดยอัตโนมัติโดย SQL Server ในช่วงเวลาที่กำหนด SQL Server รันกระบวนการตรวจสอบสำหรับแต่ละฐานข้อมูลทีละรายการ Checkpoint ช่วยลดเวลาในการกู้คืนสำหรับ SQL Server ในกรณีที่มีการปิดระบบโดยไม่คาดคิดหรือระบบขัดข้อง \ Failure
จุดตรวจใน SQL Server
ใน SQL Server 2012 มีไฟล์ checkpoints -
Automatic - นี่คือจุดตรวจที่พบบ่อยที่สุดซึ่งทำงานเป็นกระบวนการในเบื้องหลังเพื่อให้แน่ใจว่าฐานข้อมูล SQL Server สามารถกู้คืนได้ในระยะเวลาที่กำหนดโดย Recovery Interval - Server Configuration Option
Indirect- นี่เป็นสิ่งใหม่ใน SQL Server 2012 นอกจากนี้ยังทำงานในพื้นหลัง แต่เพื่อให้เป็นไปตามเวลาการกู้คืนเป้าหมายที่ผู้ใช้ระบุสำหรับฐานข้อมูลเฉพาะที่มีการกำหนดค่าตัวเลือก เมื่อเลือก Target_Recovery_Time สำหรับฐานข้อมูลที่กำหนดแล้วสิ่งนี้จะแทนที่ช่วงการกู้คืนที่ระบุสำหรับเซิร์ฟเวอร์และหลีกเลี่ยงจุดตรวจอัตโนมัติบนฐานข้อมูลดังกล่าว
Manual- คำสั่งนี้ทำงานเหมือนกับคำสั่ง T-SQL อื่น ๆ เมื่อคุณออกคำสั่งจุดตรวจมันจะทำงานจนเสร็จสิ้น จุดตรวจด้วยตนเองทำงานสำหรับฐานข้อมูลปัจจุบันของคุณเท่านั้น คุณยังสามารถระบุ Checkpoint_Duration ซึ่งเป็นทางเลือก - ระยะเวลานี้ระบุเวลาที่คุณต้องการให้จุดตรวจของคุณเสร็จสมบูรณ์
Internal- ในฐานะผู้ใช้คุณไม่สามารถควบคุมจุดตรวจภายในได้ ออกในการดำเนินการเฉพาะเช่น
การปิดระบบจะเริ่มต้นการดำเนินการจุดตรวจบนฐานข้อมูลทั้งหมดยกเว้นเมื่อการปิดระบบไม่สะอาด (ปิดด้วย nowait)
หากโมเดลการกู้คืนเปลี่ยนจาก Full \ Bulk-logged เป็น Simple
ในขณะที่ทำการสำรองฐานข้อมูล
หากฐานข้อมูลของคุณอยู่ในรูปแบบการกู้คืนแบบง่ายกระบวนการตรวจสอบจะดำเนินการโดยอัตโนมัติเมื่อบันทึกเต็ม 70% หรือตามช่วงเวลาการกู้คืนตัวเลือกเซิร์ฟเวอร์
คำสั่งแก้ไขฐานข้อมูลเพื่อเพิ่มหรือลบไฟล์ data \ log ยังเริ่มจุดตรวจสอบ
Checkpoint จะเกิดขึ้นเมื่อโมเดลการกู้คืนของ DB ถูกบันทึกเป็นกลุ่มและมีการดำเนินการบันทึกขั้นต่ำ
การสร้าง DB Snapshot
Lazy Writer Process- ผู้เขียนขี้เกียจจะดันหน้าสกปรกไปยังดิสก์ด้วยเหตุผลที่แตกต่างไปจากเดิมอย่างสิ้นเชิงเนื่องจากต้องเพิ่มหน่วยความจำในบัฟเฟอร์พูล สิ่งนี้เกิดขึ้นเมื่อเซิร์ฟเวอร์ SQL อยู่ภายใต้แรงกดดันของหน่วยความจำ เท่าที่ฉันทราบสิ่งนี้ถูกควบคุมโดยกระบวนการภายในและไม่มีการตั้งค่าใด ๆ
เซิร์ฟเวอร์ SQL ตรวจสอบการใช้หน่วยความจำอย่างต่อเนื่องเพื่อประเมินการช่วงชิงทรัพยากร (หรือความพร้อมใช้งาน) หน้าที่ของมันคือตรวจสอบให้แน่ใจว่ามีพื้นที่ว่างจำนวนหนึ่งพร้อมใช้งานตลอดเวลา เป็นส่วนหนึ่งของกระบวนการนี้เมื่อสังเกตเห็นการแย่งชิงทรัพยากรดังกล่าวจะทำให้ Lazy Writer เพิ่มพื้นที่ว่างบางหน้าในหน่วยความจำโดยการเขียนเพจสกปรกลงในดิสก์ ใช้อัลกอริทึม Least Recent Used (LRU) เพื่อตัดสินใจว่าจะล้างหน้าใดลงในดิสก์
หาก Lazy Writer ทำงานอยู่ตลอดเวลาอาจบ่งบอกถึงปัญหาคอขวดของหน่วยความจำ
สถาปัตยกรรมหน่วยความจำ
ต่อไปนี้เป็นคุณสมบัติเด่นบางประการของสถาปัตยกรรมหน่วยความจำ
เป้าหมายการออกแบบหลักประการหนึ่งของซอฟต์แวร์ฐานข้อมูลทั้งหมดคือการลดขนาดดิสก์ I / O เนื่องจากการอ่านและเขียนดิสก์เป็นหนึ่งในการดำเนินการที่ใช้ทรัพยากรมากที่สุด
หน่วยความจำใน windows สามารถเรียกใช้ด้วย Virtual Address Space ซึ่งแบ่งใช้โดยโหมด Kernel (โหมด OS) และโหมดผู้ใช้ (แอปพลิเคชันเช่น SQL Server)
"พื้นที่ที่อยู่ของผู้ใช้" เซิร์ฟเวอร์ SQL แบ่งออกเป็นสองภูมิภาค: MemToLeave และ Buffer Pool
ขนาดของ MemToLeave (MTL) และ Buffer Pool (BPool) ถูกกำหนดโดย SQL Server ระหว่างการเริ่มต้น
Buffer managementเป็นองค์ประกอบหลักในการบรรลุ I / O ที่มีประสิทธิภาพสูง คอมโพเนนต์การจัดการบัฟเฟอร์ประกอบด้วยสองกลไก: ตัวจัดการบัฟเฟอร์เพื่อเข้าถึงและอัพเดตเพจฐานข้อมูลและพูลบัฟเฟอร์เพื่อลดไฟล์ฐานข้อมูล I / O
บัฟเฟอร์พูลยังแบ่งออกเป็นหลายส่วน สิ่งที่สำคัญที่สุดคือบัฟเฟอร์แคช (เรียกอีกอย่างว่าแคชข้อมูล) และแคชโพรซีเดอร์Buffer cacheเก็บเพจข้อมูลไว้ในหน่วยความจำเพื่อให้สามารถดึงข้อมูลที่เข้าถึงบ่อยจากแคชได้ อีกทางเลือกหนึ่งคือการอ่านหน้าข้อมูลจากดิสก์ การอ่านหน้าข้อมูลจากแคชช่วยเพิ่มประสิทธิภาพโดยการลดจำนวนการดำเนินการ I / O ที่ต้องการซึ่งช้ากว่าการดึงข้อมูลจากหน่วยความจำโดยเนื้อแท้
Procedure cacheรักษาขั้นตอนการจัดเก็บและแผนการดำเนินการสืบค้นเพื่อลดจำนวนครั้งที่ต้องสร้างแผนการสืบค้น คุณสามารถค้นหาข้อมูลเกี่ยวกับขนาดและกิจกรรมภายในแคชโพรซีเดอร์โดยใช้คำสั่ง DBCC PROCCACHE
ส่วนอื่น ๆ ของบัฟเฟอร์พูล ได้แก่ -
System level data structures - เก็บข้อมูลระดับอินสแตนซ์ของ SQL Server เกี่ยวกับฐานข้อมูลและล็อก
Log cache - สงวนไว้สำหรับการอ่านและเขียนหน้าบันทึกธุรกรรม
Connection context- การเชื่อมต่อกับอินสแตนซ์แต่ละครั้งจะมีพื้นที่หน่วยความจำขนาดเล็กเพื่อบันทึกสถานะปัจจุบันของการเชื่อมต่อ ข้อมูลนี้รวมถึงกระบวนงานที่จัดเก็บและพารามิเตอร์ฟังก์ชันที่ผู้ใช้กำหนดตำแหน่งเคอร์เซอร์และอื่น ๆ
Stack space - Windows จัดสรรพื้นที่สแต็กสำหรับแต่ละเธรดที่เริ่มต้นโดย SQL Server
สถาปัตยกรรมไฟล์ข้อมูล
สถาปัตยกรรมไฟล์ข้อมูลมีส่วนประกอบดังต่อไปนี้ -
กลุ่มไฟล์
ไฟล์ฐานข้อมูลสามารถจัดกลุ่มเข้าด้วยกันในกลุ่มไฟล์เพื่อวัตถุประสงค์ในการจัดสรรและการดูแลระบบ ไม่มีไฟล์ใดที่สามารถเป็นสมาชิกของกลุ่มไฟล์ได้มากกว่าหนึ่งกลุ่ม ไฟล์บันทึกไม่เคยเป็นส่วนหนึ่งของกลุ่มไฟล์ พื้นที่บันทึกถูกจัดการแยกจากพื้นที่ข้อมูล
มีกลุ่มไฟล์สองประเภทใน SQL Server หลักและผู้ใช้กำหนด กลุ่มไฟล์หลักประกอบด้วยไฟล์ข้อมูลหลักและไฟล์อื่น ๆ ที่ไม่ได้กำหนดให้กับกลุ่มไฟล์อื่นโดยเฉพาะ เพจทั้งหมดสำหรับตารางระบบถูกจัดสรรในกลุ่มไฟล์หลัก กลุ่มไฟล์ที่ผู้ใช้กำหนดคือกลุ่มไฟล์ใด ๆ ที่ระบุโดยใช้คีย์เวิร์ดกลุ่มไฟล์ในการสร้างฐานข้อมูลหรือแก้ไขคำสั่งฐานข้อมูล
กลุ่มไฟล์หนึ่งกลุ่มในแต่ละฐานข้อมูลทำงานเป็นกลุ่มไฟล์เริ่มต้น เมื่อ SQL Server จัดสรรเพจให้กับตารางหรือดัชนีที่ไม่มีการระบุกลุ่มไฟล์เมื่อสร้างขึ้นเพจจะถูกจัดสรรจากกลุ่มไฟล์ดีฟอลต์ ในการเปลี่ยนกลุ่มไฟล์เริ่มต้นจากกลุ่มไฟล์หนึ่งไปยังกลุ่มไฟล์อื่นควรมี db_owner fixed db role
โดยค่าเริ่มต้นกลุ่มไฟล์หลักคือกลุ่มไฟล์เริ่มต้น ผู้ใช้ควรมีบทบาทฐานข้อมูลคงที่ db_owner เพื่อสำรองไฟล์และกลุ่มไฟล์ทีละไฟล์
ไฟล์
ฐานข้อมูลมีไฟล์สามประเภท ได้แก่ ไฟล์ข้อมูลหลักไฟล์ข้อมูลรองและไฟล์บันทึก ไฟล์ข้อมูลหลักเป็นจุดเริ่มต้นของฐานข้อมูลและชี้ไปที่ไฟล์อื่น ๆ ในฐานข้อมูล
ทุกฐานข้อมูลมีไฟล์ข้อมูลหลักหนึ่งไฟล์ เราสามารถให้นามสกุลใดก็ได้สำหรับไฟล์ข้อมูลหลัก แต่ส่วนขยายที่แนะนำคือ.mdf. ไฟล์ข้อมูลทุติยภูมิคือไฟล์อื่นที่ไม่ใช่ไฟล์ข้อมูลหลักในฐานข้อมูลนั้น ฐานข้อมูลบางแห่งอาจมีไฟล์ข้อมูลทุติยภูมิหลายไฟล์ ฐานข้อมูลบางแห่งอาจไม่มีไฟล์ข้อมูลทุติยภูมิแม้แต่ไฟล์เดียว ส่วนขยายที่แนะนำสำหรับไฟล์ข้อมูลทุติยภูมิคือ.ndf.
ล็อกไฟล์เก็บข้อมูลบันทึกทั้งหมดที่ใช้ในการกู้คืนฐานข้อมูล ฐานข้อมูลต้องมีไฟล์บันทึกอย่างน้อยหนึ่งไฟล์ เราสามารถมีไฟล์บันทึกหลายไฟล์สำหรับฐานข้อมูลเดียว ส่วนขยายที่แนะนำสำหรับล็อกไฟล์คือ.ldf.
ตำแหน่งของไฟล์ทั้งหมดในฐานข้อมูลจะถูกบันทึกทั้งในฐานข้อมูลหลักและไฟล์หลักสำหรับฐานข้อมูล โดยส่วนใหญ่แล้วโปรแกรมฐานข้อมูลจะใช้ตำแหน่งไฟล์จากฐานข้อมูลหลัก
ไฟล์มีสองชื่อ - ตรรกะและกายภาพ ชื่อตรรกะใช้เพื่ออ้างถึงไฟล์ในคำสั่ง T-SQL ทั้งหมด ชื่อจริงคือ OS_file_name ซึ่งต้องเป็นไปตามกฎของ OS ข้อมูลและไฟล์บันทึกสามารถวางบนระบบไฟล์ FAT หรือ NTFS ได้ แต่ไม่สามารถวางบนระบบไฟล์บีบอัดได้ สามารถมีไฟล์ได้มากถึง 32,767 ไฟล์ในฐานข้อมูลเดียว
ขอบเขต
Extents เป็นหน่วยพื้นฐานที่จัดสรรพื้นที่ให้กับตารางและดัชนี ขอบเขตคือ 8 หน้าติดกันหรือ 64KB SQL Server มี Extents สองประเภท - Uniform และ Mixed ส่วนขยายที่เหมือนกันประกอบด้วยวัตถุชิ้นเดียวเท่านั้น ส่วนขยายแบบผสมจะใช้ร่วมกันได้ถึงแปดวัตถุ
หน้า
เป็นหน่วยพื้นฐานของการจัดเก็บข้อมูลใน MS SQL Server ขนาดของหน้าคือ 8KB จุดเริ่มต้นของแต่ละเพจคือส่วนหัว 96 ไบต์ที่ใช้ในการจัดเก็บข้อมูลระบบเช่นชนิดของเพจจำนวนพื้นที่ว่างบนเพจและอ็อบเจ็กต์ id ของอ็อบเจ็กต์ที่เป็นเจ้าของเพจ เพจข้อมูลมี 9 ประเภทใน SQL Server
Data - แถวข้อมูลที่มีข้อมูลทั้งหมดยกเว้นข้อมูลข้อความ ntext และรูปภาพ
Index - รายการดัชนี
Text\Image - ข้อมูลข้อความรูปภาพและ ntext
GAM - ข้อมูลเกี่ยวกับขอบเขตที่จัดสรร
SGAM - ข้อมูลเกี่ยวกับขอบเขตที่จัดสรรในระดับระบบ
Page Free Space (PFS) - ข้อมูลเกี่ยวกับพื้นที่ว่างบนหน้า
Index Allocation Map (IAM) - ข้อมูลเกี่ยวกับขอบเขตที่ใช้โดยตารางหรือดัชนี
Bulk Changed Map (BCM) - ข้อมูลเกี่ยวกับขอบเขตที่แก้ไขโดยการดำเนินการจำนวนมากตั้งแต่คำสั่งบันทึกการสำรองข้อมูลล่าสุด
Differential Changed Map (DCM) - ข้อมูลเกี่ยวกับขอบเขตที่เปลี่ยนแปลงไปตั้งแต่คำสั่งฐานข้อมูลสำรองล่าสุด
สถาปัตยกรรมไฟล์บันทึก
บันทึกธุรกรรมของเซิร์ฟเวอร์ SQL ดำเนินการอย่างมีเหตุผลราวกับว่าบันทึกธุรกรรมเป็นสตริงของระเบียนบันทึก บันทึกแต่ละรายการจะถูกระบุโดย Log Sequence Number (LSN) บันทึกบันทึกแต่ละรายการมี ID ของธุรกรรมที่เป็นสมาชิก
บันทึกบันทึกสำหรับการแก้ไขข้อมูลจะบันทึกการดำเนินการทางตรรกะที่ดำเนินการหรือบันทึกภาพก่อนและหลังของข้อมูลที่แก้ไข ภาพก่อนหน้าคือสำเนาของข้อมูลก่อนดำเนินการ ภาพหลังคือสำเนาของข้อมูลหลังจากดำเนินการแล้ว
ขั้นตอนในการกู้คืนการดำเนินการขึ้นอยู่กับประเภทของบันทึกบันทึก -
- บันทึกการดำเนินการทางตรรกะแล้ว
- เมื่อต้องการหมุนการดำเนินการทางตรรกะไปข้างหน้าการดำเนินการจะดำเนินการอีกครั้ง
- ในการย้อนกลับการดำเนินการทางตรรกะการดำเนินการตรรกะย้อนกลับจะดำเนินการ
- บันทึกภาพก่อนและหลัง
- ในการเลื่อนการดำเนินการไปข้างหน้าภาพหลังจะถูกนำไปใช้
- หากต้องการย้อนการดำเนินการภาพก่อนจะถูกนำไปใช้
การดำเนินการประเภทต่างๆจะถูกบันทึกไว้ในบันทึกธุรกรรม การดำเนินการเหล่านี้ ได้แก่ -
จุดเริ่มต้นและจุดสิ้นสุดของแต่ละธุรกรรม
ทุกการแก้ไขข้อมูล (แทรกอัปเดตหรือลบ) ซึ่งรวมถึงการเปลี่ยนแปลงตามโพรซีเดอร์ที่จัดเก็บของระบบหรือคำสั่ง data definition language (DDL) ไปยังตารางใด ๆ รวมถึงตารางระบบ
ทุกขอบเขตและการจัดสรรหน้าหรือการจัดสรร
การสร้างหรือวางตารางหรือดัชนี
การดำเนินการย้อนกลับจะถูกบันทึกไว้ด้วย ธุรกรรมแต่ละรายการสงวนพื้นที่ในบันทึกธุรกรรมเพื่อให้แน่ใจว่ามีพื้นที่บันทึกเพียงพอที่จะรองรับการย้อนกลับที่เกิดจากคำสั่งการย้อนกลับอย่างชัดเจนหรือหากพบข้อผิดพลาด พื้นที่ที่สงวนไว้นี้จะถูกปล่อยให้เป็นอิสระเมื่อธุรกรรมเสร็จสมบูรณ์
ส่วนของไฟล์บันทึกจากบันทึกบันทึกแรกที่ต้องมีอยู่สำหรับการย้อนกลับทั้งฐานข้อมูลที่ประสบความสำเร็จไปยังบันทึกบันทึกที่เขียนล่าสุดเรียกว่าส่วนที่ใช้งานอยู่ของบันทึกหรือบันทึกที่ใช้งานอยู่ นี่คือส่วนของบันทึกที่จำเป็นสำหรับการกู้คืนฐานข้อมูลทั้งหมด ไม่สามารถตัดทอนส่วนใดส่วนหนึ่งของบันทึกที่ใช้งานอยู่ได้ LSN ของบันทึกบันทึกแรกนี้เรียกว่า LSN การกู้คืนขั้นต่ำ (Min LSN)
SQL Server Database Engine แบ่งไฟล์บันทึกฟิสิคัลแต่ละไฟล์ภายในเป็นไฟล์บันทึกเสมือนจำนวนหนึ่ง ไฟล์บันทึกเสมือนไม่มีขนาดคงที่และไม่มีจำนวนไฟล์บันทึกเสมือนที่แน่นอนสำหรับไฟล์บันทึกทางกายภาพ
Database Engine จะเลือกขนาดของไฟล์บันทึกเสมือนแบบไดนามิกในขณะที่กำลังสร้างหรือขยายไฟล์บันทึก โปรแกรมฐานข้อมูลพยายามรักษาไฟล์เสมือนจำนวนเล็กน้อย ผู้ดูแลระบบไม่สามารถกำหนดขนาดหรือจำนวนไฟล์บันทึกเสมือนได้ ไฟล์บันทึกเสมือนในเวลาเดียวที่มีผลต่อประสิทธิภาพของระบบคือถ้าไฟล์บันทึกทางกายภาพถูกกำหนดโดยขนาดเล็กและค่า growth_increment
ค่าขนาดคือขนาดเริ่มต้นสำหรับล็อกไฟล์และค่า growth_increment คือจำนวนช่องว่างที่เพิ่มให้กับไฟล์ทุกครั้งที่ต้องใช้พื้นที่ใหม่ หากไฟล์บันทึกมีขนาดใหญ่ขึ้นเนื่องจากมีการเพิ่มขึ้นทีละน้อยไฟล์เหล่านั้นจะมีไฟล์บันทึกเสมือนจำนวนมาก สิ่งนี้สามารถชะลอการเริ่มต้นฐานข้อมูลและยังบันทึกการสำรองข้อมูลและเรียกคืนการดำเนินการ
เราขอแนะนำให้คุณกำหนดค่าขนาดไฟล์บันทึกให้ใกล้เคียงกับขนาดสุดท้ายที่ต้องการและมีค่า growth_increment ที่ค่อนข้างใหญ่ SQL Server ใช้บันทึกการเขียนล่วงหน้า (WAL) ซึ่งรับประกันว่าจะไม่มีการเขียนการแก้ไขข้อมูลลงในดิสก์ก่อนที่บันทึกบันทึกที่เกี่ยวข้องจะถูกเขียนลงในดิสก์ สิ่งนี้รักษาคุณสมบัติ ACID สำหรับธุรกรรม
SQL Server Management Studio เป็นเครื่องมือคอมโพเนนต์ไคลเอ็นต์ของเวิร์กสเตชันที่จะติดตั้งหากเราเลือกส่วนประกอบเวิร์กสเตชันในขั้นตอนการติดตั้ง สิ่งนี้ช่วยให้คุณสามารถเชื่อมต่อและจัดการ SQL Server ของคุณจากอินเทอร์เฟซแบบกราฟิกแทนที่จะต้องใช้บรรทัดคำสั่ง
ในการเชื่อมต่อกับอินสแตนซ์ระยะไกลของ SQL Server คุณจะต้องใช้ซอฟต์แวร์นี้หรือที่คล้ายกัน ถูกใช้โดยผู้ดูแลระบบนักพัฒนาผู้ทดสอบ ฯลฯ
วิธีการต่อไปนี้ใช้เพื่อเปิด SQL Server Management Studio
วิธีแรก
เริ่ม→โปรแกรมทั้งหมด→ MS SQL Server 2012 → SQL Server Management Studio
วิธีที่สอง
ไปที่เรียกใช้และพิมพ์ SQLWB (สำหรับเวอร์ชัน 2005) SSMS (สำหรับเวอร์ชัน 2008 และใหม่กว่า) จากนั้นคลิก Enter
SQL Server Management Studio จะเปิดขึ้นตามที่แสดงในภาพรวมต่อไปนี้ในวิธีใดวิธีหนึ่งข้างต้น
การเข้าสู่ระบบเป็นข้อมูลประจำตัวง่ายๆสำหรับการเข้าถึง SQL Server ตัวอย่างเช่นคุณระบุชื่อผู้ใช้และรหัสผ่านของคุณเมื่อเข้าสู่ระบบ Windows หรือแม้แต่บัญชีอีเมลของคุณ ชื่อผู้ใช้และรหัสผ่านนี้สร้างข้อมูลรับรอง ดังนั้นข้อมูลรับรองจึงเป็นเพียงชื่อผู้ใช้และรหัสผ่าน
SQL Server อนุญาตให้ล็อกอินได้สี่ประเภท -
- การเข้าสู่ระบบตามข้อมูลประจำตัวของ Windows
- ล็อกอินเฉพาะสำหรับ SQL Server
- การเข้าสู่ระบบที่แมปกับใบรับรอง
- ล็อกอินที่แมปกับคีย์ไม่สมมาตร
ในบทช่วยสอนนี้เราสนใจการเข้าสู่ระบบโดยใช้ข้อมูลประจำตัวของ Windows และการเข้าสู่ระบบเฉพาะสำหรับ SQL Server
การเข้าสู่ระบบตามข้อมูลประจำตัวของ Windows ช่วยให้คุณสามารถเข้าสู่ระบบ SQL Server โดยใช้ชื่อผู้ใช้และรหัสผ่านของ Windows หากคุณต้องการสร้างข้อมูลประจำตัวของคุณเอง (ชื่อผู้ใช้และรหัสผ่าน) คุณสามารถสร้างล็อกอินเฉพาะสำหรับ SQL Server
ในการสร้างแก้ไขหรือลบล็อกอิน SQL Server คุณสามารถใช้หนึ่งในสองวิธี -
- การใช้ SQL Server Management Studio
- การใช้คำสั่ง T-SQL
วิธีการต่อไปนี้ใช้เพื่อสร้างการเข้าสู่ระบบ -
วิธีแรก - การใช้ SQL Server Management Studio
Step 1 - หลังจากเชื่อมต่อกับ SQL Server Instance แล้วให้ขยายโฟลเดอร์การเข้าสู่ระบบดังที่แสดงในภาพรวมต่อไปนี้
Step 2 - คลิกขวาที่ Logins จากนั้นคลิก Newlogin จากนั้นหน้าจอต่อไปนี้จะเปิดขึ้น
Step 3 - กรอกคอลัมน์ชื่อล็อกอินรหัสผ่านและยืนยันรหัสผ่านตามที่แสดงในหน้าจอด้านบนจากนั้นคลิกตกลง
การเข้าสู่ระบบจะถูกสร้างขึ้นดังภาพต่อไปนี้
วิธีที่สอง - การใช้สคริปต์ T-SQL
Create login yourloginname with password='yourpassword'
ในการสร้างชื่อล็อกอินด้วย TestLogin และรหัสผ่าน 'P @ ssword' ให้รันใต้ข้อความค้นหาต่อไปนี้
Create login TestLogin with password='P@ssword'
ฐานข้อมูลคือชุดของวัตถุต่างๆเช่นตารางมุมมองกระบวนงานที่จัดเก็บฟังก์ชันทริกเกอร์ ฯลฯ
ใน MS SQL Server มีฐานข้อมูลสองประเภท
- ฐานข้อมูลระบบ
- ฐานข้อมูลผู้ใช้
ฐานข้อมูลระบบ
ฐานข้อมูลระบบถูกสร้างขึ้นโดยอัตโนมัติเมื่อเราติดตั้ง MS SQL Server ต่อไปนี้เป็นรายการฐานข้อมูลระบบ -
- Master
- Model
- MSDB
- Tempdb
- ทรัพยากร (เปิดตัวในเวอร์ชัน 2005)
- การแจกจ่าย (สำหรับคุณลักษณะการจำลองแบบเท่านั้น)
ฐานข้อมูลผู้ใช้
ฐานข้อมูลผู้ใช้สร้างขึ้นโดยผู้ใช้ (ผู้ดูแลระบบผู้พัฒนาและผู้ทดสอบที่มีสิทธิ์เข้าถึงเพื่อสร้างฐานข้อมูล)
วิธีการต่อไปนี้ใช้เพื่อสร้างฐานข้อมูลผู้ใช้
วิธีที่ 1 - การใช้ T-SQL Script หรือ Restore Database
ต่อไปนี้เป็นไวยากรณ์พื้นฐานสำหรับการสร้างฐานข้อมูลใน MS SQL Server
Create database <yourdatabasename>
หรือ
Restore Database <Your database name> from disk = '<Backup file location + file name>
ตัวอย่าง
ในการสร้างฐานข้อมูลชื่อ 'Testdb' ให้เรียกใช้แบบสอบถามต่อไปนี้
Create database Testdb
หรือ
Restore database Testdb from disk = 'D:\Backup\Testdb_full_backup.bak'
Note - D: \ backup คือตำแหน่งของไฟล์สำรองและ Testdb_full_backup.bak คือชื่อไฟล์สำรอง
วิธีที่ 2 - การใช้ SQL Server Management Studio
เชื่อมต่อกับอินสแตนซ์ SQL Server และคลิกขวาที่โฟลเดอร์ฐานข้อมูล คลิกที่ฐานข้อมูลใหม่และหน้าจอต่อไปนี้จะปรากฏขึ้น
ป้อนฟิลด์ชื่อฐานข้อมูลด้วยชื่อฐานข้อมูลของคุณ (ตัวอย่าง: เพื่อสร้างฐานข้อมูลด้วยชื่อ 'Testdb') แล้วคลิกตกลง ฐานข้อมูล Testdb จะถูกสร้างขึ้นดังที่แสดงในภาพรวมต่อไปนี้
เลือกฐานข้อมูลของคุณตามการกระทำของคุณก่อนดำเนินการต่อด้วยวิธีการใด ๆ ต่อไปนี้
วิธีที่ 1 - การใช้ SQL Server Management Studio
ตัวอย่าง
ในการเรียกใช้แบบสอบถามเพื่อเลือกประวัติการสำรองข้อมูลบนฐานข้อมูลที่เรียกว่า 'msdb' ให้เลือกฐานข้อมูล msdb ดังที่แสดงในภาพรวมต่อไปนี้
วิธีที่ 2 - การใช้สคริปต์ T-SQL
Use <your database name>
ตัวอย่าง
ในการเรียกใช้แบบสอบถามของคุณเพื่อเลือกประวัติการสำรองข้อมูลบนฐานข้อมูลที่เรียกว่า 'msdb' ให้เลือกฐานข้อมูล msdb โดยดำเนินการค้นหาต่อไปนี้
Exec use msdb
แบบสอบถามจะเปิดฐานข้อมูล msdb คุณสามารถดำเนินการค้นหาต่อไปนี้เพื่อเลือกประวัติการสำรองข้อมูล
Select * from backupset
ในการลบฐานข้อมูลของคุณออกจาก MS SQL Server ให้ใช้คำสั่ง drop database สามารถใช้สองวิธีต่อไปนี้เพื่อจุดประสงค์นี้
วิธีที่ 1 - การใช้สคริปต์ T-SQL
ต่อไปนี้เป็นไวยากรณ์พื้นฐานสำหรับการลบฐานข้อมูลออกจาก MS SQL Server
Drop database <your database name>
ตัวอย่าง
ในการลบชื่อฐานข้อมูล 'Testdb' ให้เรียกใช้แบบสอบถามต่อไปนี้
Drop database Testdb
วิธีที่ 2 - การใช้ MS SQL Server Management Studio
เชื่อมต่อกับ SQL Server และคลิกขวาที่ฐานข้อมูลที่คุณต้องการลบ คลิกคำสั่งลบและหน้าจอต่อไปนี้จะปรากฏขึ้น
คลิกตกลงเพื่อลบฐานข้อมูล (ในตัวอย่างนี้ชื่อ Testdb ตามที่แสดงในหน้าจอด้านบน) จาก MS SQL Server
Backupคือสำเนาข้อมูล / ฐานข้อมูลเป็นต้นการสำรองฐานข้อมูล MS SQL Server เป็นสิ่งจำเป็นสำหรับการปกป้องข้อมูล การสำรองข้อมูล MS SQL Server ส่วนใหญ่มีสามประเภท ได้แก่ แบบเต็มหรือฐานข้อมูล, ส่วนต่างหรือส่วนเพิ่มและบันทึกหรือบันทึกธุรกรรม
ฐานข้อมูลสำรองสามารถทำได้โดยใช้สองวิธีต่อไปนี้
วิธีที่ 1 - การใช้ T-SQL
ประเภทเต็ม
Backup database <Your database name> to disk = '<Backup file location + file name>'
ประเภทดิฟเฟอเรนเชียล
Backup database <Your database name> to
disk = '<Backup file location + file name>' with differential
ประเภทบันทึก
Backup log <Your database name> to disk = '<Backup file location + file name>'
ตัวอย่าง
คำสั่งต่อไปนี้ใช้สำหรับฐานข้อมูลสำรองที่เรียกว่า 'TestDB' ไปยังตำแหน่ง 'D: \' พร้อมชื่อไฟล์สำรอง 'TestDB_Full.bak'
Backup database TestDB to disk = 'D:\TestDB_Full.bak'
คำสั่งต่อไปนี้ใช้สำหรับฐานข้อมูลสำรองที่แตกต่างกันที่เรียกว่า 'TestDB' ไปยังตำแหน่ง 'D: \' พร้อมชื่อไฟล์สำรอง 'TestDB_diff.bak'
Backup database TestDB to disk = 'D:\TestDB_diff.bak' with differential
คำสั่งต่อไปนี้ใช้สำหรับล็อกฐานข้อมูลสำรองที่เรียกว่า 'TestDB' ไปยังตำแหน่ง 'D: \' พร้อมชื่อไฟล์สำรอง 'TestDB_log.trn'
Backup log TestDB to disk = 'D:\TestDB_log.trn'
วิธีที่ 2 - การใช้ SSMS (SQL SERVER Management Studio)
Step 1 - เชื่อมต่อกับอินสแตนซ์ฐานข้อมูลชื่อ 'TESTINSTANCE' และขยายโฟลเดอร์ฐานข้อมูลดังที่แสดงในภาพรวมต่อไปนี้
Step 2- คลิกขวาที่ฐานข้อมูล 'TestDB' และเลือกงาน คลิกสำรองข้อมูลและหน้าจอต่อไปนี้จะปรากฏขึ้น
Step 3- เลือกประเภทการสำรองข้อมูล (Full \ diff \ log) และตรวจสอบเส้นทางปลายทางซึ่งเป็นที่ที่จะสร้างไฟล์สำรอง เลือกตัวเลือกที่มุมบนซ้ายเพื่อดูหน้าจอต่อไปนี้
Step 4 - คลิกตกลงเพื่อสร้างการสำรองฐานข้อมูล 'TestDB' แบบเต็มดังที่แสดงในภาพรวมต่อไปนี้
Restoringเป็นกระบวนการคัดลอกข้อมูลจากข้อมูลสำรองและใช้ธุรกรรมที่บันทึกไว้กับข้อมูล การคืนค่าคือสิ่งที่คุณทำกับการสำรองข้อมูล นำไฟล์สำรองและเปลี่ยนกลับเป็นฐานข้อมูล
ตัวเลือกคืนค่าฐานข้อมูลสามารถทำได้โดยใช้สองวิธีต่อไปนี้
วิธีที่ 1 - T-SQL
ไวยากรณ์
Restore database <Your database name> from disk = '<Backup file location + file name>'
ตัวอย่าง
คำสั่งต่อไปนี้ใช้เพื่อกู้คืนฐานข้อมูลที่เรียกว่า 'TestDB' ด้วยชื่อไฟล์สำรอง 'TestDB_Full.bak' ซึ่งมีอยู่ในตำแหน่ง 'D: \' หากคุณเขียนทับฐานข้อมูลที่มีอยู่
Restore database TestDB from disk = ' D:\TestDB_Full.bak' with replace
หากคุณกำลังสร้างฐานข้อมูลใหม่ด้วยคำสั่ง restore และไม่มีเส้นทางข้อมูลที่คล้ายกันให้ล็อกไฟล์ในเซิร์ฟเวอร์เป้าหมายจากนั้นใช้ตัวเลือกการย้ายเช่นคำสั่งต่อไปนี้
ตรวจสอบให้แน่ใจว่ามีเส้นทาง D: \ Data ตามที่ใช้ในคำสั่งต่อไปนี้สำหรับข้อมูลและไฟล์บันทึก
RESTORE DATABASE TestDB FROM DISK = 'D:\ TestDB_Full.bak' WITH MOVE 'TestDB' TO
'D:\Data\TestDB.mdf', MOVE 'TestDB_Log' TO 'D:\Data\TestDB_Log.ldf'
วิธีที่ 2 - SSMS (สตูดิโอจัดการเซิร์ฟเวอร์ SQL)
Step 1- เชื่อมต่อกับอินสแตนซ์ฐานข้อมูลชื่อ 'TESTINSTANCE' และคลิกขวาที่โฟลเดอร์ฐานข้อมูล คลิกกู้คืนฐานข้อมูลตามที่แสดงในภาพรวมต่อไปนี้
Step 2 - เลือกปุ่มตัวเลือกอุปกรณ์และคลิกที่วงรีเพื่อเลือกไฟล์สำรองดังที่แสดงในภาพรวมต่อไปนี้
Step 3 - คลิกตกลงและหน้าจอต่อไปนี้จะปรากฏขึ้น
Step 4 - เลือกตัวเลือกไฟล์ซึ่งอยู่ที่มุมบนซ้ายตามที่แสดงในภาพรวมต่อไปนี้
Step 5 - เลือกตัวเลือกซึ่งอยู่ที่มุมบนซ้ายและคลิกตกลงเพื่อกู้คืนฐานข้อมูล 'TestDB' ดังที่แสดงในภาพรวมต่อไปนี้
ผู้ใช้อ้างถึงบัญชีในฐานข้อมูล MS SQL Server ซึ่งใช้ในการเข้าถึงฐานข้อมูล
ผู้ใช้สามารถสร้างได้โดยใช้สองวิธีต่อไปนี้
วิธีที่ 1 - การใช้ T-SQL
ไวยากรณ์
Create user <username> for login <loginname>
ตัวอย่าง
ในการสร้างชื่อผู้ใช้ 'TestUser' ด้วยการแมปกับชื่อล็อกอิน 'TestLogin' ในฐานข้อมูล TestDB ให้รันแบบสอบถามต่อไปนี้
create user TestUser for login TestLogin
โดยที่ 'TestLogin' คือชื่อล็อกอินที่สร้างขึ้นเพื่อเป็นส่วนหนึ่งของการสร้างการเข้าสู่ระบบ
วิธีที่ 2 - การใช้ SSMS (SQL Server Management Studio)
Note - ก่อนอื่นเราต้องสร้างล็อกอินด้วยชื่อใด ๆ ก่อนที่จะสร้างบัญชีผู้ใช้
ใช้ชื่อล็อกอินชื่อ 'TestLogin'
Step 1- เชื่อมต่อ SQL Server และขยายโฟลเดอร์ฐานข้อมูล จากนั้นขยายฐานข้อมูลที่เรียกว่า 'TestDB' ซึ่งเราจะสร้างบัญชีผู้ใช้และขยายโฟลเดอร์ความปลอดภัย คลิกขวาที่ผู้ใช้และคลิกที่ผู้ใช้ใหม่เพื่อดูหน้าจอต่อไปนี้
Step 2 - ป้อน 'TestUser' ในช่องชื่อผู้ใช้และคลิกที่วงรีเพื่อเลือกชื่อล็อกอินที่เรียกว่า 'TestLogin' ดังที่แสดงในภาพรวมต่อไปนี้
Step 3- คลิกตกลงเพื่อแสดงชื่อล็อกอิน คลิกตกลงอีกครั้งเพื่อสร้างผู้ใช้ 'TestUser' ดังที่แสดงในภาพรวมต่อไปนี้
Permissionsอ้างถึงกฎที่ควบคุมระดับการเข้าถึงที่ผู้บริหารต้องมีในการรักษาความปลอดภัย คุณสามารถให้สิทธิ์เพิกถอนและปฏิเสธสิทธิ์ใน MS SQL Server
ในการกำหนดสิทธิ์สามารถใช้วิธีใดวิธีหนึ่งจากสองวิธีต่อไปนี้
วิธีที่ 1 - การใช้ T-SQL
ไวยากรณ์
Use <database name>
Grant <permission name> on <object name> to <username\principle>
ตัวอย่าง
ในการกำหนดสิทธิ์การเลือกให้กับผู้ใช้ที่เรียกว่า 'TestUser' บนวัตถุที่เรียกว่า 'TestTable' ในฐานข้อมูล 'TestDB' ให้เรียกใช้แบบสอบถามต่อไปนี้
USE TestDB
GO
Grant select on TestTable to TestUser
วิธีที่ 2 - การใช้ SSMS (SQL Server Management Studio)
Step 1 - เชื่อมต่อกับอินสแตนซ์และขยายโฟลเดอร์ดังที่แสดงในภาพรวมต่อไปนี้
Step 2- คลิกขวาที่ TestUser แล้วคลิก Properties หน้าจอต่อไปนี้จะปรากฏขึ้น
Step 3คลิกค้นหาและเลือกตัวเลือกเฉพาะ คลิกประเภทวัตถุเลือกตารางแล้วคลิกเรียกดู เลือก 'TestTable' และคลิกตกลง หน้าจอต่อไปนี้จะปรากฏขึ้น
Step 4 เลือกช่องทำเครื่องหมายสำหรับคอลัมน์ Grant ภายใต้เลือกสิทธิ์และคลิกตกลงตามที่แสดงในภาพรวมด้านบน
Step 5เลือกสิทธิ์ใน 'TestTable' ของฐานข้อมูล TestDB ที่มอบให้กับ 'TestUser' คลิกตกลง
การตรวจสอบหมายถึงการตรวจสอบสถานะฐานข้อมูลการตั้งค่าซึ่งอาจเป็นชื่อเจ้าของชื่อไฟล์ขนาดไฟล์กำหนดการสำรองข้อมูลเป็นต้น
ฐานข้อมูล SQL Server สามารถตรวจสอบได้โดยส่วนใหญ่ผ่าน SQL Server Management Studio หรือ T-SQL และยังสามารถตรวจสอบได้ด้วยวิธีการต่างๆเช่นการสร้างงานเอเจนต์และการกำหนดค่าเมลฐานข้อมูลเครื่องมือของบุคคลที่สามเป็นต้น
สถานะฐานข้อมูลสามารถตรวจสอบได้ว่าอยู่ในสถานะออนไลน์หรืออยู่ในสถานะอื่นตามที่แสดงในภาพรวมต่อไปนี้
ตามหน้าจอด้านบนฐานข้อมูลทั้งหมดอยู่ในสถานะ "ออนไลน์" ถ้าฐานข้อมูลใดอยู่ในสถานะอื่นสถานะนั้นจะแสดงดังที่แสดงในภาพรวมต่อไปนี้
MS SQL Server มีบริการสองอย่างต่อไปนี้ซึ่งจำเป็นสำหรับการสร้างและบำรุงรักษาฐานข้อมูล นอกจากนี้ยังมีบริการเสริมอื่น ๆ สำหรับวัตถุประสงค์ที่แตกต่างกัน
- เซิร์ฟเวอร์ SQL
- ตัวแทนเซิร์ฟเวอร์ SQL
บริการอื่น ๆ
- เบราว์เซอร์เซิร์ฟเวอร์ SQL
- การค้นหาข้อความแบบเต็มของเซิร์ฟเวอร์ SQL
- บริการการรวมเซิร์ฟเวอร์ SQL
- บริการรายงานเซิร์ฟเวอร์ SQL
- บริการวิเคราะห์เซิร์ฟเวอร์ SQL
สามารถใช้บริการข้างต้นได้โดยใช้วิธีการต่อไปนี้
เริ่มบริการ
ในการเริ่มบริการใด ๆ สามารถใช้สองวิธีต่อไปนี้
วิธีที่ 1 - Services.msc
Step 1- ไปที่ Run พิมพ์ services.msc แล้วคลิกตกลง หน้าจอต่อไปนี้จะปรากฏขึ้น
Step 2- ในการเริ่มบริการให้คลิกขวาที่บริการคลิกปุ่มเริ่ม บริการจะเริ่มต้นตามที่แสดงในภาพรวมต่อไปนี้
วิธีที่ 2 - ตัวจัดการการตั้งค่าคอนฟิกเซิร์ฟเวอร์ SQL
Step 1 - เปิดตัวจัดการการกำหนดค่าโดยใช้กระบวนการต่อไปนี้
เริ่ม→โปรแกรมทั้งหมด→ MS SQL Server 2012 →เครื่องมือกำหนดค่า→ตัวจัดการการกำหนดค่าเซิร์ฟเวอร์ SQL
Step 2- เลือกชื่อบริการคลิกขวาและคลิกที่ตัวเลือกเริ่ม บริการจะเริ่มต้นตามที่แสดงในภาพรวมต่อไปนี้
หยุดบริการ
หากต้องการหยุดบริการใด ๆ สามารถใช้วิธีใดวิธีหนึ่งจากสามวิธีต่อไปนี้
วิธีที่ 1 - Services.msc
Step 1- ไปที่ Run พิมพ์ services.msc แล้วคลิกตกลง หน้าจอต่อไปนี้จะปรากฏขึ้น
Step 2- หากต้องการหยุดบริการให้คลิกขวาที่บริการแล้วคลิกหยุด บริการที่เลือกจะหยุดทำงานดังที่แสดงในภาพรวมต่อไปนี้
วิธีที่ 2 - ตัวจัดการการตั้งค่าคอนฟิกเซิร์ฟเวอร์ SQL
Step 1 - เปิดตัวจัดการการกำหนดค่าโดยใช้กระบวนการต่อไปนี้
เริ่ม→โปรแกรมทั้งหมด→ MS SQL Server 2012 →เครื่องมือกำหนดค่า→ตัวจัดการการกำหนดค่าเซิร์ฟเวอร์ SQL
Step 2- เลือกชื่อบริการคลิกขวาแล้วคลิกตัวเลือกหยุด บริการที่เลือกจะหยุดทำงานดังที่แสดงในภาพรวมต่อไปนี้
วิธีที่ 3 - SSMS (Studio จัดการเซิร์ฟเวอร์ SQL)
Step 1 - เชื่อมต่อกับอินสแตนซ์ดังที่แสดงในภาพรวมต่อไปนี้
Step 2- คลิกขวาที่ชื่ออินสแตนซ์แล้วคลิกตัวเลือกหยุด หน้าจอต่อไปนี้จะปรากฏขึ้น
Step 3 - คลิกปุ่มใช่และหน้าจอต่อไปนี้จะเปิดขึ้น
Step 4- คลิกตัวเลือกใช่บนหน้าจอด้านบนเพื่อหยุดบริการเอเจนต์ SQL Server บริการจะหยุดตามที่แสดงในภาพหน้าจอต่อไปนี้
บันทึก
เราไม่สามารถใช้วิธี SQL Server Management Studio เพื่อเริ่มบริการเนื่องจากไม่สามารถเชื่อมต่อได้เนื่องจากสถานะของบริการหยุดทำงานแล้ว
เราไม่สามารถยกเว้นการหยุดบริการเอเจนต์บริการ SQL ในขณะที่หยุดบริการ SQL Server เนื่องจาก SQL Server Agent Service เป็นบริการที่ต้องพึ่งพา
High Availability (HA) เป็นโซลูชัน \ process \ technology ที่จะทำให้ application \ database พร้อมใช้งานตลอด 24 ชั่วโมง 7 วันภายใต้การหยุดทำงานตามแผนหรือไม่ได้วางแผนไว้
โดยหลักแล้วมีห้าตัวเลือกใน MS SQL Server เพื่อให้บรรลุ \ setup โซลูชันความพร้อมใช้งานสูงสำหรับฐานข้อมูล
การจำลองแบบ
ข้อมูลต้นทางจะถูกคัดลอกไปยังปลายทางผ่านตัวแทนการจำลองแบบ (งาน) เทคโนโลยีระดับวัตถุ
คำศัพท์
- ผู้เผยแพร่เป็นเซิร์ฟเวอร์ต้นทาง
- ผู้จัดจำหน่ายเป็นทางเลือกและจัดเก็บข้อมูลที่จำลองแบบสำหรับสมาชิก
- Subscriber คือเซิร์ฟเวอร์ปลายทาง
บันทึกการจัดส่ง
ข้อมูลต้นทางจะถูกคัดลอกไปยังปลายทางผ่านงานสำรองบันทึกธุรกรรม เทคโนโลยีระดับฐานข้อมูล
คำศัพท์
- เซิร์ฟเวอร์หลักคือเซิร์ฟเวอร์ต้นทาง
- เซิร์ฟเวอร์รองคือเซิร์ฟเวอร์ปลายทาง
- เซิร์ฟเวอร์มอนิเตอร์เป็นทางเลือกและจะถูกตรวจสอบโดยสถานะการจัดส่งบันทึก
มิเรอร์
ข้อมูลหลักจะถูกคัดลอกไปยังรองผ่านพื้นฐานธุรกรรมเครือข่ายด้วยความช่วยเหลือของการมิเรอร์ปลายทางและหมายเลขพอร์ต เทคโนโลยีระดับฐานข้อมูล
คำศัพท์
- เซิร์ฟเวอร์หลักคือเซิร์ฟเวอร์ต้นทาง
- เซิร์ฟเวอร์มิเรอร์คือเซิร์ฟเวอร์ปลายทาง
- เซิร์ฟเวอร์ Witness เป็นทางเลือกและใช้เพื่อทำการเฟลโอเวอร์อัตโนมัติ
การทำคลัสเตอร์
ข้อมูลจะถูกเก็บไว้ในตำแหน่งที่ใช้ร่วมกันซึ่งใช้โดยเซิร์ฟเวอร์หลักและเซิร์ฟเวอร์รองตามความพร้อมใช้งานของเซิร์ฟเวอร์ เทคโนโลยีระดับอินสแตนซ์ จำเป็นต้องมีการตั้งค่า Windows Clustering กับพื้นที่เก็บข้อมูลที่ใช้ร่วมกัน
คำศัพท์
- Active node คือที่ที่ SQL Services กำลังทำงานอยู่
- โหนดแบบพาสซีฟคือที่ที่ SQL Services ไม่ทำงาน
กลุ่มความพร้อมใช้งาน AlwaysON
ข้อมูลหลักจะถูกคัดลอกไปรองผ่านทางธุรกรรมเครือข่าย กลุ่มเทคโนโลยีระดับฐานข้อมูล จำเป็นต้องมีการตั้งค่า Windows Clustering โดยไม่ต้องจัดเก็บข้อมูลร่วมกัน
คำศัพท์
- แบบจำลองหลักคือเซิร์ฟเวอร์ต้นทาง
- แบบจำลองรองคือเซิร์ฟเวอร์ปลายทาง
ต่อไปนี้เป็นขั้นตอนในการกำหนดค่าเทคโนโลยี HA (การทำมิเรอร์และการจัดส่งเข้าสู่ระบบ) ยกเว้นการทำคลัสเตอร์กลุ่ม AlwaysON Availability และการจำลองแบบ
Step 1 - สำรองข้อมูล T-log แบบเต็มและหนึ่งชุดของฐานข้อมูลต้นทาง
ตัวอย่าง
ในการกำหนดค่าการจัดส่งมิเรอร์ \ log สำหรับฐานข้อมูล 'TestDB' ใน 'TESTINSTANCE' เป็นเซิร์ฟเวอร์หลักและ 'DEVINSTANCE' เป็นเซิร์ฟเวอร์ SQL สำรองให้เขียนแบบสอบถามต่อไปนี้เพื่อสำรองข้อมูลแบบเต็มและ T-log บนเซิร์ฟเวอร์ Source (TESTINSTANCE)
เชื่อมต่อกับ 'TESTINSTANCE' SQL Server และเปิดแบบสอบถามใหม่และเขียนโค้ดต่อไปนี้และดำเนินการตามที่แสดงในภาพหน้าจอต่อไปนี้
Backup database TestDB to disk = 'D:\testdb_full.bak'
GO
Backup log TestDB to disk = 'D:\testdb_log.trn'
Step 2 - คัดลอกไฟล์สำรองไปยังเซิร์ฟเวอร์ปลายทาง
ในกรณีนี้เรามีเซิร์ฟเวอร์จริงเพียงเครื่องเดียวและติดตั้งอินสแตนซ์เซิร์ฟเวอร์ SQL สองรายการดังนั้นจึงไม่จำเป็นต้องคัดลอก แต่ถ้าอินสแตนซ์ SQL Server สองตัวอยู่ในเซิร์ฟเวอร์ทางกายภาพที่แตกต่างกันเราจำเป็นต้องคัดลอกสองไฟล์ต่อไปนี้ไปยังตำแหน่งใด ๆ ของ เซิร์ฟเวอร์รองที่ติดตั้งอินสแตนซ์ 'DEVINSTANCE'
Step 3 - กู้คืนฐานข้อมูลด้วยไฟล์สำรองในเซิร์ฟเวอร์ปลายทางด้วยตัวเลือก 'norecovery'
ตัวอย่าง
เชื่อมต่อกับ 'DEVINSTANCE' SQL Server และเปิด New Query เขียนรหัสต่อไปนี้เพื่อกู้คืนฐานข้อมูลด้วยชื่อ 'TestDB' ซึ่งเป็นชื่อเดียวกันของฐานข้อมูลหลัก ('TestDB') สำหรับการมิเรอร์ฐานข้อมูล อย่างไรก็ตามเราสามารถระบุชื่ออื่นสำหรับการกำหนดค่าการจัดส่งบันทึกได้ ในกรณีนี้ให้ใช้ชื่อฐานข้อมูล 'TestDB' ใช้ตัวเลือก 'norecovery' สำหรับการกู้คืนสองไฟล์ (ไฟล์สำรองแบบเต็มและ t-log)
Restore database TestDB from disk = 'D:\TestDB_full.bak'
with move 'TestDB' to 'D:\DATA\TestDB_DR.mdf',
move 'TestDB_log' to 'D:\DATA\TestDB_log_DR.ldf',
norecovery
GO
Restore database TestDB from disk = 'D:\TestDB_log.trn' with norecovery
รีเฟรชโฟลเดอร์ฐานข้อมูลในเซิร์ฟเวอร์ 'DEVINSTANCE' เพื่อดูฐานข้อมูลที่กู้คืน 'TestDB' พร้อมสถานะการกู้คืนดังที่แสดงในภาพรวมต่อไปนี้
Step 4 - กำหนดค่า HA (Log shipping, Mirroring) ตามความต้องการของคุณดังแสดงในภาพรวมต่อไปนี้
ตัวอย่าง
คลิกขวาที่ฐานข้อมูล 'TestDB' ของ 'TESTINSTANCE' SQL Server ซึ่งเป็นข้อมูลหลักและคลิก Properties หน้าจอต่อไปนี้จะปรากฏขึ้น
Step 5 - เลือกตัวเลือกที่เรียกว่า 'Mirroring' หรือ 'Transaction Log Shipping' ซึ่งอยู่ในกล่องสีแดงตามที่แสดงในหน้าจอด้านบนตามความต้องการของคุณและทำตามขั้นตอนวิซาร์ดที่แนะนำโดยระบบเพื่อกำหนดค่าให้เสร็จสมบูรณ์
Report เป็นส่วนประกอบที่แสดงได้
การใช้งาน
โดยทั่วไปแล้วรายงานจะใช้เพื่อวัตถุประสงค์สองประการคือการปฏิบัติการภายในของ บริษัท และการดำเนินงานภายนอกของ บริษัท
บริการรายงาน
นี่คือบริการที่ใช้ในการสร้างและเผยแพร่รายงานประเภทต่างๆ
ต่อไปนี้เป็นข้อกำหนดสามประการที่จำเป็นในการพัฒนารายงานใด ๆ
- กระบวนการทางธุรกิจ
- Layout
- Query\Procedure\View
BIDS (Business Intelligence Studio จนถึง 2008 R2) และ SSDT (SQL Server Data Tools จาก 2012) เป็นสภาพแวดล้อมในการพัฒนารายงาน
ต่อไปนี้เป็นขั้นตอนในการเปิดสภาพแวดล้อม BIDS \ SSDT เพื่อพัฒนารายงาน
Step 1- เปิด BIDS \ SSDT ตามเวอร์ชันจากกลุ่มโปรแกรม Microsoft SQL Server หน้าจอต่อไปนี้จะปรากฏขึ้น ในกรณีนี้ SSDT ได้เปิดขึ้น
Step 2- ไปที่ไฟล์ที่มุมบนซ้ายในภาพหน้าจอด้านบน คลิกสร้างและเลือกโครงการ หน้าจอต่อไปนี้จะเปิดขึ้น
Step 3 - ในหน้าจอด้านบนให้เลือกบริการรายงานภายใต้ระบบธุรกิจอัจฉริยะที่มุมบนซ้ายตามที่แสดงในภาพหน้าจอต่อไปนี้
Step 4 - ในหน้าจอด้านบนเลือกวิซาร์ดโปรเจ็กต์เซิร์ฟเวอร์รายงาน (จะแนะนำคุณทีละขั้นตอนผ่านวิซาร์ด) หรือโปรเจ็กต์เซิร์ฟเวอร์รายงาน (จะใช้เพื่อเลือกการตั้งค่าที่กำหนดเอง) ตามความต้องการของคุณในการพัฒนารายงาน
แผนการดำเนินการจะถูกสร้างขึ้นโดยเครื่องมือเพิ่มประสิทธิภาพการค้นหาด้วยความช่วยเหลือของสถิติและโครงสร้าง Algebrizer \ processor เป็นผลมาจากเครื่องมือเพิ่มประสิทธิภาพการสืบค้นและบอกวิธี \ ดำเนินงาน \ ความต้องการของคุณ
มีแผนการดำเนินการสองแบบที่แตกต่างกัน - โดยประมาณและตามจริง
Estimated execution plan ระบุมุมมองเครื่องมือเพิ่มประสิทธิภาพ
Actual execution plan ระบุสิ่งที่เรียกใช้แบบสอบถามและวิธีการดำเนินการ
แผนการดำเนินการจะถูกเก็บไว้ในหน่วยความจำที่เรียกว่าแผนแคชดังนั้นจึงสามารถใช้ซ้ำได้ แต่ละแผนจะถูกจัดเก็บเพียงครั้งเดียวเว้นแต่เครื่องมือเพิ่มประสิทธิภาพจะตัดสินใจแบบขนานสำหรับการดำเนินการของแบบสอบถาม
แผนการดำเนินการมีอยู่สามรูปแบบที่แตกต่างกันใน SQL Server ได้แก่ แผนกราฟิกแผนข้อความและแผน XML
SHOWPLAN คือสิทธิ์ที่จำเป็นสำหรับผู้ใช้ที่ต้องการดูแผนการดำเนินการ
ตัวอย่าง 1
ต่อไปนี้เป็นขั้นตอนในการดูแผนการดำเนินการโดยประมาณ
Step 1- เชื่อมต่อกับอินสแตนซ์ SQL Server ในกรณีนี้ 'TESTINSTANCE' คือชื่ออินสแตนซ์ตามที่แสดงในภาพรวมต่อไปนี้
Step 2- คลิกที่ตัวเลือกแบบสอบถามใหม่บนหน้าจอด้านบนและเขียนแบบสอบถามต่อไปนี้ ก่อนที่จะเขียนแบบสอบถามให้เลือกชื่อฐานข้อมูล ในกรณีนี้ 'TestDB' คือชื่อฐานข้อมูล
Select * from StudentTable
Step 3 - คลิกสัญลักษณ์ที่ไฮไลต์ในช่องสีแดงบนหน้าจอด้านบนเพื่อแสดงแผนการดำเนินการโดยประมาณดังที่แสดงในภาพหน้าจอต่อไปนี้
Step 4- วางเมาส์บนการสแกนตารางซึ่งเป็นสัญลักษณ์ที่สองเหนือช่องสีแดงในหน้าจอด้านบนเพื่อแสดงแผนการดำเนินการโดยประมาณโดยละเอียด ภาพหน้าจอต่อไปนี้จะปรากฏขึ้น
ตัวอย่าง 2
ต่อไปนี้เป็นขั้นตอนในการดูแผนการดำเนินการจริง
Step 1เชื่อมต่อกับอินสแตนซ์ SQL Server ในกรณีนี้ 'TESTINSTANCE' คือชื่ออินสแตนซ์
Step 2- คลิกตัวเลือกแบบสอบถามใหม่ที่เห็นบนหน้าจอด้านบนและเขียนคำค้นหาต่อไปนี้ ก่อนที่จะเขียนแบบสอบถามให้เลือกชื่อฐานข้อมูล ในกรณีนี้ 'TestDB' คือชื่อฐานข้อมูล
Select * from StudentTable
Step 3 - คลิกสัญลักษณ์ที่ไฮไลต์ในช่องสีแดงบนหน้าจอด้านบนจากนั้นเรียกใช้แบบสอบถามเพื่อแสดงแผนการดำเนินการจริงพร้อมกับผลการสืบค้นดังที่แสดงในภาพหน้าจอต่อไปนี้
Step 4- วางเมาส์บนการสแกนตารางซึ่งเป็นสัญลักษณ์ที่สองเหนือช่องสีแดงบนหน้าจอเพื่อแสดงแผนการดำเนินการจริงโดยละเอียด ภาพหน้าจอต่อไปนี้จะปรากฏขึ้น
Step 5 - คลิกผลลัพธ์ซึ่งอยู่ที่มุมบนด้านซ้ายของหน้าจอด้านบนเพื่อรับหน้าจอต่อไปนี้
บริการนี้ใช้เพื่อดำเนินการ ETL (การสกัดการแปลงและการโหลดข้อมูล) และการดำเนินการของผู้ดูแลระบบ BIDS (Business Intelligence Studio จนถึง 2008 R2) และ SSDT (SQL Server Data Tools ตั้งแต่ปี 2012) เป็นสภาพแวดล้อมในการพัฒนาแพ็คเกจ
สถาปัตยกรรมพื้นฐาน SSIS
โซลูชัน (การรวบรวมโครงการ) ---> โครงการ (การรวบรวมแพ็คเกจ) -> แพ็คเกจ (การรวบรวมงานสำหรับการดำเนินการ ETL และผู้ดูแลระบบ)
ภายใต้แพ็คเกจมีส่วนประกอบต่อไปนี้ -
- ขั้นตอนการควบคุม (คอนเทนเนอร์และงาน)
- กระแสข้อมูล (แหล่งที่มาการเปลี่ยนแปลงปลายทาง)
- ตัวจัดการเหตุการณ์ (การส่งข้อความอีเมล)
- Package Explorer (มุมมองเดียวสำหรับทั้งหมดในแพ็คเกจ)
- พารามิเตอร์ (การโต้ตอบกับผู้ใช้)
ต่อไปนี้เป็นขั้นตอนในการเปิด BIDS \ SSDT
Step 1- เปิด BIDS \ SSDT ตามเวอร์ชันจากกลุ่มโปรแกรม Microsoft SQL Server หน้าจอต่อไปนี้จะปรากฏขึ้น
Step 2- หน้าจอด้านบนแสดงว่าเปิด SSDT แล้ว ไปที่ไฟล์ที่มุมบนซ้ายในภาพด้านบนแล้วคลิกใหม่ เลือกโครงการและหน้าจอต่อไปนี้จะเปิดขึ้น
Step 3 - เลือก Integration Services ภายใต้ Business Intelligence ที่มุมบนซ้ายในหน้าจอด้านบนเพื่อรับหน้าจอต่อไปนี้
Step 4 - ในหน้าจอด้านบนให้เลือก Integration Services Project หรือ Integration Services Import Project Wizard ตามความต้องการของคุณในการพัฒนาสร้างแพ็กเกจ
บริการนี้ใช้เพื่อวิเคราะห์ข้อมูลจำนวนมหาศาลและนำไปใช้กับการตัดสินใจทางธุรกิจ นอกจากนี้ยังใช้เพื่อสร้างแบบจำลองทางธุรกิจสองหรือหลายมิติ
ในเวอร์ชัน SQL Server 2000 เรียกว่า MSAS (Microsoft Analysis Services)
จาก SQL Server 2005 เรียกว่า SSAS (SQL Server Analysis Services)
โหมด
มีสองโหมด - โหมดดั้งเดิม (โหมดเซิร์ฟเวอร์ SQL) และโหมดแบ่งปันจุด
โมเดล
มีสองโมเดล - แบบจำลองตาราง (สำหรับทีมและการวิเคราะห์ส่วนบุคคล) และโมเดลหลายมิติ (สำหรับการวิเคราะห์องค์กร)
BIDS (Business Intelligence Studio จนถึง 2008 R2) และ SSDT (SQL Server Data Tools ตั้งแต่ปี 2012) เป็นสภาพแวดล้อมที่ทำงานกับ SSAS
Step 1- เปิด BIDS \ SSDT ตามเวอร์ชันจากกลุ่มโปรแกรม Microsoft SQL Server หน้าจอต่อไปนี้จะปรากฏขึ้น
Step 2- หน้าจอด้านบนแสดงว่าเปิด SSDT แล้ว ไปที่ไฟล์ที่มุมบนซ้ายในภาพด้านบนแล้วคลิกใหม่ เลือกโครงการและหน้าจอต่อไปนี้จะเปิดขึ้น
Step 3- เลือก Analysis Services ในหน้าจอด้านบนภายใต้ Business Intelligence ตามที่เห็นที่มุมบนซ้าย หน้าจอต่อไปนี้จะปรากฏขึ้น
Step 4 - ในหน้าจอด้านบนให้เลือกตัวเลือกใดตัวเลือกหนึ่งจากรายการห้าตัวเลือกตามความต้องการของคุณในการทำงานกับบริการวิเคราะห์