Saturday, June 29, 2013

การติดตั้ง Multi DB สำหรับ directadmin

อันนี้มาจากปัญหาที่หลายคนเคยชินกับการใช้ cpanel ในการสร้าง multi database พอมาใช้ directadmin บ้าง ไม่สามารถสร้างแล้ว ผมก็เลยหาวิธีมาทดลองและก็ทำ ซึ่งมันได้ผลดีครับ

ข้อจำกัดนะครับ ต้องเป็น vps ที่ใช้ directadmin นะครับ ส่วน share host นี้ไม่ทราบเหมือนกันยังไม่ได้ลอง

ดาวน์โหลดไฟล์
16  DB: http://db.tt/bwPfzeS
256 DB: http://db.tt/eOx0k7z
4096 DB: http://db.tt/ddO2bve
All : http://db.tt/IjlpN9x

วิธีติดตั้ง
1. แตกไฟล์เสร็จเข้าไปในโฟเดอร์ก็จะพบทั้งหมด 4 ไฟล์ครับ
(Creatxxx.txt, db.php, db-config.php, moveblogs.php)

2. สร้าง new database 16 databases
 เปิดไฟล์ Creatxxdb.txt ด้วยโปรแกรมแก้ไข text และแทนที่คำว่า userdb เป็น admin_xxxxxdb
หมายเหตุ admin_xxxxx = database name

3. แล้วเข้าไปที่ phpmyadmin เข้าไปที่เมนู SQL แล้วนำที่แก้ไขไปวางไว้แล้วกด Go ได้เลยครับ
หมายเหตุเนื่องจาก directadmin การ control สิทธ์การเข้าใช้งานจะต่างจาก Cpanel การเข้าด้วย user ต่างๆไม่ว่าจะเป็น admin , userของ database เองจะไม่สามารถสร้าง database ใหม่ได้ต้องใช้ user da_admin เท่านั้น

วิธีการหา user password ของ user da_admin คือ
เปิด ssh ขึ้นมาแล้วเข้า mysql ซึ่งจะไม่ขออธิบายในที่นี่
ใช้คำสั่ง >cat /usr/local/directadmin/conf/mysql.conf

4. แก้ไขไฟล์ db-config.php แล้วแก้ไข ip 50.22.66. เป็น ip ของ host ที่ใช้
เช่น ip host : 111.222.333.444 เอามาแค่ 111.222.333. (อย่าลืม dot ปิดท้าย)
ถ้าหากไม่รู้ ip ก็ลอง ping domain.com ดูครับ

5. แก้ไขไฟล์ db-config.php เหมือนเดิมโดยเปลี่ยน
dbname เช่น admin_xxxxxdb_global
username db เช่น admin_xxxxxuser
password db เช่น xxxxxxxxxxx

6. แก้ไขไฟล์ move-blogs.php
$dbname = "admin_xxxxxdb";
$blog_table_prefix = 'wp_';
$newdb_prefix = 'admin_xxxxxdb_';
$dbhost = 'localhost';
$dbuname = 'da_admin';
$dbpass = 'T12xxrTFGO';

7. อัพไฟล์ขึ้นโฮส
db-config.php และ db.php อัพไว้ที่ wp-content
move-blogs.php อัพไว้ที่ root wordpress (domain.com/move-blogs.php)

8. แล้วทำการ move-blogs โดยเปิดไฟล์ domain.com/move-blogs.php


* คำสั่ง drop database xxxx; ทำใน ssh mysql ไม่สามารถทำที่ directadmin ได้
xxxx = databasename

No comments:

Post a Comment