Quá trình “SWITCH LOG” trong Oracle là quá trình chuyển đổi giữa các bản ghi redo log. Khi một redo log được đầy, Oracle sẽ tự động chuyển sang sử dụng redo log mới, điều này được gọi là “SWITCH LOG”. Quá trình này không nên gây ra ảnh hưởng đáng kể đến hiệu suất của cơ sở dữ liệu.
Tuy nhiên, nếu quá trình “SWITCH LOG” xảy ra quá thường xuyên hoặc nếu kích thước của redo log không được cấu hình phù hợp, có thể gây ra một số vấn đề về hiệu suất. Dưới đây là một số cách mà “SWITCH LOG” có thể ảnh hưởng đến hiệu suất của cơ sở dữ liệu:
- Tăng tải I/O: Khi một redo log đầy và phải chuyển sang redo log mới, có thể gây ra một lượng I/O tăng lên do việc ghi các bản ghi redo vào redo log mới.
- Không thể tránh được phải chờ đợi: Trong quá trình SWITCH LOG, một số giao dịch có thể phải chờ đợi cho đến khi quá trình SWITCH LOG hoàn thành. Điều này có thể làm tăng thời gian phản hồi của các truy vấn và gây ra độ trễ.
- Có thể gây ra blocking: Trong một số trường hợp, quá trình SWITCH LOG có thể gây ra blocking cho các hoạt động khác trên cơ sở dữ liệu.
Theo tôi việc SWITCH LOG nên diễn ra 3-4 lần trong vòng 1H đồng hồ => nghĩa là cứ 15 phút thì thực hiện 1 lần là hợp lý đảm bảo cho hiệu năng của CSDL.
SELECT * FROM v$log_history;
## tần suất switchlog:
SELECT TO_CHAR(first_time, ‘YYYY-MM-DD HH24:MI:SS’) AS switch_time,
COUNT(*) AS switch_count
FROM v$log_history
WHERE first_time > SYSDATE – 1
GROUP BY TO_CHAR(first_time, ‘YYYY-MM-DD HH24:MI:SS’)
ORDER BY TO_CHAR(first_time, ‘YYYY-MM-DD HH24:MI:SS’) DESC;
Làm thế nào để đặt Switch log 15 phút 1 lần?
Như các bạn đã biết thì log sẽ tự động thực hiện switch khi mà file Redo online đầy để ghi ra Archivelog file và lưu vào FRA để đảm bảo an toàn.
Tính toán việc 15phut lần thì chung ta phải đặt dung lượng của Redo online log phù hợp với việc 15 phút => nghĩa là chúng ta phải biết được dung lượng Archivelog được tạo ra trong một khoảng thời gian là bao nhiêu => phụ thuộc vào các transaction…
Ví dụ: hệ thống của tôi 1h sinh ra 20GB archivelog => nghĩa là cứ 15 phút sẽ sinh ra 5GB
— Dung lượng archivelog mỗi lần thực hiện SWITCH
SELECT TO_CHAR(completion_time, ‘YYYY-MM-DD HH24:mi:ss’) AS hour,
ROUND(SUM(blocks*block_size)/1024/1024, 2) AS size_mb
FROM v$archived_log
WHERE completion_time > SYSDATE – 1
GROUP BY TO_CHAR(completion_time, ‘YYYY-MM-DD HH24:mi:ss’)
ORDER BY TO_CHAR(completion_time, ‘YYYY-MM-DD HH24:mi:ss’) DESC;
=> vậy để cho hệ thống cứ 15 phút switchlog 1 lần thì chúng ta cần phải set redo log là 5G
## kiểm tra log group và logfile
select * from v$logfile;
## tạo mới redo log group
ALTER DATABASE ADD LOGFILE GROUP 4 SIZE 5G,
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
=============================
cở sở dữ liệu, cơ sở dữ liệu quốc gia, database, 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/21c/23c/23ai, 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, docker, k8s, micro service, hoc solaris tutorial, hoc linux tutorial, hoc aix tutorial, unix tutorial, securecrt, xshell, mobaxterm, putty