GotoKnow
  • เข้าระบบ
  • สมัครสมาชิก
  • แผงจัดการ
  • ออกจากระบบ
GotoKnow

การติดตั้ง phpMyAdmin2.8

http://www.bandhit.com/webboard/index.php
bandhit


สวัสดี ครับ
ผมจะสอนการติด phpMyAdmin ทั้ง 2 แบบ ให้ทำทีละขั้นตอนดังนี้
คำเตือน ข้อมูล ความรู้ที่เผยแพร่บนเว็บบอร์ดนี้ ทุกเรื่อง ทุกข้อความเป็นลิขสิทธิ์ของ อ.บัณฑิต จามรภูติ (สงวนลิขสิทธิ์ตาม พรบ. ลิขสิทธิ์ พศ.2548) ห้ามนำไปพิมพ์โฆษณาเพื่อการค้าโดยเด็ดขาด แต่นำไปใช้ศึกษาและแก้ปัญหาได้เท่านั้น เรายินดีถ่ายทอดความรู้ แต่ห้าม copy และลอกเรียนแบบ มิเช่นนั้นจะถูกดำเนินการทางกฏหมาย

ก่อนอื่นให้ท่านติดตั้งระบบ FAMP ตามนี้ http://www.bandhit.com/webboard/viewtopic.php?t=34 เสร็จแล้วจึงมาติดตั้ง phpMyAdmin ครับ

การติดตั้ง phpMyAdmin จาก Zip file
ให้ไปดาวน์โหลดซอร์สโค๊ด phpMyAdmin-2.8.x.tar.gz จาก http://www.phpmyadmin.net/home_page/index.php มา แล้วให้ก็อบปี้ไฟล์ phpMyAdmin-2.8.x.tar.gz ไว้ในไดเรกทอรีของ Apache เช่น /usr/local/www/apache22/data หรือ /usr/local/www/data-dist (ถ้าติดตั้งผ่าน ports) หรือ /usr/local/apache/htdocs (ติดตั้งไฟล์ zip) ต่อไปเป็นการขยายไฟล์นี้ ด้วยคำสั่ง gzip ดังนี้
gzip -cd phpMyAdmin-2.8.x..tar.gz | tar xvf -
จะได้ไดเรกทอรี phpMyAdmin-2.8.2 ให้เข้าไปไดเรกทอรีด้วยคำสั่ง cd phpMyAdmin-2.8.2 /libraries แล้วก็อบปี้ไฟล์ config.default.php มาไว้ใน /usr/local/www/apache22/data/phpMyAdmin-2.8.2 หรือ /usr/local/apache/htdocs/phpMyAdmin-2.8.2 (ถ้าติดตั้งไฟล์ zip)
จากนั้นแก้ไขไฟล์คอนฟิกซ์ config.default.php ซึ่งจะแก้ไขในส่วนของ host, user, password และ authentication ประมาณบรรทัดที่ 57 ดังนี้
$cfg['Servers'][$i]['host'] = 'localhost'; // MySQL hostname or IP address ปรกติเป็น localhost อยู่แล้วไม่ต้องแก้ไขใด ๆ
$cfg[‘Servers’][$i][‘auth_type’] = ‘http’; // Authentication method (config, http or cookie based)? เลือก ประมาณบรรทัดที่ 76
$cfg[‘Servers’][$i][‘user’] = ‘root’; // MySQL user ปรกติเป็น root อยู่แล้ว ไม่ต้องแก้ไข
$cfg[‘Servers’][$i][‘password’] = ‘รหัสผ่าน MySQL’; // MySQL password (only needed // with ‘config’ auth_type) ใส่รหัสผ่านของฐานข้อมูล MySQL ที่คุณใช้งานอยู่ลงไป
ทดสอบการทำงาน
หลังจากเซตอัพไฟล์ config.default.php หรือ config.inc.php เสร็จแล้ว ให้ทดสอบด้วยการเปิดเว็บ เบราเซอร์ IE โดยพิมพ์ URL ดังนี้ http://hackman.northern.org/phpMyAdmin-2.8.2 หรือ http://192.168.1.5/phpMyAdmin-2.8.2 จะแสดงกรอบให้เราใส่ชื่อยูสเซอร์และรหัสผ่านของ MySQL ลงไป เสร็จแล้วจะแสดงหน้าเพจ phpMyAdmin ครับ

