สอบถามหลักสูตรเลือกช่องทางที่สะดวก ทีมงานตอบเองทุกช่อง
LINE @itgeniusตอบเร็วที่สุด · จ–ศ 9:00–17:00 น.
โทรศัพท์
02-570-8449สำนักงาน088-807-9770มือถือ
อีเมลและโซเชียล
contact@itgenius.co.thสำหรับใบเสนอราคาและเอกสารFacebookitgeniusonlineYouTubeitgeniusengขอคำปรึกษาจัดอบรมให้ทีม
ฐานข้อมูล · DBC-35

SQL Server Performance Tuning and Optimization

หลักสูตร SQL Server Performance Tuning and Optimization เป็นการอบรมการหาสาเหตุและแก้ปัญหา SQL Server ช้าบนรุ่น 2025 ตั้งแต่ Wait Statistics หน่วยความจำ และ Disk I/O ไปจนถึง Index, Locking, Execution Plan และ Query Store เหมาะกับผู้ดูแลระบบฐานข้อมูลและ Developer ที่เขียน T-SQL

อัปเดตล่าสุด
ราคาเริ่มต้น 12,510 บาท / ท่าน 13,900 −10% ยังไม่รวม VAT 7% · มีราคาหมู่คณะ
PDFดาวน์โหลด Course Outline
  • ระยะเวลา18 ชั่วโมง · 3 วัน
  • รูปแบบออนไซต์ / ออนไลน์สด
  • รอบถัดไป24–26 พ.ย. 69
  • ใบรับรองมี Certificate

ภาพรวมหลักสูตร

ระบบที่ใช้ SQL Server มักเริ่มช้าลงเมื่อข้อมูลและผู้ใช้เพิ่มขึ้น หลายทีมแก้ด้วยการเพิ่ม CPU หรือ RAM หรือสร้าง Index ตามคำแนะนำโดยไม่รู้สาเหตุจริง ผลคือค่าใช้จ่ายสูงขึ้นแต่ปัญหายังกลับมา การปรับประสิทธิภาพที่ได้ผลต้องเริ่มจากเข้าใจว่า SQL Server ทำงานอย่างไร วัดให้เห็นว่าเวลาหายไปที่ไหน แล้วแก้ให้ตรงจุดทั้งฝั่ง Administration และฝั่ง Development พร้อมมีเกณฑ์วัดไว้ติดตามความผิดปกติด้วยตนเอง

หลักสูตรนี้อัปเดตเป็น SQL Server 2025 เริ่มจากสถาปัตยกรรมภายใน ทั้ง SQLOS, Wait Statistics, หน่วยความจำ, Disk I/O, Transaction Log และ tempdb แล้วสร้าง Baseline ด้วย DMV และ Extended Events จากนั้นเจาะกลยุทธ์ Index, Columnstore, Statistics, Cardinality Estimation, Locking และ Deadlock รวมถึง Optimized Locking ที่มาใหม่ ก่อนเข้าสู่ Query Tuning การอ่าน Execution Plan การแก้ Parameter Sensitivity, Query Store, Query Store Hints และ Intelligent Query Processing ทุกหัวข้อมี Lab บนฐานข้อมูลตัวอย่าง และปิดท้ายด้วย Workshop แก้ระบบช้าตั้งแต่ต้นจนจบ (อบรม 3 วัน วันละ 6 ชั่วโมง รวม 18 ชั่วโมง ระดับ Intermediate)

สิ่งที่คุณจะได้รับ

  • อธิบายการทำงานของ SQLOS หน่วยความจำ Disk I/O และ Transaction Log ที่มีผลต่อประสิทธิภาพได้
  • วินิจฉัยปัญหาจาก Wait Statistics, DMV และ Extended Events และสร้าง Baseline ได้
  • วางกลยุทธ์ Index รวมถึง Columnstore และดูแล Index กับ Statistics ได้เหมาะสม
  • วิเคราะห์และลด Blocking กับ Deadlock ด้วย Isolation Level และ Optimized Locking
  • อ่าน Execution Plan และปรับ Query ให้เร็วขึ้นอย่างวัดผลได้
  • ใช้ Query Store, Query Store Hints และ Intelligent Query Processing แก้ปัญหา Plan ถดถอย
  • รองรับข้อมูลได้มากขึ้น เร็วขึ้น และใช้ทรัพยากรน้อยลงในระบบของตนเอง

