MySQL : Import ฐานข้อมูลจากไฟล์ .sql ขนาดใหญ่มหาศาล อย่างรวดเร็ว

  • 2 ตอบ
  • 4509 อ่าน
*

อั๋น ทรงวุฒิ

  • Sr. Member
  • ****
  • 284
  • 3
  • แพร่ เวียงโกศัย
    • ดูรายละเอียด
    • songwut.biz
มีข้อมูลอยู่ใน path -> /media/KINGSTON/YOUR/PATH/dbBackupfilename.sql



อ้างถึง
# mysql -u root -p

enter password yourdatabasepassword

mysql > use dbname;

mysql > source /media/KINGSTON/YOUR/PATH/dbBackupfilename.sql

MySQL จะสูบข้อมูลจากไฟล์ /media/KINGSTON/YOUR/PATH/dbBackupfilename.sql  ในบัดดล
รับทำเว็บ, ทำ server linux

*

mytotoe

  • Newbie
  • *
  • 1
  • 0
    • ดูรายละเอียด
ง่ายสุดเลยก็

mysql -u root -p db_name < files_db.sql

*

อั๋น ทรงวุฒิ

  • Sr. Member
  • ****
  • 284
  • 3
  • แพร่ เวียงโกศัย
    • ดูรายละเอียด
    • songwut.biz
เคย Restore ฐานข้อมูลขนาด 300GB ใช้เวลาประมาณ 2  วัน

งานนี้ต้องหาวิธี จูน Server ดีๆ หน่อย

ไปค้น Google มาแปะเก็บไว้ใช้คราวต่อไป


อ้างถึง

mysql -u root -p

set global net_buffer_length=1000000; --Set network buffer length to a large byte number

set global max_allowed_packet=1000000000; --Set maximum allowed packet size to a large byte number

SET foreign_key_checks = 0; --Disable foreign key checking to avoid delays,errors and unwanted behaviour

source file.sql --Import your sql dump file

SET foreign_key_checks = 1; --Remember to enable foreign key checks when procedure is complete!

อีก  1 ตำรา

แก้ไข [ my.ini ] ใน ส่วน InnoDB

อ้างถึง

innodb_buffer_pool_size = 12G
# 60% - 70% ของขนาด RAM ในเครื่อง

innodb_log_buffer_size = 16M
# 16M or 32M

innodb_log_file_size = 3G
# 25% of buffer pool size

innodb_write_io_threads = 32
# 32 is fine, 64 is maximum

innodb_flush_log_at_trx_commit = 0


Restart Service แล้วทำการ Import ได้เลย

อย่าลืมเปลี่ยนคืนด้วยนะครับ
รับทำเว็บ, ทำ server linux