นอกเรื่อง - เทคนิคการใช้ mysqldump - How to mysqldump

วันนี้จะมาพูดถึงเรื่องการสำรองฐานข้อมูลสักหน่อย ปกติแล้วเราจะป้องกันความผิดพลาดที่เกิดขึ้นกับเวปไซต์ของเราโดยการสำรองข้อมูลที่มีความสำคัญอย่างสม่ำเสมอ หากมีเหตุอันไม่พึงประสงค์เช่น error ที่เกิดจากการแก้ไขหรือปัจจัยภายนอกอย่าง host ที่เราใช้กันอยู่เป็นต้น ก็สามารถนำข้อมูลสำรองกลับมาใช้ได้อย่างทันท่วงที

การสำรองฐานข้อมูลอาจจะไม่ใช่เรื่องยากสำหรับบางคน สำหรับ MySQL ก็มีโปรแกรม frontend ดีๆสำหรับจัดการอยู่หลายตัวเช่น SQL Yog หรือ Mysql Front แต่บางครั้งอาจจะมีเหตุจำเป็นทำให้เราไม่สามารถใช้ tool พวกนี้ได้ การใช้งาน command line เป็นคำตอบหนึ่งที่จะช่วยให้เราทำงานสำเร็จลุล่วงไปได้ด้วยดี


พื้นฐานการใช้งาน mysqldump

หากเราต้องการจะสำรองฐานข้อมูลชื่อว่า mydatabase ก็จะใช้คำสั่ง

mysqldump -u root -p mydatabase > mydatabase.sql

เราก็จะได้ไฟล์ฐานข้อมูล mysqldatabase.sql ออกมา หรือบางครั้งเราต้องการแค่ table เดียวที่อยู่ในฐานข้อมูลของเราก็ใช้คำสั่ง

mysqldump -u root -p mydatabase mytable > mytable.sql

โดย mytable ก็คือชื่อ table ที่เราต้องการนั้นเอง หากว่า table ของเรามีจำนวนข้อมูลมากเป็นแสนๆแต่เราต้องการจำนวนแค่ 1000 แถวก็สามารถใส่ option เพิ่มได้อีกโดยใช้คำสั่ง

mysqldump -u root -p --where="true limit 1000" mydatabase mytable > mytable.sql

option --where ที่เราใช้นอกจากการใช้ limit แล้วยังสามารถใช้ในการกรองข้อมูลได้ด้วยเช่น เราต้องการข้อมูลที่ถูกสร้างขึ้นในเดือน มิถุนายน ปี 2009 ก็ใช้คำสั่ง

mysqldump -u root -p --where="date_format(created_date,'%Y%m') = '200906'"
mydatabase mytable > mytable.sql


เป็นต้น

สำหรับการนำไฟล์ dump ที่เราได้ออกมาก็เพียงแค่ใช้ตำสั่ง

mysql -u root -p mydatabase < mydatabase.sql

โดยกรณีที่เราต้องการ dump ไฟล์ที่เป็นฐานข้อมูลทั้งก้อน(ไฟล์ที่ได้จากกรณีแรกสุด) ต้องทำการสร้างฐานข้อมูลขึ้นมาก่อนทุกครั้ง

หวังว่าบทความนี้คงเป็นประโยชน์กับทุกคนนะครับ

อ่านต่อ...

ติดตั้ง Joomla Step by Step - ตอนที่ 2 ติดตั้ง Joomla

กลับมาต่อกันเรื่องการติดตั้ง Joomla ครับ ครั้งก่อนเราได้ทำการติดตั้ง webserver ของเราเสร็จแล้ว จะขอเกริ่นเกี่ยวกับเซิร์ฟเวอร์ของเรานิดหน่อย

ค่าเริ่มต้นของ XAMPP

  • URL: http://localhost/
  • MySQL สามารถ login โดยใช้ username:root โดยที่ไม่ต้องกรอก password โดยเราสามารถเข้าไปแก้ password ของ root ได้ ในที่นี้ผมจะยังไม่แก้ครับเพื่อความรวดเร็ว
  • web root directory จะอยู่ที่ c:\XAMPP\htdocs\ ตามตัวอย่างที่แล้วที่ผมแตก zip ไว้ที่ c:\
เมื่อเรารู้รายละเอียดเริ่มต้นของเซิร์ฟเวอร์เราแล้วก็ได้เวลาติดตั้งกันแล้ว

