กรณีที่ท่านใช้ MySQL และได้เปิดโหมดการทำงานของ binary log
– Binary log คือการเปิดโหมด log ของการทำงาน คำสั่งต่างๆ ที่ MySQL เก็บไว้ให้เรา เผื่อเวลาตารางมีปัญหา หรือ ต้องการทำระบบ Replicate จำเป็นต้องใช้งานไฟล์นี้ ในการกู้ข้อมูลคืน เทียบข้อมูลระหว่าง เครื่อง Master กับเครื่อง Slave โดยไฟล์ binary log จะเก็บไว้ที่  /var/lib/mysql  ตัวอย่างไฟล์  จะขึ้นต้นด้วย
– mysql-bin.000001
ตัว 000001 จะรันเลขไปเรื่อยๆ  เป็นต้น
– หากมีการเปิดใช้งาน binary log จะเป็นการสำเนาข้อมูล และเกิดไฟล์ log ขึ้นเรื่อยๆ ทำให้เสียเนื้อที่บางส่วนไป  และถ้าไม่มีการกำหนดวันเวลา ในการ expire ของ binary log ก็จะทำให้มีโอกาศเกิดปัญหาเรื่องเนื้อที่ไม่พอใช้งาน  เพราะถ้าหากเกิดปัญหา binary log ใช้เนื้อที่เก็บมากๆ อาจจะทำให้ hard disk เต็มได้  และต้องการลบไฟล์ออกไปบางส่วน  เพื่อให้เนื้อที่พอใช้งาน จำเป็นต้องรันคำสั่งบน MySQL ลบ เท่านั้น ไม่สามารถ ลบจากคำสั่งจาก Linux ได้เหมือนการลบไฟล์ทั่วไป ๆ ได้   ดังนั้นควรกำหนดเวลา expire ให้ดีและจำกัด การใช้งานด้วย
– คำสั่งตรวจสอบแสดงข้อมูล binary log
show binary logs;

– ต่อมาตรวจสอบ ด้วยคำสั่ง  แสดงวันหมดอายุ expire_logs
show variables like ‘expire_logs%’;

– แสดงว่าไม่มีการกำหนด วันหมดอายุของไฟล์ binary log
– สามารถกำหนดวัน expire_logs_days = xxx ได้  คำสั่งคือ

– ต่อมา ถ้ากำหนดวันหมดอายุ expire แล้ว เราสามารถสั่งคำสั่ง  flush log เพื่อลบ binary log ที่มีอายุเกินกว่าที่กำหนด  ก็ลบทิ้งได้

– ก็เป็นอันเสร็จ
– ต่อมา ถ้าจะกำหนดในไฟล์ my.cnf ก็กำหนดได้  เพิ่ม  expire_logs_days=xxx ได้เลยหลัง  [mysqld] นะครับ

– หรือจะสั่งคำสั่งลบไฟล์ตรงๆ ก็ได้ แต่สั่งได้ทีละ 1 คำสั่งนะครับ เช่น
– คำสั่งลบ binary log ของไฟล์ mysql-bin.000124

– ก็จะได้เนื้อที่คืนมาได้พอสมควร
– ก็ลองเอาทดสอบใช้งานดูนะครับ  คิดว่าน่าจะช่วยท่านได้   เพราะ admin จำเป็นต้องเป็นคนจัดการ  โดยหน้าที่รับผิดชอบ นะครับ   admin อย่างเราๆ ก็ต้องศึกษาเพิ่มเติมนะครับ

– ขอบคุณที่ติดตาม แล้วพบกันใหม่ครับ

 1,105 total views,  1 views today

[MySQL Tip] วิธีลบ binary log หรือ mysql-bin.xx ของ MySQL

ใส่ความเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *

This site uses Akismet to reduce spam. Learn how your comment data is processed.