นอกเรื่อง - เทคนิคการใช้ mysqldump - How to mysqldump
Posted by Tommy Chom in MySQL on Sunday, June 28, 2009
วันนี้จะมาพูดถึงเรื่องการสำรองฐานข้อมูลสักหน่อย ปกติแล้วเราจะป้องกันความผิดพลาดที่เกิดขึ้นกับเวปไซต์ของเราโดยการสำรองข้อมูลที่มีความสำคัญอย่างสม่ำเสมอ หากมีเหตุอันไม่พึงประสงค์เช่น 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
Posted by Tommy Chom in Joomla on Tuesday, June 23, 2009
กลับมาต่อกันเรื่องการติดตั้ง Joomla ครับ ครั้งก่อนเราได้ทำการติดตั้ง webserver ของเราเสร็จแล้ว จะขอเกริ่นเกี่ยวกับเซิร์ฟเวอร์ของเรานิดหน่อย
ค่าเริ่มต้นของ XAMPP
- URL: http://localhost/
- MySQL สามารถ login โดยใช้ username:root โดยที่ไม่ต้องกรอก password โดยเราสามารถเข้าไปแก้ password ของ root ได้ ในที่นี้ผมจะยังไม่แก้ครับเพื่อความรวดเร็ว
- web root directory จะอยู่ที่ c:\XAMPP\htdocs\ ตามตัวอย่างที่แล้วที่ผมแตก zip ไว้ที่ c:\
ติดตั้ง Joomla
- ก่อนอื่นก็ไปโหลดแพคเกจของ Joomla มาก่อนครับ [โหลด joomla full package]
- จากนั้นสร้าง folder ขึ้นมาใหม่ชื่อว่า joomla แล้วทำการแตก zip joomla ไว้ใน folder นี้ จากนั้นทำการ copy ไปวางไว้ใน web root directory ของเรา (c:\XAMPP\htdocs\)
- เปิด browser ขึ้นมาแล้วพิมพ์ URL: http://localhost/joomla จากนั้นก็เลือกภาษาก่อนแล้วกด Next
- ตรวจดูว่ามีข้อผิดพลาดใดบ้าง หากมีการผิดพลาดจะมี status สีแดงบอกให้ทำการแก้ไขก่อนแล้วเลือก ตรวจสอบอีกครั้ง หากไม่มีข้อผิดพลาดใดๆก็เลือกถัดไป ในตัวอย่างผมมีข้อผิดพลาดอันนึงก็คือการแสดงข้อผิดพลาดของ PHP ซึ่งไม่มีผลกระทบใดๆก็สามารถไปขั้นต่อไปได้เลยครับ โดยปกติแล้วถ้าหากใช้ XAMPP เป็น webserver มักจะไม่ค่อยมีปัญหาครับ
- หน้านี้ไม่มีอะไรข้ามไปเลย (เป็นเรื่องเกี่ยวกับลิขสิทธ์การใช้งานหากสนใจก็อ่านก่อนก็ได้ครับ)
- กรอกรายละเอียดเกี่ยวกับฐานข้อมูลของเรา กรอกตามรูปเลยครับยกเว้นรหัสผ่านไม่ต้องกรอกครับ โดยฐานข้อมูลผมจะใช้ชื่อว่า joomla ครับ
- ติดตั้ง FTP ส่วนใหญ่ไม่ค่อยได้ใช้ครับ นอกจากใครที่มีความรู้เรื่อง FTP ก็สามารถตั้งค่าได้ที่หน้านี้ครับ จากนั้นเลือก ไม่สนับสนุนแล้วก็ ถัดไปครับ
- การตั้งค่าระบบให้กรอก email และรหัสผ่านสำหรับ admin เพราะหลังจากที่เราติดตั้งเสร็จแล้วต้องเข้าไปจัดการระบบเพื่อแก้ไขค่าต่างๆ อีกส่วนหนึ่งก็คือการติดตั้งข้อมูลตัวอย่างเราสารถเลือกติดตั้งหรือไม่ก็ได้ แนะนำให้เลือกครับสำหรับือใหม่เพราะหลังจากติดตั้งเสร็จจะเห็น content ทำให้ง่ายต่อการทำความเข้าใจ
- เสร็จสิ้นการติดตั้งแต่ยังใช้งานไม่ได้เราต้องเข้าไปลบ folder installation ใน folder joomla ของเราก่อน ไม่อย่างนั้นจะไม่สามารถใช้งานได้
- เมื่อทำการลบ folder installation ให้ click ดูหน้า website ก็จะเห็นภาพที่น่าประทับใจอีกครั้ง
Code block ใน blogger ง่ายนิดเดียว
Posted by Tommy Chom in Blogger on Monday, June 22, 2009
เวลาที่เราต้องการจะ 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
Posted by Tommy Chom in Linux
วันนี้มาแปลกครับขอนอกเรื่องนิดนึงก่อนที่จะไปต่อกันเรื่องการติดตั้ง 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 ตัวพร้อมกันเพราะเครื่องรุ่นเก๋ามากไหนจะต้องเปิดโปรแกรมอื่นๆอีกเอาเป็นว่าเขียนเรื่องที่มันเขียนได้ดีกว่า
สิ่งที่ต้องเตรียม
- XAMPP package สามารถโหลดได้ที่นี่ เลือกเป็นแบบ zip นะครับ
- คอมพิวเตอร์บ้านๆเรานี่แหละขอเหนื้อที่ซัก 200MB ก็พอครับ
วิธีติดตั้ง XAMPP
- หลังจาก download XAMPP มาแล้วให้ทำการแตก zip ออกมาไว้ที่ๆเราต้องการทำการติดตั้ง สำหรับผมเอาไว้ใน drive C:\ พอเข้าไปในโฟลเดอร์ xampp ก็จะได้ดังรูป
- เปิดโปรแกรมที่ชื่อ xampp-control.exe ก็จะมีหน้าต่างขึ้นมาดังรูป
- ทำการ start apache และ mysql โดย click ที่ปุ่ม start ที่ทำการวงไว้ในรูป
- หลังจากที่เรา start server เสร็จเรียบร้อยแล้วหากไม่มีปัญหามี status "Running" ขึ้นมาบอกก็เป็นอันเสร็จเรียบร้อย
- ลองเข้าไปทดสอบ webserver ของเราที่ URL http://localhost ก็จะเห็นภาพอันน่าประทับใจนี้
จบตอนแรกแล้วครับ ในตอนหน้าเราจะมาทำการติดตั้ง Joomla กันครับ
Wordpress 2.80 คลอดแล้ว
Wordpress ได้ออกเวอร์ชันใหม่ 2.80 แล้ว ได้โค้ดเนมว่า "Baker"(ชื่อคุ้นๆหูนะ) เค้าบอกว่าเอาชื่อมาจากนักทรัมเป็ตคนนึงที่ชื่อ "Chet Baker" สิ่งที่พัฒนาขึ้นก็เป็นระบบ theme, widget รวมถึงความเร็วที่เพิ่มขึ้น แถมยังแก้ไขบั๊กอีก 790 รายการอีกด้วย ส่วนรูปร่างหน้าตาการใช้งานอาจจะยังไม่แตกต่างจากเวอร์ชันก่อนหน้านี้มากนัก
สิ่งที่เปลี่ยนแปลงหลักๆใน version 2.8
- สามารถติดตั้ง theme ผ่าน theme directory ได้เลย เหมือนกับการติดตั้ง plugin ในเวอร์ขัน 2.70
- Codepress editor มี syntax highlight สำหรับการแก้ไข plugin และ theme
- เพิ่ม screen option ทุกๆหน้าทำให้สามารถใช้ widget ได้ถึง 4 column สำหรับจอ widescreen ในหน้า dashboard หรือปรับจำนวน item ที่แสดงในหน้าอื่นๆได้
Content Management Systems (CMS) List
Posted by Tommy Chom in CMS List on Saturday, June 6, 2009
ตอนแรกกะจะเขียนเกี่ยวกับ dotnetnuke ต่อแต่ด้วยความขี้เกียจบวกกับไม่ค่อยมีเวลาเขียนบทความยาวๆเลย พอดีได้ไปเจอเวปไซต์ที่รวบรวมรายชื่อ CMS ไว้เห็นว่าน่าสนใจเลยนำมาแปะไว้ที่เวปตัวเองซะเลย 555
ปล. ไม่น่าเชื่อว่ามันจะมีเยอะขนาดนี้
Enterprise Content Management Systems
Alfresco Enterprise (J2EE) (open source) Autonomy (Interwoven) ECM Day Software EMC/Documentum eXo ECM (open source) Clearview ECM (built on SharePoint) Content Conductor FileNet (IBM) Hummingbird (OpenText) Hyland OnBase IBM Identitech Infogrid (open source) | IXOS (OpenText) KnowledgeTree (open source, GPL) Microsoft SharePoint ECM Mobius Nuxeo EP (open source) Objective OpenText Optika (Stellent/Oracle) Oracle UCM pTools ECM Stellent/Oracle ECM Vignette ECM (Open Text) VYRE - Unify |
Document Management Systems
Ademero Astroia Software ColumbiaSoft Document Locator eXo ECM (open source) Group Drive iDatix iSynergy (doc, process mgmnt) ISIS Papyrus (doc, process mgmnt) | Microsoft SharePoint Online (SaaS) |
Enterprise Web Content Management Systems
Autonomy (Interwoven) Web CMS Amaxus Web CMS Bridgeline iApps Content Manager (.NET) Browser CMS (Java) Day Communiqué (Java) Ektron CMS 400 (.NET) EpiServer (.NET) eZ Publish (OSS, PHP) Fatwire Content Server Interwoven (Autonomy) Lotus Workplace WCMS Magnolia Enterprise (Java) Mediasurface Morello Microsoft SharePoint WCM (.NET) Nstein (Web Publishing) | OpenText Web Solutions (was RedDot) Percussion CM System (was Rhythmyx) pTools CMS Quatumart Q-Publishing (.NET) SDL Tridion Seamless CMS (.NET) Sitecore (.NET) SiteRefresh Stellent/Oracle WCM Vignette WCM (Open Text) WebSideStory/Visual Sciences |
SMB/Dept. Web Content Management Systems
Web Content Management for Publishers
Campsite (OSS, PHP) Clickability (SaaS, Pro) Content DSI WPS (SaaS, directories) Drupal (OSS, PHP, Simpler) | eZ Publish (OSS, PHP) Magnolia OnAir (for Broadcasters, OSS, Java) Nstein (COS, Pro) Plone (OSS, Zope) |
Simple Web Content Management Systems
Cushy CMS (SaaS, Super Simple) Digitalus Web CMS (PHP, Zend, Open Source) Enano CMS/Wiki (PHP, Open Source) iUpdateIt (SaaS w/ JavaScript embed) Kentico Web CMS (.NET) Komodo Marqui CMS N2 CMS (.NET, Open Source, CMS Framework) Oxite (.NET) QuickelSoft CMS (.NET) | Subdreamer (PHP) Telerik Sitefinity (.NET) V2 CMS Web Edition CMS Website Director CMS Xitex WebContent M1 |
Hosted (SaaS) Content Management Systems
Open Source Web Content Management Systems
Alfresco Community (J2EE, ECM, WCM) Apache Lenya APLAWS+ Bluenog CMS (based on Hippo) Bricolage Campsite (GPL, PHP,web publishing) Digitalus Web CMS (PHP, Zend) Docebo CMS dotCMS (Java) DotNetNuke Drupal Enano CMS/Wiki (PHP, GPL) eXo Web CMS eZ Publish Far Cry Hippo CMS (open source) JBoss Nukes Jetbox CMS Joomla! (PHP, forked from Mambo) Lenya Magnolia Mambo Server Midgard Project MMBase MODx CMS (PHP/AJAX) ndCMS N2 CMS (.NET, CMS Framework) | Nuxeo (J2EE, ECM, WCM) OpenCMS Oxite (.NET) Papoo CMS PHPNuke phpwcms PHPWebsite Pligg Plone PortalApp PostNuke Red Hat CCM Simple Web CMS Sitellite SPIP (FR) Squiz MySource TikiWiki TYPO3 (PHP, GLP) TYPOlight webCMS (PHP, LGPL) Umbraco XOOPS WebGUI Xaraya CMS |
Micro Content Management Systems, Blogging and Wikis
Acquia Gardens (SaaS Drupal...coming soon.) BlogEngine.NET (open source) Blogger.com (Google's SaaS) Blogtronix (.NET social platform) Dasblog (.NET, open source) Drupal (OSS PHP semi-simple sites, portals) eTouch Samepage Wiki (J2EE/SaaS) Expression Engine (PHP...semi-simple) Google Sites (SaaS, simple wikis, sites) iUpload Personal Publisher Joomla! (OSS PHP, semi-simple sites, portals) | Movable Type Org(OSS Perl/PHP blogs, social media) Movable Type Pro(Perl/PHP blogs, social media) OpenZine (SaaS, simple blog magazines) PublicSquare (SaaS, semi-pro) Screwturn Wiki (.NET) SquareSpace (SaaS) Subtext (.NET, open source blogging) TypePad (Six Apart SaaS) Viviti (SaaS, simple sites) Vox (Six Apart, SaaS) WordPress.com (Automattic SaaS blogs, sites) WordPress.org (Automattic PHP blogs, sites) |
Data Mashing Tools & Platforms
Gnip Mozenda | Yahoo! Pipes |
Content Migration Tools
Armedia Content I/O Suite Entropy Soft (connectors) Indigen Victor Information Mapping, Inc. | Kapow Technologies Open Migrate (OSS, doc migration) Vamosa Content Migrator |
WYSIWYG Editors (HTML/XHTML)
DocEditPanel (ASP.NET Ctl) Ektron (Win32) Ephox (Plugin or Java) FCKeditor (DHTML) FreeTextbox (ASP.NET Ctl) Hardcore Editor (DHTML) HTMLArea (DHTML) InnovaStudio (DHTML) | Loki (DHTML, open source) pinEdit (DHTML) Telerik r.a.d.Editor (ASP.NET Ctl) TinyMCE (DHTML) WebRenderer (Java) WYMeditor (JavaScript, Simple) XStandard (Plugin) YUI Editor (DHTML, open source) |
ที่มา http://www.cmswire.com/cms/products/#prod-wcm
DotNetNuke - CMS หัวใจ .NET
Posted by Tommy Chom in DotNetNuke on Monday, June 1, 2009
ช่วงที่ผ่านมานี้ได้มีโอกาศศึกษาเกี่ยวกับ CMS ตัวหนึ่งที่พัฒนาโดยใช้ภาษา VB.NET ชื่อว่า DotNetNuke หลังจากทำการติดตั้งและลองใช้ดูพบว่า CMS ตัวนี้มีความน่าสนใจมากอีกทั้งยังเป็น opensource สามารถดาวน์โหลดมาติดตั้งได้เลย
จุดเด่นเลยคือผู้ใช้สามารถทำการแก้ไขส่วนต่างได้ในหน้า web เลย ถ้าใครเคยใช้ plone คงพอจะนึกออก ผู้ใช้สามารถเลือกส่วนที่ต้องการทำการแก้ไขแล้วคลิกเลือกจากนั้นก็ทำการแก้ไขได้เลยรวมถึง hedline ต่างๆทำให้สะดวกต่อการดู layout ของเวปไซต์ไม่ต้องเซฟแล้วพรีวิวบ่อยๆ
การติดตั้งไม่ง่ายเหมือนกับ CMS ทั่วไปๆถ้าเทียบกับ wordpress แล้วถือว่ายาก ถ้าใครไม่เคยใช้ IIS อาจจะต้องนั่งงงกับการติดตั้งนิดหน่อย
ความต้องการของระบบ- IIS 5.0 ขึ้นไป
- .NET framework 2.0
- SQL Server
- MSXML 6.0
ก่อนดาวน์โหลดต้องทำการลงทะเบียนก่อน หลังจากทำการติดตั้งเสร็จแล้ว(วิธีติดตั้งดูที่นี่) ส่วนรายละเอียดอื่นขอมาต่อในตอนหน้าครับ