การติดตั้ง phpMyAdmin ผ่าน port
ให้เข้าไปในไดเรกทอรี /usr/ports/databases/ phpmyadmin แล้วทำการติดตั้งด้วยคำสั่ง
cd /usr/ports/databases/phpmyadmin
make install clean
จากนั้นปรากฏหน้าต่าง Options for phpMyAdmin-2.8.2 เพื่อให้เราเลือกออบชั่นการทำงาน
[X] BZ2 bzip2 library support
[X] GD GD library support
[X] MYSQLI Improved MYSQL support
[X] OPENSSL OpenSSL support
[ ] PDF PDFlib support (implies GD)
[X] ZLIB ZLIB support
[X] MCRYPT Mcrypt library support
[X] MBSTRING Multi-byte character-set string support
เสร็จแล้วโปรแกรมจะทำการติดตั้ง phpMyAdmin และโปรแกรมที่เกี่ยวข้องให้จนเสร็จเรียบร้อย
ให้แก้ไขไฟล์ /usr/local/etc/apache22/httpd.conf หรือ ”/usr/local/apache/conf/httpd.conf” (ติดตั้งจาก zip file)
ในส่วนที่เกี่ยวกับ Alias โดยเพิ่มข้อความเข้าไปที่ส่วนท้ายดังนี้
Alias /phpmyadmin "/usr/local/www/apache22/data/phpMyAdmin "
< Directory "/usr/local/www/apache22/data/phpMyAdmin" >
Options Indexes MultiViews
AllowOverride None
Order allow,deny
Allow from all
< /Directory >

จากนั้นทดสอบไฟล์ httpd.conf ด้วยคำสั่ง /usr/local/etc/rc.d/apache22.sh configtest จะต้องแสดงข้อความ “Syntax OK” แต่ถ้ามี error ให้ตรวจดูไฟล์ httpd.conf ใหม่อีกครั้งครับ
จากนั้นทำการ stop และ start Apache ด้วยคำสั่ง /usr/local/etc/rc.d/apache22.sh stop (ติดตั้งผ่านพอร์ต) เสร็จแล้วสั่ง start อีกครั้งด้วยคำสั่ง /usr/local/etc/rc.d/apache22.sh start

ขั้นต่อไปให้นำไฟล์ทั้งหมดใน phpMyAdmin (รวมทั้ง subdirectories) มาไว้ภายใต้ DocumentRoot ของ Apache ตามปรกติแล้วการลง phpMyAdmin ผ่าน ports นั้นจะลงไว้ที่ /usr/local/www ให้ทำการก็อบปี้ มาไว้ที่ /usr/local/www/apache22/data ด้วยคำสั่ง
cp -R /usr/local/www/phpMyAdmin /usr/local/www/apache22/data/phpMyAdmin
การแก้ไขไฟล์ config.inc.php
ระบบจะให้ไฟล์ config.default.php มา (จะอยู่ในไดเรกทอรี /usr/local/www/apache22/data/phpMyAdmin/libraries) แล้วก็อบปี้ไฟล์ config.default.php มาไว้ใน /usr/local/www/apache22/data/phpMyAdmin จากนั้นแก้ไขไฟล์คอนฟิกซ์ config.default.php ซึ่งจะแก้ไขในส่วนของ host, user, password และ authentication ประมาณบรรทัดที่ 57 ดังนี้
$cfg['Servers'][$i]['host'] = 'localhost'; // MySQL hostname or IP address ปรกติเป็น localhost อยู่แล้วไม่ต้องแก้ไขใด ๆ
$cfg[‘Servers’][$i][‘auth_type’] = ‘http’; // Authentication method (config, http or cookie based)? เลือก http เพื่อให้มีการถามรหัสผ่านของยูสเซอร์ ประมาณบรรทัดที่ 76
$cfg[‘Servers’][$i][‘user’] = ‘root’; // MySQL user ปรกติเป็น root อยู่แล้ว ไม่ต้องแก้ไข
$cfg[‘Servers’][$i][‘password’] = ‘รหัสผ่าน MySQL’; // MySQL password (only needed // with ‘config’ auth_type) ใส่รหัสผ่านของฐานข้อมูล MySQL ที่คุณใช้งานอยู่ลงไป

ทดสอบการทำงาน
หลังจากเซตอัพไฟล์ config.inc.php เสร็จแล้ว ให้ทดสอบด้วยการเปิดเว็บเบราเซอร์ IE/Mozill/FireFox โดยพิมพ์ดังนี้ http://x64bit.bandhit.com/phpmyadmin หรือ http://192.168.1.90/phpmyadmin จะแสดง กรอบให้เราใส่ชื่อยูสเซอร์และรหัสผ่านของ MySQL ลงไป เสร็จแล้วจะแสดงหน้าเพจ phpMyAdmin

