🧠 Automatic SQL Tuning là gì?
Hiểu nôm na, Oracle tự động “soi” những câu SQL chạy chậm, tìm cách đề xuất hoặc sửa plan giúp câu lệnh chạy nhanh hơn.
Nó giống như trong đội bóng có 1 HLV video phân tích từng pha chậm, xem ai chạy sai, ai chuyền dở → từ đó đề xuất “chiến thuật” mới.
🤖 Oracle làm thế nào?
Mỗi đêm (mặc định từ 10 giờ tối đến 6 giờ sáng), Oracle chạy job ngầm gọi là:
Nó sẽ:
-
Tìm ra những câu SQL nào chạy lâu (dựa trên AWR, Active SQL)
-
Phân tích plan hiện tại và các plan thay thế
-
Thử giả lập plan mới trong môi trường an toàn
-
Nếu thấy plan mới chạy nhanh hơn rõ ràng → đề xuất hoặc tự động “gắn” plan tốt đó vào SQL
👇 Ví dụ dễ hiểu:
Câu SQL của bạn:
Hiện tại Oracle đang dùng FULL TABLE SCAN vì thiếu index.
Mỗi tối, Oracle phát hiện SQL này:
-
Chạy nhiều lần
-
Mất nhiều CPU, I/O
-
Không dùng index
Nó sẽ:
-
Thử tạo 1 index ảo trên
status
-
Thử ép plan dùng Index → thấy nhanh hơn 20 lần
-
Tạo đề xuất: “Tôi thấy plan này ngon hơn. Anh có muốn dùng không?”
💡 Tính năng cụ thể Oracle đề xuất:
Khi xem log tuning task, bạn sẽ thấy:
Tính năng đề xuất | Giải thích |
---|---|
SQL Profile | Lưu lại 1 plan "thông minh" → Oracle dùng lại lần sau |
Index Recommendation | Gợi ý tạo index mới |
Rewriting SQL | Gợi ý rewrite SQL nếu có thể đơn giản hơn |
Statistics Update | Gợi ý gather statistics vì quá cũ |
Accept Profile | Tự động bật SQL Profile nếu bạn cho phép |
📌 Có thực sự "tự động" như quảng cáo?
✔️ Có và Không.
Khía cạnh | Thực tế |
---|---|
Tự động phát hiện SQL chậm | ✅ Rất tốt |
Tự động tạo profile và plan mới | ❌ Chưa hoàn toàn nếu chưa bật ACCEPT_SQL_PROFILES=TRUE |
Tự tạo index mới | ❌ Chỉ dừng ở mức gợi ý |
Cần người can thiệp? | ✅ Phải có DBA đọc kết quả và kiểm tra |
🛠️ Làm sao bật Automatic SQL Tuning?
Để xem kết quả:
🧩 Kết luận đơn giản:
Bạn nên nhớ gì? |
---|
Đây là công cụ hỗ trợ cực mạnh cho DBA, nhất là khi hệ thống có nhiều câu SQL không tối ưu |
Oracle 10g chưa thực sự "tự động hóa hoàn toàn", nhưng từ 11g+ trở đi thì mạnh hơn nhiều (auto accept) |
Nó phân tích giúp bạn, còn bạn là người quyết định |
Rất hữu ích cho hệ thống có nhiều ứng dụng khác nhau truy cập, và bạn không thể kiểm soát hết mã nguồn |
Website không chứa bất kỳ quảng cáo nào, mọi đóng góp để duy trì phát triển cho website (donation) xin vui lòng gửi về STK 90.2142.8888 - Ngân hàng Vietcombank Thăng Long - TRAN VAN BINH
=============================
Nếu bạn không muốn bị AI thay thế và tiết kiệm 3-5 NĂM trên con đường trở thành DBA chuyên nghiệp hay làm chủ Database thì hãy đăng ký ngay KHOÁ HỌC ORACLE DATABASE A-Z ENTERPRISE, được Coaching trực tiếp từ tôi với toàn bộ bí kíp thực chiến, thủ tục, quy trình của gần 20 năm kinh nghiệm (mà bạn sẽ KHÔNG THỂ tìm kiếm trên Internet/Google) từ đó giúp bạn dễ dàng quản trị mọi hệ thống Core tại Việt Nam và trên thế giới, đỗ OCP.
- CÁCH ĐĂNG KÝ: Gõ (.) hoặc để lại số điện thoại hoặc inbox https://m.me/tranvanbinh.vn hoặc Hotline/Zalo 090.29.12.888
- Chi tiết tham khảo:
https://bit.ly/oaz_w
=============================
2 khóa học online qua video giúp bạn nhanh chóng có những kiến thức nền tảng về Linux, Oracle, học mọi nơi, chỉ cần có Internet/4G:
- Oracle cơ bản: https://bit.ly/admin_1200
- Linux: https://bit.ly/linux_1200
=============================
KẾT NỐI VỚI CHUYÊN GIA TRẦN VĂN BÌNH:
📧 Mail: binhoracle@gmail.com
☎️ Mobile/Zalo: 0902912888
👨 Facebook: https://www.facebook.com/BinhOracleMaster
👨 Inbox Messenger: https://m.me/101036604657441 (profile)
👨 Fanpage: https://www.facebook.com/tranvanbinh.vn
👨 Inbox Fanpage: https://m.me/tranvanbinh.vn
👨👩 Group FB: https://www.facebook.com/groups/DBAVietNam
👨 Website: https://www.tranvanbinh.vn
👨 Blogger: https://tranvanbinhmaster.blogspot.com
🎬 Youtube: https://www.youtube.com/@binhguru
👨 Tiktok: https://www.tiktok.com/@binhguru
👨 Linkin: https://www.linkedin.com/in/binhoracle
👨 Twitter: https://twitter.com/binhguru
👨 Podcast: https://www.podbean.com/pu/pbblog-eskre-5f82d6
👨 Địa chỉ: Tòa nhà Sun Square - 21 Lê Đức Thọ - Phường Mỹ Đình 1 - Quận Nam Từ Liêm - TP.Hà Nội
=============================
AI, trí tuệ nhân tạo, artificial intelligence, machine learning, deep learning, LLM, ChatGPT, DeepSeek, Grok, oracle tutorial, học oracle database, Tự học Oracle, Tài liệu Oracle 12c tiếng Việt, Hướng dẫn sử dụng Oracle Database, Oracle SQL cơ bản, Oracle SQL là gì, Khóa học Oracle Hà Nội, Học chứng chỉ Oracle ở đầu, Khóa học Oracle online,sql tutorial, khóa học pl/sql tutorial, học dba, học dba ở việt nam, khóa học dba, khóa học dba sql, tài liệu học dba oracle, Khóa học Oracle online, học oracle sql, học oracle ở đâu tphcm, học oracle bắt đầu từ đâu, học oracle ở hà nội, oracle database tutorial, oracle database 12c, oracle database là gì, oracle database 11g, oracle download, oracle database 19c, oracle dba tutorial, oracle tunning, sql tunning , oracle 12c, oracle multitenant, Container Databases (CDB), Pluggable Databases (PDB), oracle cloud, oracle security, oracle fga, audit_trail,oracle RAC, ASM, oracle dataguard, oracle goldengate, mview, oracle exadata, oracle oca, oracle ocp, oracle ocm , oracle weblogic, postgresql tutorial, mysql tutorial, mariadb tutorial, ms sql server tutorial, nosql, mongodb tutorial, oci, cloud, middleware tutorial, hoc solaris tutorial, hoc linux tutorial, hoc aix tutorial, unix tutorial, securecrt, xshell, mobaxterm, putty