หลักสูตรนี้เหมาะสำหรับ

  • ผู้ดูแลระบบฐานข้อมูล SQL Server ที่ต้องรับมือกับระบบช้าหรือทรัพยากรไม่พอ
  • Developer ที่เขียน T-SQL, Stored Procedure หรือใช้ ORM กับ SQL Server
  • System Engineer และทีม Infrastructure ที่ดูแลเซิร์ฟเวอร์ฐานข้อมูล
  • ผู้ที่ต้องการเริ่มสายอาชีพด้านฐานข้อมูลและอยากเข้าใจ SQL Server ลึกขึ้น

พื้นฐานของผู้เข้าอบรม

  • เขียน T-SQL ได้คล่อง เช่น JOIN, GROUP BY, Subquery และ Stored Procedure
  • เคยติดตั้งหรือดูแล SQL Server และใช้ SQL Server Management Studio มาก่อน
  • เข้าใจแนวคิด Primary Key, Index และ Transaction เบื้องต้น
  • โน้ตบุ๊กที่ติดตั้ง SQL Server Developer Edition หรือ Docker ได้ พร้อมสิทธิ์ติดตั้งโปรแกรม

หัวข้อการฝึกอบรม

รายละเอียดหลักสูตร

หลักสูตรนี้เป็นฉบับปรับปรุงใหม่ปี 2026 ของหลักสูตร Performance Tuning and Optimization MS SQL Server เนื้อหาอัปเดตให้ตรงกับ SQL Server 2025 อบรม 3 วัน วันละ 6 ชั่วโมง รวม 18 ชั่วโมง (09:00-16:00 น.) รูปแบบบรรยายพร้อม Lab ทุกหัวข้อบนฐานข้อมูลตัวอย่างและสคริปต์จำลองโหลด ระดับ Intermediate หลักสูตรครอบคลุมทั้งฝั่ง Administration และ Development ตั้งแต่สถาปัตยกรรมภายใน

การวินิจฉัยด้วย Wait Statistics และ Extended Events กลยุทธ์ Index และ Statistics, Locking และ Deadlock จนถึง Query Tuning, Query Store และ Intelligent Query Processing ต่างจากหลักสูตร SQL Server for Administration ที่เน้นงานติดตั้งและดูแลระบบทั่วไป ผู้เรียนใช้ SQL Server 2025 Developer Edition บนเครื่องของตนเอง และจะได้ Lab Guide ชุดสคริปต์วินิจฉัย และ Checklist ปรับประสิทธิภาพกลับไปใช้งานต่อ

Day 1 สถาปัตยกรรมภายในและการวินิจฉัยปัญหา

Section 1: Lab: เตรียม SQL Server 2025 และวิธีคิดการปรับจูน

  • ของใหม่ด้านประสิทธิภาพใน SQL Server 2025 และ Compatibility Level 170
  • ติดตั้ง Developer Edition บน Windows หรือ Docker และค่าตั้งต้นที่ควรปรับ
  • ใช้ SSMS รุ่นล่าสุดและ VS Code แทน Azure Data Studio ที่ปลดระวางแล้ว
  • วิธีคิดแบบวัดผลก่อนแก้: อาการ, Wait, Query และ Plan
  • Lab: กู้คืนฐานข้อมูลตัวอย่างและรันสคริปต์จำลองโหลด

Section 2: SQLOS, Task Scheduling และ Wait Statistics

  • SQLOS, Scheduler, Worker และสถานะ Running, Runnable, Suspended
  • อ่าน Wait Statistics จาก sys.dm_os_wait_stats และ sys.dm_exec_session_wait_stats
  • ความหมายของ Wait ที่พบบ่อย เช่น PAGEIOLATCH, CXPACKET, LCK และ WRITELOG
  • แยก Wait ที่เป็นปัญหาจริงออกจาก Wait ที่ไม่ต้องสนใจ
  • Lab: หาสาเหตุหลักของระบบช้าจาก Wait Statistics

Section 3: หน่วยความจำและ Disk I/O

  • Buffer Pool, Plan Cache และ Memory Grant
  • ตั้งค่า max server memory และปัญหาเมื่อ Windows หรือ Linux ขาดหน่วยความจำ
  • วัด Latency ของไฟล์ด้วย sys.dm_io_virtual_file_stats
  • Memory Grant ที่มากหรือน้อยเกินไปและการ Spill ลง tempdb
  • Lab: จำลองแรงกดดันด้านหน่วยความจำและอ่านผลจาก DMV

