แค่เว็บๆหนึ่ง ! ที่อยากเก็บประสบการณ์
Home
 

April, 2016

Create Trigger in MySQL เพื่อเก็บ log

กรณี อนากรู้ว่า ในตารางมีการแก้ไขข้อมูลอะไรไปบ้าง  เราสามารถ เก็บ log ได้โดยใช้ trigger ตาม link http://www.mysqltutorial.org/create-the-first-trigger-in-mysql.aspx

Off 

การลบ ข้อมูลในตาราง ออก 1 record กรณี มีข้อมูลซ้ำ กัน 2 record

สมมติว่า ข้อมูลสินค้า เดียวกัน มี  2 record  ถ้าต้องการลบ ออก 1 record จะทำอย่างไร ? ผมใช้วิธีสร้าง temp tableขึ้นมา ตามตัวอย่าง ต้องหารหา ข้อมูลตาราง tbl1  ที่มีมากกว่า 1 record CREATE TEMPORARY TABLE tempx SELECT *  FROM tbl1  GROUP BY age HAVING COUNT(*) > 1; แสดงข้อมูล ตารางtempx ที่สรา้งขึ้น select * from tempx; ลบข้อมูล จากตาราง tbl1 กรณี มี id ในตาราง tempx DELETE FROM tbl1 WHERE …Continue reading

Off 

ค้นหา File type (นามสกุลไฟล์) ใน linux

วันนี้ server Shrae samba  มีไฟล์ ไวรัส  .exe  ติดมา มีการสร้างไฟล์ .exe เป็นชื่อ Folder วิธีค้นหาใน Linux  ดังนี้ 1. # find /data     -type f -name “*.exe”     ปรากฏว่า มีเยอะมากๆๆๆ ถ้าจะให้ลบทีละไฟล์คงไม่ไหว 2.วิธีลบให้ใช้คำสั่งดังนี้ # find /wwwroot/ -type f -name “*.exe”  -exec rm -i {} \; แบบนี้คงไม่ไหวแน่ๆครับ ต้องคอยกด y ทุกไฟล์  เลยเปลี่ยน จาก -i  เป็น -rf ดังนี้ครับ # find /wwwroot/ -type …Continue reading

Off 

การลบ binary log ของ MySQL

MySQL ถ้าหากมีการเปิดใช้งาน binary log จะทำให้มีการเสียเนื้อที่บางส่วนไป ซึ่งถ้าหากไม่มีการกำหนดวันและเวลาในการ expire ของ binary log จะทำให้มีโอกาสเกิดปัญหาเรื่องเนื้อที่ไม่พอใช้งานเกิดขึ้นได้ หากเกิดปัญหา binary log ใช้เนื้อที่ในการเก็บข้อมูลเยอะมาก และต้องการลบออกไปบางส่วนเพื่อให้มีเนื้อที่พอใช้งานจำเป็นต้องรันคำสั่งบน MySQL เท่านั้น ไม่สามารถรันคำสั่งลบจาก OS ได้เหมือนการลบไฟล์ทั่วไป ดังนั้นควรทำตามขั้นตอนการลบ binary log ดังนี้ รันคำสั่งด้านล่างเพื่อแสดงข้อมูล binary log บนระบบ mysql> SHOW BINARY LOGS; +——————+————+ | Log_name         | File_size  | +——————+————+ | mysql-bin.000601 | 1073743595 | | mysql-bin.000602 | 1083142845 | | mysql-bin.000603 | 1073742373 | | mysql-bin.000604 …Continue reading

Off 
Top