ติดตั้ง Joomla
  1. ก่อนอื่นก็ไปโหลดแพคเกจของ Joomla มาก่อนครับ [โหลด joomla full package]
  2. จากนั้นสร้าง folder ขึ้นมาใหม่ชื่อว่า joomla แล้วทำการแตก zip joomla ไว้ใน folder นี้ จากนั้นทำการ copy ไปวางไว้ใน web root directory ของเรา (c:\XAMPP\htdocs\)


  3. เปิด browser ขึ้นมาแล้วพิมพ์ URL: http://localhost/joomla จากนั้นก็เลือกภาษาก่อนแล้วกด Next

  4. ตรวจดูว่ามีข้อผิดพลาดใดบ้าง หากมีการผิดพลาดจะมี status สีแดงบอกให้ทำการแก้ไขก่อนแล้วเลือก ตรวจสอบอีกครั้ง หากไม่มีข้อผิดพลาดใดๆก็เลือกถัดไป ในตัวอย่างผมมีข้อผิดพลาดอันนึงก็คือการแสดงข้อผิดพลาดของ PHP ซึ่งไม่มีผลกระทบใดๆก็สามารถไปขั้นต่อไปได้เลยครับ โดยปกติแล้วถ้าหากใช้ XAMPP เป็น webserver มักจะไม่ค่อยมีปัญหาครับ

  5. หน้านี้ไม่มีอะไรข้ามไปเลย (เป็นเรื่องเกี่ยวกับลิขสิทธ์การใช้งานหากสนใจก็อ่านก่อนก็ได้ครับ)

  6. กรอกรายละเอียดเกี่ยวกับฐานข้อมูลของเรา กรอกตามรูปเลยครับยกเว้นรหัสผ่านไม่ต้องกรอกครับ โดยฐานข้อมูลผมจะใช้ชื่อว่า joomla ครับ

  7. ติดตั้ง FTP ส่วนใหญ่ไม่ค่อยได้ใช้ครับ นอกจากใครที่มีความรู้เรื่อง FTP ก็สามารถตั้งค่าได้ที่หน้านี้ครับ จากนั้นเลือก ไม่สนับสนุนแล้วก็ ถัดไปครับ

  8. การตั้งค่าระบบให้กรอก email และรหัสผ่านสำหรับ admin เพราะหลังจากที่เราติดตั้งเสร็จแล้วต้องเข้าไปจัดการระบบเพื่อแก้ไขค่าต่างๆ อีกส่วนหนึ่งก็คือการติดตั้งข้อมูลตัวอย่างเราสารถเลือกติดตั้งหรือไม่ก็ได้ แนะนำให้เลือกครับสำหรับือใหม่เพราะหลังจากติดตั้งเสร็จจะเห็น content ทำให้ง่ายต่อการทำความเข้าใจ

  9. เสร็จสิ้นการติดตั้งแต่ยังใช้งานไม่ได้เราต้องเข้าไปลบ folder installation ใน folder joomla ของเราก่อน ไม่อย่างนั้นจะไม่สามารถใช้งานได้


  10. เมื่อทำการลบ folder installation ให้ click ดูหน้า website ก็จะเห็นภาพที่น่าประทับใจอีกครั้ง

หลังจากนี้เราสามารถเข้าไปแก้ไขส่วนต่างๆ โดยเข้่าไปที่ ้http://localhost/joomla/administrator จากนั้นกรอกชื่อผู้ใช้เป็น admin ส่วนรหัสผ่านตามที่เราได้กรอกไว้ในขั้นตอนที่ 8 ส่วนรายละเอียดการใช้งานอยากให้ไปศึกษากันครับ ไม่ยาก หรือหากมีเวลาผมจะกลับมาเขียนต่อในส่วนของ admin ครับ

อ่านต่อ...

Code block ใน blogger ง่ายนิดเดียว

เวลาที่เราต้องการจะ share code ใน blogger สามารถใช้ tag html

<code>...</code>

หรือ

<blockquote>...</blockquote>

แต่การแสดงผลอาจจะไม่สวยงามมากนัก วิธีแก้ก็คือการเพิ่ม style ให้กับ code block ของเรา ลองเอา code ข้างล่างไปวางไว้ใน html ของ blogger ดูครับ รับรอง code ของเราจะดูดีขึ้นอีกเป็นกอง


blockquote {
margin:.75em 0;
border:1px solid #596;
border-width:1px 1px;
padding:5px 15px;
display: block;
background-color: #dedede; /*เปลี่ยนสีพื้นหลัง*/
}

code {
font-family: Courier;
margin:.75em 0;
border:1px solid #596;
border-width:1px 1px;
padding:5px 15px;
display: block;
background-color: #dedede; /*เปลี่ยนสีพื้นหลัง*/
white-space: pre;
}

อ่านต่อ...

นอกเรื่อง - ค้นหาคำในไฟล์บน Linux - Search in file