Section 4: Data File, Page, Transaction Log และ tempdb

  • Page, Extent และการจัดเก็บข้อมูลในไฟล์
  • สถาปัตยกรรม Transaction Log, VLF และการเติบโตของไฟล์ Log
  • Delayed Durability และ Accelerated Database Recovery
  • ตั้งค่า tempdb ให้เหมาะสม รวมถึงการจำกัดพื้นที่ tempdb ใน SQL Server 2025
  • Lab: ตรวจ VLF และปรับขนาดไฟล์ Log ของฐานข้อมูลตัวอย่าง

Section 5: Lab: เครื่องมือวัดผลและการสร้าง Baseline

  • DMV สำคัญสำหรับดู Session, Request และ Query ที่กำลังทำงาน
  • Extended Events และ Session แบบกำหนดเวลาหยุดอัตโนมัติ
  • Performance Monitor Counter ที่ควรเก็บเป็นประจำ
  • สร้าง Baseline และเกณฑ์แจ้งเตือนเมื่อค่าผิดปกติ
  • Lab: ตั้งงานเก็บ Baseline และเทียบก่อนและหลังเพิ่มโหลด
Day 2 Index, Statistics และ Concurrency

Section 6: สถาปัตยกรรมและกลยุทธ์ Index

  • โครงสร้าง B-tree ของ Clustered และ Nonclustered Index
  • เลือก Clustered Key และลำดับคอลัมน์ของ Composite Index
  • Covering Index ด้วย INCLUDE และ Filtered Index
  • ต้นทุนของ Index ต่อการ INSERT, UPDATE และ DELETE
  • Lab: ออกแบบ Index ให้ตรงกับ Query หลักของระบบ

Section 7: Lab: Missing Index และการบำรุงรักษา Index

  • อ่าน Missing Index DMV อย่างระวังและรวมคำแนะนำที่ซ้ำซ้อน
  • หา Index ที่ไม่ถูกใช้จาก sys.dm_db_index_usage_stats
  • Fragmentation, REORGANIZE, REBUILD และ Resumable Index Operation
  • Data Compression แบบ Row และ Page และการแบ่ง Partition
  • Lab: ทำแผนบำรุงรักษา Index ที่เหมาะกับขนาดฐานข้อมูล

Section 8: Columnstore และ Index ประเภทอื่น

  • Clustered และ Nonclustered Columnstore สำหรับงานรายงานและวิเคราะห์
  • Batch Mode บน Rowstore และ Columnstore
  • Ordered Columnstore Index และการปรับปรุงใน SQL Server 2025
  • เลือกใช้ Columnstore ร่วมกับ Rowstore ในระบบ OLTP
  • Lab: เทียบเวลา Query รายงานก่อนและหลังใช้ Columnstore

Section 9: Statistics และ Cardinality Estimation

  • Histogram, Density และการสร้างหรืออัปเดต Statistics อัตโนมัติ
  • Sampling Rate และการดูแล Statistics ของตารางใหญ่
  • Cardinality Estimator รุ่นต่าง ๆ และผลต่อ Plan
  • Cardinality Estimation Feedback รวมถึงแบบ Expression ใน SQL Server 2025
  • Lab: แก้ Plan ที่ประมาณจำนวนแถวผิดจาก Statistics ล้าสมัย

Section 10: Lab: Locking, Blocking และ Deadlock

  • Lock Mode, Lock Escalation และ Transaction Mode
  • Isolation Level รวมถึง Read Committed Snapshot และ Snapshot
  • Optimized Locking ใน SQL Server 2025 และเงื่อนไขการเปิดใช้
  • จับ Blocking Chain และ Deadlock Graph จาก system_health
  • Lab: จำลอง Deadlock แล้วแก้ด้วยการปรับโค้ดและ Index
Day 3 Query Tuning, Query Store และ Workshop

Section 11: Compile, Plan Cache และ Execution Plan

  • ขั้นตอน Compile, Optimize และ Execute ของ Query
  • Plan Cache, Recompile และปัญหา Ad hoc Query จำนวนมาก
  • อ่าน Actual Execution Plan และ Live Query Statistics
  • Operator สำคัญ, Estimated เทียบกับ Actual Rows และคำเตือนใน Plan
  • Lab: ไล่อ่าน Plan ของ Query ช้าทีละ Operator

