คำถามติดแท็ก innodb

InnoDB: เครื่องมือจัดเก็บ ACID ที่สอดคล้องกับ MySQL


7
ฉันจะเพิ่มประสิทธิภาพ mysqldump ของฐานข้อมูลขนาดใหญ่ได้อย่างไร
ฉันมีแอพพลิเคชั่น symfony ที่มีฐานข้อมูล InnoDB ที่ ~ 2GB พร้อม 57 ตาราง ขนาดส่วนใหญ่ของฐานข้อมูลอยู่ในตารางเดียว (~ 1.2GB) ฉันกำลังใช้ mysqldump เพื่อสำรองฐานข้อมูลทุกคืน เนื่องจากการเชื่อมต่อ comcast ของฉันบ่อยครั้งถ้าฉันเรียกใช้การถ่ายโอนข้อมูลด้วยตนเองการเชื่อมต่อกับเซิร์ฟเวอร์ของฉันจะหมดเวลาก่อนที่การถ่ายโอนข้อมูลเสร็จสมบูรณ์ทำให้ฉันต้องเรียกใช้การถ่ายโอนข้อมูลอีกครั้ง [ฉันกำลังเรียกใช้ cron ที่ถ่ายโอนข้อมูลทุกคืนนี่เป็นเพียงการทิ้งที่ฉันทำงานด้วยตนเอง] มีวิธีเพิ่มความเร็วในการทิ้งสำหรับปัญหาการหมดเวลาการเชื่อมต่อ แต่ยัง จำกัด เวลาที่เซิร์ฟเวอร์ครอบครองกระบวนการนี้หรือไม่ BTW ฉันกำลังทำงานในการลดขนาดของฐานข้อมูลโดยรวมเพื่อแก้ไขปัญหานี้

4
ควรมี mysql innodb_buffer_pool_size ขนาดเท่าใด
ฉันมีฐานข้อมูลไม่ว่างที่มีตาราง InnoDB แต่เพียงผู้เดียวซึ่งมีขนาดประมาณ 5GB ฐานข้อมูลทำงานบนเซิร์ฟเวอร์ Debian โดยใช้ดิสก์ SSD และฉันได้ตั้งค่าการเชื่อมต่อสูงสุด = 800 ซึ่งบางครั้งทำให้อิ่มตัวและบดขยี้เซิร์ฟเวอร์ให้หยุดทำงาน ข้อความค้นหาเฉลี่ยต่อวินาทีประมาณ 2.5K ดังนั้นฉันจำเป็นต้องปรับการใช้หน่วยความจำให้เหมาะสมเพื่อให้มีพื้นที่สำหรับการเชื่อมต่อที่เป็นไปได้สูงสุด ฉันเห็นคำแนะนำแล้วว่า innodb_buffer_pool_size ควรมีขนาดสูงสุด 80% ของหน่วยความจำทั้งหมด ในอีกทางหนึ่งฉันได้รับคำเตือนจากสคริปต์ปรับแต่งไพรเมอร์: Max Memory Ever Allocated : 91.97 G Configured Max Per-thread Buffers : 72.02 G Configured Max Global Buffers : 19.86 G Configured Max Memory Limit : 91.88 G Physical …
170 mysql  innodb 

5
เป็นไปได้ไหมที่ทำให้ MySQL ใช้มากกว่าหนึ่งคอร์?
ฉันได้รับการนำเสนอด้วยเซิร์ฟเวอร์ MySQL เฉพาะที่ไม่เคยใช้มากกว่าหนึ่งคอร์ ฉันเป็นนักพัฒนามากกว่า DBA สำหรับ MySQL ดังนั้นต้องการความช่วยเหลือ ติดตั้ง เซิร์ฟเวอร์ค่อนข้างหนักด้วยการโหลดประเภท OLAP / DataWarehouse (DW): หลัก: 96GB RAM, 8 คอร์ + RAID 10 อาเรย์เดียว ทดสอบ: RAM 32GB พร้อม 4 คอร์ ฐานข้อมูลที่ใหญ่ที่สุดคือ 540 GB, รวมอยู่ที่ประมาณ 1.1TB และส่วนใหญ่เป็นตาราง InnoDB Solaris 10 Intel-64 MySQL 5.5.x หมายเหตุ: ฐานข้อมูลที่ใหญ่ที่สุดคือหนึ่งที่จำลองแบบจากเซิร์ฟเวอร์ OLTP DR และ DW จะถูกโหลดจากสิ่งนี้ มันไม่ใช่ DW …

