[Bug] Invalid of GRANT command will breaks replication

MySQL 5.6 มี bug ที่ควรระวัง คือการรันคำสั่ง GRANT privileges บน PhpMyAdmin อาจทำให้เกิด slave หยุด replicate ข้อมูลได้ (bug report: http://bugs.mysql.com/bug.php?id=68892) หลังจากได้ใช้งาน MySQL 5.6 (version 5.6.14-1) แบบ replication ก็พบปัญหาการใช้งานเมื่อทำการ GRANT สิทธิให้กับ user บน…

How to redirect stdout and stderr to log file

วิธีการ redirect standard output และ standard error ไปเก็บไว้ยัง log file การ redirect stdout and stderr ไปยัง log file ที่ถูกต้อง command > /path/to/log 2>&1 ระบบจะทำการ redirect stdout ไปยัง log file และพร้อมกับ…

How to compress mysqldump output with gzip/bzip2

mysqldump คือคำสั่งที่ใช้ในการ export ข้อมูลใน MySQL ออกมาในรูปแบบของ sql format ซึ่งนิยมนำมาใช้ในการ backup ข้อมูลบน MySQL โดยทั่วไปแล้วเวลา backup database ด้วย mysqldump จะไม่มีการ compress ข้อมูลดังนั้นถ้าหากข้อมูลมีขนาดใหญ่จะทำให้ไฟล์ที่ได้จาก mysqldump มีขนาดใหญ่ตาม ดังนั้นในบทความนี้จะนำเสนอวิธีการ backup และ restore พร้อม compress ข้อมูลไปพร้อมๆกัน จะช่วยให้ประหยัดเนื้อที่จัดเก็บข้อมูล…

Find top frequently using queries on MySQL

MySQL tip: การหา top 10 query บน MYSQL ที่ถูกใช้งานมากที่สุดในช่วงเวลาหนึ่งๆ โดยการหา top 10 query นี้สามารถทำได้ 2 วิธีด้วยกัน คือ ใช้ tcpdump หรือ mysqlbinlog ในการนำ query ต่างๆ มาเข้า process การจัดลำดับ หา top 10…

How to install Apache2 worker MPM, FCGI and APC on CentOS

โดย default แล้ว Apache ที่ทำงานบน CentOS จะทำงานในโหมด Prefork ที่รองรับการทำงานร่วมกับ PHP module แต่ถ้าหากระบบต้องรองรับโหลดที่หนัก และจำเป็นต้องเปลี่ยนการทำงานเป็น Apache worker + PHP fcgi (หรือ PHP fastcgi) เพื่อช่วยลดการใช้งาน memory ที่สูง (เมื่อใช้งานในโหมด Prefork) สำหรับ CentOS สามารถติดตั้ง Apache2…

How to install Apache worker + PHP FastCGI and PHP-FPM on Ubuntu 12.04 LTS

Apache worker เหมาะสำหรับ web server ที่ต้องรับโหลดหนักแต่มีทรัพยากรในระบบไม่เยอะมาก เนื่องจาก Apache worker จะมีการใช้ memory ที่น้อยกว่า Prefork mode การติดตั้ง Apache worker ให้รองรับการทำงานร่วมกับ PHP จะมีความยุ่งยากมากกว่าแบบ Prefork เนื่องจากว่า Apache worker ไม่รองรับการทำงานร่วมกับ PHP module ดังนั้นจึงจำเป็นต้องทำการติดตั้ง PHP FastCGI…

How to copy a table in MySQL

MySQL database เราสามารถ copy table (โครงสร้างและข้อมูลต่างๆ) ได้ด้วยง่ายๆ ดังนี้ สมมติต้องการสร้าง table ชื่อ table_new มาใหม่ โดยให้มีโครงสร้างและข้อมูลจาก table ชื่อ table_name สามารถทำได้ดังนี้ 1. Create copy table ใหม่ด้วยคำสั่ง

How to disable IPv6 on CentOS

การ disable ipv6 สำหรับ สามารถทำได้หลากหลายวิธีด้วยกัน แต่วิธีที่แนะนำคือการ disable ipv6 ด้วยการแก้ไข /etc/sysctl.conf แทนการ disable ipv6 module บนระบบที่จะทำให้เกิดปัญหากับ SELinux และ component อื่นๆ วิธีการปิดการใช้งาน ipv6 ให้แก้ไขไฟล์ /etc/sysctl.conf และกำหนด parameter ด้านล่างลงในไฟล์