Section 12: Lab: เทคนิค Query Tuning

  • เขียนเงื่อนไขให้ SARGable และหลีกเลี่ยงการแปลงชนิดข้อมูลโดยนัย
  • Key Lookup, Scan และ Sort ที่ไม่จำเป็น
  • Parameter Sniffing, Parameter Sensitive Plan Optimization และ OPPO
  • Query Hint และ Plan Guide เมื่อแก้โค้ดไม่ได้
  • Lab: ปรับ Query ช้า 5 แบบและวัดผลด้วย STATISTICS IO, TIME

Section 13: Query Store

  • เปิดใช้และตั้งค่า Query Store ให้เหมาะกับระบบ
  • รายงาน Regressed Queries และ Top Resource Consuming Queries
  • Force Plan และ Query Store Hints รวมถึง ABORT_QUERY_EXECUTION
  • Query Store บน Readable Secondary และกลไกภายในของ Query Store
  • Lab: ตรวจพบ Plan ถดถอยและแก้ด้วย Query Store

Section 14: Intelligent Query Processing

  • Memory Grant Feedback และ DOP Feedback ที่เปิดเป็นค่าเริ่มต้น
  • Adaptive Join, Batch Mode และ Approximate Query Processing
  • Optimized sp_executesql และการลดปัญหา Compile พร้อมกันจำนวนมาก
  • แผนอัปเกรด Compatibility Level อย่างปลอดภัยด้วย Query Store
  • Lab: เปิดฟีเจอร์ IQP แล้วเทียบผลกับระดับเดิม

Section 15: Workshop: แก้ระบบช้าตั้งแต่ต้นจนจบ

  • รับโจทย์ระบบช้าที่มีหลายสาเหตุซ้อนกัน
  • ไล่วินิจฉัยจาก Wait, Query, Plan, Index และ Locking
  • แก้ไข วัดผลเทียบกับ Baseline และเขียนรายงานสรุป
  • ใช้ AI Assistant ช่วยอธิบาย Plan และตรวจคำแนะนำก่อนใช้จริง
  • สรุป Checklist ปรับประสิทธิภาพสำหรับนำกลับไปใช้

รอบอบรมและรูปแบบการอบรม

สำหรับบุคคล — รอบอบรมทั่วไป

24–26พฤศจิกายน
ในคลาสเรียน24–26 พ.ย. 69
เหลือ 20 ที่นั่ง
19–21มกราคม
ในคลาสเรียน19–21 ม.ค. 70
เหลือ 20 ที่นั่ง
23–25มีนาคม
ในคลาสเรียน23–25 มี.ค. 70
เหลือ 20 ที่นั่ง
17–19พฤษภาคม
ในคลาสเรียน17–19 พ.ค. 70
เหลือ 20 ที่นั่ง
22–24มิถุนายน
ในคลาสเรียน22–24 มิ.ย. 70
เหลือ 20 ที่นั่ง
24–26สิงหาคม
ในคลาสเรียน24–26 ส.ค. 70
เหลือ 20 ที่นั่ง
26–28ตุลาคม
ในคลาสเรียน26–28 ต.ค. 70
เหลือ 20 ที่นั่ง
7–9ธันวาคม
ในคลาสเรียน7–9 ธ.ค. 70
เหลือ 20 ที่นั่ง

สำหรับองค์กร — In-house / Private Training

  • ปรับเนื้อหาให้ตรงกับเครื่องมือและงานจริงของทีม
  • เลือกวันเอง อบรมที่บริษัทหรือออนไลน์สด
  • ออกใบเสนอราคาในนามนิติบุคคลให้ฝ่ายจัดซื้อ
ขอใบเสนอราคาอบรมองค์กร

วิทยากรผู้สอน

คำถามที่พบบ่อย

อ่าน Execution Plan ใน SQL Server อย่างไรเพื่อหาจุดที่ทำให้คิวรีช้า