ที่สำคัญ อย่าใจร้อนรีบพิมพ์คำสั่ง หรือแก้ไขไฟล์ ต้องละเอียดถี่ถ้วนครับ รับรอง Work 100% ติดปัญหาตรงไหน ก็โพสข้อความเข้ามาสอบถามได้ครับ
ยินดีช่วยเหลือ
อ.บัณฑิต จามรภูติ
_________________
ความรู้ต้องคู่คุณธรรม บุญคุณต้องทดแทน
กตัญญูประกาศิต ...........................

จะให้มันถาม pass ทุกครั้งเวลาเข้าอะครับผม

ต้อง set ไงหรือครับ

ตรงนี้ไงครับ
$cfg[‘Servers’][$i][‘auth_type’] = ‘http’; // Authentication method (config, http or cookie based)? เลือก http เพื่อให้มีการถามรหัสผ่านของยูสเซอร์ ประมาณบรรทัดที่ 76
(บอกแล้วไงว่า ให้ละเอียดถี่ถ้วน 5 5 5)
Good Night Idea
อ.บัณฑิต ณ.เจียงใหม่
_________________
ความรู้ต้องคู่คุณธรรม บุญคุณต้องทดแทน
กตัญญูประกาศิต ...........................

ที่มา : http://www.bandhit.com/webboard/viewtopic.php?p=107#107


บันทึกนี้เขียนที่ GotoKnow โดย 

หมายเลขบันทึก: 40661
เขียน:
แก้ไข:
ความเห็น: 1
อ่าน:
สัญญาอนุญาต: สงวนสิทธิ์ทุกประการ

ความเห็น (1)

backup mysql databae ด้วย mysqldump
สำหรับการ backup database ขนาดใหญ่แล้ว ผมคิดว่า mysqldump นั้นมีประสิทธิภาพมากที่สุดแล้ว....

สำหรับ database เล็กๆ ใช้ phpmyadmin ก็สะดวกดี แต่ถ้า database ขนาดใหญ่ หลายล้าน records ล่ะ ก็คงไม่สะดวก ยิ่ง Server config ให้ PHP เป็น safe mode ก็จะมีปัญหากับ time-out ซึ่งทำให้ใช้ phpMyAdmin ไม่ได้

เขียน PHP scripts ให้ backup database โดยการ generate เป็น ไฟล์ SQL เก็บเอาไว้
มันก็ใช้งานได้ดีอยู่.. แต่มันทำงานได้ช้ามาก (เกือบ 1 ชั่วโมง สำหรับ database ขนาด 300 MB)

สำหรับการ backup database ขนาดใหญ่แล้ว ผมคิดว่า mysqldump นั้นมีประสิทธิภาพมากที่สุดแล้ว
ทั้งๆที่มากับ mysql อยู่แล้ว ทำไมจึงมองข้ามก็ไม่รู้ :) วันนี้ก็เลยมาลองใช้สิ่งที่ MySQL จัดเตรียมมาให้แล้ว

การ backup
คำสั่งสำหรับ backup ฐานข้อมูล ของ mysql คือ mysqldump รูปแบบการใช้งานมีดังต่อไปนี้

    shell> mysqldump [options] db_name [tables]
    shell> mysqldump [options] --databases db_name1 [db_name2 db_name3...]
    shell> mysqldump [options] --all-databases

สำหรับรายละเอียดของ options ต่างๆ ดูที่ http://dev.mysql.com/doc/refman/5.0/en/mysqldump.html

 ตัวอย่างการใช้งาน

    #mysqldump -u root -p mydatabase > db.sql

 สำหรับบน Linux และ NetWare จะมี mysqlhotcopy ให้ใช้ด้วย พัฒนาโดยคุณ Tim Bunce เขียนด้วย PERL เพราะท่านเล่น lock และ flush จากนั้นก็ copy file มาซะงั้น

การ restore

    #mysql -u root -p database < db.sql

ง่ายๆ และรวดเร็วดี :)

Links
How to backup a MySQL database with mysqldump แนะนำ
mysqldump man page
8.12. mysqldump --- A Database Backup Program

ที่มา : http://gotoknow.org/blog/patrickz/41245