วันนี้มาแปลกครับขอนอกเรื่องนิดนึงก่อนที่จะไปต่อกันเรื่องการติดตั้ง Joomla (ต่อไปนี้อาจจะขอนอกเรื่องบ่อยๆ) หลายๆคนที่เคยใช้ linux ไม่ว่าจะเป็น distro ใดๆก็ตามต่างก็ต้องใช้ command line อย่างแน่นอน สำหรับผมชอบการใช้ command line มากเพราะมันสะดวก หลายๆอย่างก็ทำได้โดยไม่ต้องคลิ๊กๆให้เมื่อย ถ้าคล่องแล้วพิมพ์เร็วๆจะรู้สึกเทหฺราวกับพระเอกในหนัง sci-fi เลย :)


มีอยู่ครั้งนึงที่ผมต้องการค้นหาอีเมล์ในไฟล์ html จำนวนเป็นร้อยๆไฟล์แต่ใน linux ไม่ค่อยมีเครื่องมือเคร่ืองใช้เหมือนกับ windows ก็เลยต้องใช้ command line นี่แหละจัดการ คำสั่งที่ผมใช้ก็คือ

grep "word" *.*

ถ้าหากจะหาใน sub-directory ด้วยก็เพิ่ม option -r เข้าไปเป็น

grep "word" -r *.*

หวังว่่าคงเป็นประโยชน์สำหรับทุกคนนะครับ

อ่านต่อ...

ติดตั้ง Joomla Step by Step - ตอนที่ 1 จัดเตรียม webserver

ยังไม่มีเวลาเขียนเกี่ยวกับ dotnetnuke ซักที ด้วยเครื่องที่ใช้อยู่ต้องสลับไปสลับมากับระหว่าง IIS กับ apache (ใช้ XAMPP) ไม่อยากใช้ 2 ตัวพร้อมกันเพราะเครื่องรุ่นเก๋ามากไหนจะต้องเปิดโปรแกรมอื่นๆอีกเอาเป็นว่าเขียนเรื่องที่มันเขียนได้ดีกว่า


เรื่องการติดตั้ง Joomla คงเป็นเรื่องหมูๆที่ใครบางคนคงทำได้ไม่ยากแต่ผมคิดว่าคงมีบางคนที่ยังไม่เคยลองเลยคิดว่าเขียนแล้วคงมีคนเข้ามาอ่านบ้างไม่เล็กก็น้อยล่ะนะ ตอนแรกนี้จะ้เริ่มตั้งแต่โคตรเบสิคมาเลยเอาแบบคนไม่รู้เรื่องอะไรเลยก็พอจะทำได้ไม่ยาก คือการติดตั้ง webserver ในเครื่องเราก่อน หลังจากเสร็จเรียบร้อยจะเล่น CMS ตัวอื่นๆก็สามารถโหลดมาใช้ได้เลย

webserver ที่ใช้จะเป็น apache, php และฐานข้อมูลจะใช้ mysql รายละเอียดต่างๆเกี่ยวกับ webserver หรือฐานข้อมูลคงต้องวานไปศึกษากันนิดหน่อยนะครับ โดยส่วนใหญ่การติดตั้งผมจะติดตั้งแพคเกจแยกกันที่ละตัวและต้องทำการ config เองซึ่งจะทำให้ยุ่งยากพอสมควรผมเลยจะขอแนะนำ XAMPP ซึงรวมแพคเกจทั้งหมดไว้ด้วยกัน ทำให้งายต่อการติดตั้งและแทบจะไม่ต้องทำการ config ใดๆเลย ข้อดึของ XAMPP อีกอย่างก็คือมันเป็น portable ได้ด้วยสามารถย้ายไปคอมพิวเตอร์เครื่องอื่นๆได้เลย

สิ่งที่ต้องเตรียม
  • XAMPP package สามารถโหลดได้ที่นี่ เลือกเป็นแบบ zip นะครับ
  • คอมพิวเตอร์บ้านๆเรานี่แหละขอเหนื้อที่ซัก 200MB ก็พอครับ


วิธีติดตั้ง XAMPP
  1. หลังจาก download XAMPP มาแล้วให้ทำการแตก zip ออกมาไว้ที่ๆเราต้องการทำการติดตั้ง สำหรับผมเอาไว้ใน drive C:\ พอเข้าไปในโฟลเดอร์ xampp ก็จะได้ดังรูป

  2. เปิดโปรแกรมที่ชื่อ xampp-control.exe ก็จะมีหน้าต่างขึ้นมาดังรูป


  3. ทำการ start apache และ mysql โดย click ที่ปุ่ม start ที่ทำการวงไว้ในรูป


  4. หลังจากที่เรา start server เสร็จเรียบร้อยแล้วหากไม่มีปัญหามี status "Running" ขึ้นมาบอกก็เป็นอันเสร็จเรียบร้อย


  5. ลองเข้าไปทดสอบ webserver ของเราที่ URL http://localhost ก็จะเห็นภาพอันน่าประทับใจนี้



จบตอนแรกแล้วครับ ในตอนหน้าเราจะมาทำการติดตั้ง Joomla กันครับ

อ่านต่อ...