mysqldump ทำการย้าย database ไปอีกเครื่องนึง

mysqldump-database

server version: 4.1.12-Debian_1ubuntu3.7? >>>>>>>>>>> Server version 5.0.22-Debian_0ubuntu6.06.3-log

เรื่องของเรื่อง load server มันสูงเพราะว่ามีเว็บนึงเป็น torrent เลยจะย้าย database เว็บนี้ออกไปยังอีกเครื่องนึงตั้งแต่เมื่อคืนแล้วย้ายไม่สำเร็จ แล้วผมยอมมันซ่ะที่ไหนล่ะ เช้ามาเลยเล่นก่ะมันอีกรอบผลสรุปคือได้(แบบมั่วๆ) เพราะว่าอ่านในตำราไหนมันก็มีปัญหาแตกต่างกันไป ผมเชื่อได้ว่าไม่มีอะไรที่เป็นแบบแผนสำเร็จรูปตามที่เค้าเขียนไว้ในเว็บหรือว่า ebook ของต่างประเทศหรอกครับ มันต้องมีอะไรบางอย่างที่ไม่เหมือนกันแล้วมันก็ไม่ลงตัว สรุปมันก็ทำไม่ได้ตามที่เค้าบอก จนเราต้องมานั่งแก้ไขเองครับ ปัญหาของผมคือ ย้ายไปแล้วภาษาเป็น ?????? แต่ว่าใน phpmyadmin เป็นภาษาไทย ดังนั้นคาดได้ว่าไม่ได้เป็นตอน import เข้าไปแน่ๆต้องมาจาก server ที่ไม่ได้เชตอะไรบางอย่าง เริ่มเลยนะครับ

# mysqldump -u errorbit -p torrents > /home/redcode/torrents.sql
Enter password:

ใส่คำสั่ง mysqldump เพื่อทำการ export database ออกมาเป็นไฟล์ชื่อ torrents.sql หลังจากนั้นให้ใส่ password ครับ รอซักแป๊บนึงมันก็จะทำการ export ไฟล์มาให้เราโดยเก็บไฟล์ไปไว้ที่ /home/redcode/

หลังจากนั้นเราก็ไปที่อีกเครื่องโดยใช้คำสั่ง wget เรียกไฟล์นั้นมาอยู๋ที่พาทเราต้องการที่เครื่องใหม่ก่อนนะครับ หลังจากนั้นก็ทำการ ?import เข้าไปใน database ตัวใหม่หากยังไม่ได้สร้างให้ทำการสร้างก่อน

อันนี้เป็นรวมคำสั่งในการสร้าง-ลบ database ครับ(ที่จำเป็นต้องใช้)

#mysql -u root -p
mysql>

คำสั่ง Create Database
mysql> create database databasename;

คำสั่งแสดง database
mysql> show databases;

คำสั่งเข้าใช้ database
mysql> use databasename;

คำสั่งลบ database
mysql> drop database databasename;

แล้วก็ทำการ import เข้าไปยังที่ใหม่มันเจือกติดปัญหาอีกล่ะ

#mysqldump -u errorbit -p torrents < /home/redcode/torrents.sql.2

มันมี error ดังต่อไปนี้

/*!40000 ALTER TABLE `users` DISABLE KEYS */;
LOCK TABLES `users` WRITE;
UNLOCK TABLES;
/*!40000 ALTER TABLE `users` ENABLE KEYS */;
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;

/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;

เซ็งอีกแล้วเมื่อกี้ยังได้อยู่เลย งั้นลองเปลี่ยนวิธีใหม่ดูแล้วกันครับ เอาเป็นว่า tar.gz มาทั้งโฟลเดอร์ database มันเลยใครจะว่า database พังอย่าไปสนใจเพราะมันคือเว็บเราเองอิอิ (มีแค่อาจจะพังแต่ก็ไม่พังหรอกครับ) เข้าไปที่โฟลเดอร์ database แล้วก็ zip มันมาซ่ะ

#tar cfz torrents.tar.gz *.*

เสร็จแล้วก็ให้ย้ายไปไว้ที่เว็บใดเว็บนึงเพื่อจะให้ server ตัวใหม่ wget ทาง url ได้

หลังจาก wget เสร็จแล้วก็ให้เปลี่ยน permission ก่อนอันนี้ผมไม่รู้ว่าต้องเปลี่ยนไหมแต่ให้ชัวร์เปลี่ยนแหล่ะไม่เสียหาย

#chown -R mysql:mysql torrents.tar.gz

#tar xfz torrents.tar.gz

เมื่อเปลี่ยนเสร็จแล้วก็ทำการแตกไฟล์ เพียงเท่านี้ก็เสร็จสิ้นแล้วครับ ให้ใช้แบบที่ 1 ที่ mysqldump หรือใช้แบบที่ 2 zip ไฟล์เอาก็ได้นะครับ ลองดูไปนอนก่อนปวดตาซิบเป๋ง โชคดีคับ