เปิด Actual Execution Plan ใน SSMS แล้วรันคิวรี จากนั้นอ่านแผนจากขวาไปซ้าย ดู Operator ที่ใช้เวลาหรือจำนวนแถวมาก เช่น Scan บนตารางใหญ่ Key Lookup จำนวนมาก หรือ Sort ที่ Spill ลง tempdb แล้วเทียบ Estimated Rows กับ Actual Rows ถ้าต่างกันมากมักแปลว่าสถิติล้าสมัยหรือมีปัญหา Parameter Sensitivity และควรดูคำเตือนอย่าง Missing Index หรือการแปลงชนิดข้อมูลโดยนัยประกอบด้วย

SARGable คืออะไร ทำไมมีผลต่อความเร็วของคิวรี

SARGable (Search ARGument able) คือเงื่อนไขใน WHERE ที่ SQL Server ใช้ Index Seek ได้ เช่น OrderDate >= '2025-01-01' แต่ถ้าครอบคอลัมน์ด้วยฟังก์ชันอย่าง YEAR(OrderDate) = 2025 ใช้ LIKE ที่ขึ้นต้นด้วย % หรือให้ชนิดข้อมูลไม่ตรงกันจนต้องแปลงค่า ระบบมักต้องสแกนทั้ง Index หรือทั้งตาราง วิธีแก้คือเขียนเงื่อนไขให้คอลัมน์อยู่ข้างเดียวโดยไม่ห่อด้วยฟังก์ชัน และให้ชนิดข้อมูลของพารามิเตอร์ตรงกับคอลัมน์

Blocking กับ Deadlock ใน SQL Server ต่างกันอย่างไร และ Optimized Locking ช่วยอะไร

Blocking คือ Session หนึ่งถือ Lock ไว้แล้วอีก Session ต้องรอ ซึ่งจะหายเองเมื่อ Transaction แรกจบ ส่วน Deadlock คือสอง Session ต่างถือ Lock ที่อีกฝ่ายต้องการ SQL Server จะยกเลิกฝ่ายหนึ่งพร้อมข้อผิดพลาด 1205 การลดปัญหาทำได้โดยให้ Transaction สั้น เข้าถึงตารางตามลำดับเดียวกัน และมี Index ที่เหมาะสม ใน SQL Server 2025 มี Optimized Locking ที่ลดจำนวน Lock ที่ต้องถือ ลดการ Lock Escalation และลด Blocking ระหว่างการแก้ไขข้อมูล โดยต้องเปิด Accelerated Database Recovery ก่อน

หลักสูตร SQL Server Performance Tuning and Optimization เหมาะกับใคร ต้องมีพื้นฐานอะไรมาก่อน

เหมาะกับผู้ดูแลระบบฐานข้อมูล Developer ที่เขียน T-SQL หรือใช้ ORM กับ SQL Server ทีม Infrastructure และผู้ที่ต้องการเข้าใจ SQL Server ลึกขึ้น ควรเขียน T-SQL ได้คล่อง เคยติดตั้งหรือดูแล SQL Server และใช้ SSMS มาก่อน และนำโน้ตบุ๊กที่ติดตั้ง SQL Server Developer Edition หรือ Docker ได้มาใช้ใน Lab

เรียนจบหลักสูตร SQL Server Performance Tuning and Optimization แล้วทำอะไรได้บ้าง

อธิบายการทำงานของ SQLOS หน่วยความจำ Disk I/O และ Transaction Log วินิจฉัยปัญหาจาก Wait Statistics, DMV และ Extended Events สร้าง Baseline วางกลยุทธ์ Index รวมถึง Columnstore ดูแล Statistics ลด Blocking และ Deadlock อ่าน Execution Plan และปรับคิวรี รวมถึงใช้ Query Store, Query Store Hints และ Intelligent Query Processing แก้ปัญหา Plan ถดถอย ผู้ผ่านการอบรมได้รับใบประกาศนียบัตร (Certificate of Completion) ที่มีเลขที่ของตัวเองและตรวจสอบออนไลน์ได้

จัดอบรมหลักสูตร SQL Server Performance Tuning and Optimization ให้ทีมในองค์กรได้ไหม

ได้ หลักสูตรนี้จัดเป็นการอบรมแบบ In-house ให้ทีมในองค์กรได้ และปรับตัวอย่างให้ตรงกับงานของทีม เช่น ฝึกวิเคราะห์คิวรีและ Index จากรูปแบบงานที่ระบบของทีมพบอยู่ ขอใบเสนอราคาได้จากหน้านี้ หรือติดต่อทาง LINE @itgenius โทร 02-570-8449

บทความที่เกี่ยวข้อง