5
จะเปลี่ยน MySQL innodb variable ได้อย่างไร 'innodb_log_file_size'
ดังนั้นฉันค่อนข้างใหม่ในการปรับแต่ง InnoDB ฉันค่อยๆเปลี่ยนตาราง (จำเป็น) จาก MyIsam เป็น InnoDB ฉันมี innodb ประมาณ 100MB ดังนั้นฉันจึงเพิ่มinnodb_buffer_pool_sizeตัวแปรเป็น 128MB: mysql> show variables like 'innodb_buffer%'; +-------------------------+-----------+ | Variable_name | Value | +-------------------------+-----------+ | innodb_buffer_pool_size | 134217728 | +-------------------------+-----------+ 1 row in set (0.00 sec) เมื่อฉันไปเปลี่ยนinnodb_log_file_sizeค่า (ตัวอย่าง my.cnf บนหน้าการกำหนดค่า innodb ของ mysql แสดงความคิดเห็นเพื่อเปลี่ยนขนาดไฟล์บันทึกเป็น 25% ของขนาดบัฟเฟอร์ดังนั้นตอนนี้ my.cnf ของฉันมีลักษณะเช่นนี้: …
105 mysql  innodb  myisam  logs 

4
MySQL มีวิธีนำเข้า sql dump ขนาดใหญ่ (32 GB) เร็วขึ้นไหม?
ฉันมีการถ่ายโอนข้อมูล SQL ขนาดใหญ่ 32 GB ที่ฉันต้องนำเข้าสู่ MySQL ฉันไม่ได้นำเข้าการถ่ายโอนข้อมูล SQL ขนาดใหญ่เช่นนี้มาก่อน ฉันทำตามปกติ: mysql -uroot dbname < dbname.sql ใช้เวลานานเกินไป มีโต๊ะที่มีแถวประมาณ 300 ล้านแถวและได้รับถึง 1.5 ล้านในเวลาประมาณ 3 ชั่วโมง ดังนั้นดูเหมือนว่าสิ่งทั้งหมดจะใช้เวลา 600 ชั่วโมง (นั่นคือ 24 วัน) และทำไม่ได้ ดังนั้นคำถามของฉันคือมีวิธีที่เร็วกว่าในการทำเช่นนี้? ข้อมูลเพิ่มเติม / ผลการวิจัย ตารางเป็น InnoDB ทั้งหมดและไม่มีการกำหนดคีย์ต่างประเทศ อย่างไรก็ตามมีดัชนีจำนวนมาก ฉันไม่สามารถเข้าถึงเซิร์ฟเวอร์เดิมและฐานข้อมูลดังนั้นฉันจึงไม่สามารถทำการสำรองข้อมูลใหม่หรือทำสำเนา "ร้อน" เป็นต้น การตั้งค่าinnodb_flush_log_at_trx_commit = 2ตามที่แนะนำที่นี่ดูเหมือนว่าจะไม่มีการปรับปรุง (มองเห็นได้ชัดเจน / อธิบาย) สถิติเซิร์ฟเวอร์ในระหว่างการนำเข้า (จาก …

1
วิธีที่ดีที่สุดในการลดขนาดของ ibdata ใน mysql คืออะไร
ฉันมีเซิร์ฟเวอร์ผลิตจำนวนหนึ่งซึ่งibdataไฟล์เพิ่มขึ้นทุกวัน มีการใช้พื้นที่ 290GB แล้ว ตารางในเซิร์ฟเวอร์ส่วนใหญ่เป็น InnoDB และมีคำขออ่านและเขียนสูง ขนาดไฟล์บันทึกเพิ่มขึ้นเช่นกัน มีข้อมูลจำนวนมากในตาราง ฉันจะควบคุมขนาดที่เพิ่มขึ้นของทั้งสองได้อย่างไร innodb_file_per_tableฉันไม่ได้ใช้
63 mysql  innodb 

3
ประสิทธิภาพของการใช้ CHAR กับ VARCHAR ในฟิลด์ขนาดคงที่คืออะไร
ฉันมีคอลัมน์ที่จัดทำดัชนีซึ่งจัดเก็บ MD5 แฮช ดังนั้นคอลัมน์จะเก็บค่า 32 อักขระเสมอ ไม่ว่าจะด้วยเหตุผลใดก็ตามสิ่งนี้ถูกสร้างขึ้นเป็น varchar แทนที่จะเป็นถ่าน มันคุ้มค่าปัญหาของการโยกย้ายฐานข้อมูลเพื่อแปลงเป็นถ่านหรือไม่ นี่คือใน MySQL 5.0 พร้อม InnoDB


4
InnoDB หรือ MyISAM ไหนเร็วกว่ากัน
MyISAM จะ "เร็วขึ้น" ได้อย่างไรกว่า InnoDB ถ้า MyISAM จำเป็นต้องอ่านข้อมูลในดิสก์หรือไม่ InnoDB ใช้บัฟเฟอร์พูลสำหรับดัชนีและข้อมูลและ MyISAM สำหรับดัชนีเท่านั้น

3
เหตุใด InnoDB จึงจัดเก็บฐานข้อมูลทั้งหมดไว้ในไฟล์เดียว
มันสะดวกที่ MyISAM ใช้เก็บแต่ละตารางในไฟล์ที่เกี่ยวข้อง InnoDB มีความก้าวหน้าในหลาย ๆ ด้าน แต่ฉันสงสัยว่าทำไม InnoDB จึงเก็บฐานข้อมูลทั้งหมดไว้ในไฟล์เดียว ( ibdata1โดยค่าเริ่มต้น) ฉันเข้าใจว่า InnoDB จะจับคู่ตำแหน่งของข้อมูลในไฟล์โดยแต่ละไฟล์ดัชนีสำหรับตาราง แต่ฉันไม่เข้าใจว่าทำไมมันจึงรวมข้อมูลทั้งหมดไว้ในไฟล์เดียว และที่สำคัญทำไมผสมข้อมูลของฐานข้อมูลทั้งหมดบนเซิร์ฟเวอร์ คุณลักษณะที่น่าสนใจของ MyISAM คือสามารถคัดลอก / วางโฟลเดอร์ฐานข้อมูลไปยังเครื่องอื่นแล้วใช้ฐานข้อมูล (โดยไม่ต้องถ่ายโอนข้อมูล)

3
ความแตกต่างระหว่าง On Delete Cascade และ On Cascade Update ใน mysql
ฉันมีสองตารางใน MySQL database- ,parent childฉันกำลังพยายามเพิ่มการอ้างอิงคีย์ต่างประเทศในตารางลูกของฉันตามตารางหลัก มีความแตกต่างที่สำคัญระหว่างON UPDATE CASCADEและON DELETE CASCADE ตารางผู้ปกครองของฉัน CREATE TABLE parent ( id INT NOT NULL, PRIMARY KEY (id) ) ENGINE=INNODB; คำถามของฉันคืออะไรความแตกต่างระหว่างการค้นหา sql ต่อไปนี้คืออะไร ON DELETE CASCADE CREATE TABLE child ( id INT, parent_id INT, INDEX par_ind (parent_id), FOREIGN KEY (parent_id) REFERENCES parent(id) ON DELETE CASCADE ) …

2
InnoDB: ข้อผิดพลาด: ตาราง“ mysql” ไม่พบ“ innodb_table_stats” หลังจากอัปเกรดเป็น mysql 5.6
ฉันอัปเกรดเป็น mysql 5.6 จาก 5.5 และตอนนี้บันทึกของฉันเกลื่อนไปด้วยข้อความดังกล่าวเมื่อเริ่มต้น ฉันพบวิธีแก้ปัญหาที่เป็นไปได้ที่นี่ แต่ดูเหมือนจะไม่เป็นทางการ http://forums.mysql.com/read.php?22,578559,579891#msg-579891 2013-12-06 21:08:00 7f87b1d26700 InnoDB: Error: Table "mysql"."innodb_table_stats" not found. 2013-12-06 21:08:00 7f87b1d26700 InnoDB: Recalculation of persistent statistics requested for table "drupal"."sessions" but the required persistent statistics storage is not present or is corrupted. Using transient stats instead. 2013-12-06 21:08:07 7f903c09c700 InnoDB: …

1
MySQL ล่มเป็นระยะพร้อมด้วยข้อผิดพลาด“ ข้อผิดพลาดร้ายแรง: ไม่สามารถจัดสรรหน่วยความจำสำหรับบัฟเฟอร์พูล”
เพิ่มเมื่อแก้ไข 2013-05-29:เนื่องจากนี่เป็นคำถามและการอภิปรายที่ยาวนานนี่เป็นบทสรุปโดยย่อของคำถามและวิธีแก้ไข ฉันมีปัญหาในการใช้งาน MySQL และ Apache บนเซิร์ฟเวอร์ Linux ขนาดเล็ก (หน่วยความจำ 1 GB) Apache ยังคงต้องการหน่วยความจำเพิ่มขึ้นและในฐานะที่เป็นระบบปฏิบัติการนั้นก็จะฆ่า MySQL เพื่อให้ได้หน่วยความจำกลับคืนมา วิธีแก้ไขคือแทนที่ Apache ด้วย Lighttpd หลังจากที่ฉันทำอย่างนั้นแล้วการใช้หน่วยความจำบนเซิร์ฟเวอร์มีความเสถียรอย่างสมบูรณ์เป็นเวลาหลายเดือนแล้วและฉันก็ไม่พบปัญหาใด ๆ สิ้นสุดการแก้ไข ฉันเป็นผู้ดูแลระบบเริ่มต้นสำหรับเซิร์ฟเวอร์เสมือนขนาดเล็ก หน้าที่หลักของเซิร์ฟเวอร์คือการรันซอฟต์แวร์ระบบการจัดการหลักสูตรMoodleแบบโอเพ่นซอร์สซึ่งเขียนด้วย PHP มันอาศัยฐานข้อมูลในกรณีนี้ MySQL และเว็บเซิร์ฟเวอร์ในกรณีนี้ Apache เซิร์ฟเวอร์กำลังเรียกใช้ CentOS 64 บิตรีลีส 5.8 (Final) พร้อมหน่วยความจำ 1 GB และดิสก์ 200 GB, เคอร์เนลรุ่น 2.6.18-308.8.2.el5xen รุ่น MySQL คือ Ver 14.14 Distrib …

5
คุณปรับแต่ง MySQL สำหรับภาระงาน InnoDB จำนวนมากได้อย่างไร
สมมติว่าระบบ OLTP ที่ใช้งานจริงนั้นมีตาราง InnoDB เป็นส่วนใหญ่ อาการที่พบบ่อยของระบบผิดพลาด / กำหนดค่าผิดพลาดคืออะไร? พารามิเตอร์การกำหนดค่าใดที่คุณมักเปลี่ยนจากค่าเริ่มต้น คุณจะสังเกตเห็นคอขวดที่อาจเกิดขึ้นก่อนที่จะมีปัญหาได้อย่างไร คุณรู้จักและแก้ไขปัญหาที่ใช้งานอยู่ได้อย่างไร เกร็ดเล็กเกร็ดน้อยที่มีรายละเอียดเกี่ยวกับstatusตัวแปรเฉพาะและการวินิจฉัยจะได้รับการชื่นชม

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.