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

ยูทิลิตี้ Dump / Backup มาตรฐานของ MySQL

4
ตาราง Mysqldump ยกเว้นบางฟิลด์
มีวิธีการ mysqldump ตารางที่ไม่มีเขตข้อมูลหรือไม่ ผมขออธิบาย: ฉันมีฐานข้อมูล MySQL testsเรียกว่า ในtestsฉันมี 3 ตาราง: USER, และTOTO TATAผมแค่อยากจะ mysqldump ฟิลด์ของตารางบางUSERดังนั้นไม่รวมเขตข้อมูลบางอย่างเช่นmail, ip_loginฯลฯ ฉันจะทำสิ่งนี้ได้อย่างไร
14 mysql  mysqldump 

1
การตั้งค่า mysqldump ที่ดีที่สุดคืออะไร [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน2 ปีที่ผ่านมา หลังจากการค้นหาบางอย่างฉันลงเอยด้วยการตั้งค่าต่อไปนี้: mysqldump\ --host=localhost\ --port=3306\ --databases ****\ --user=****\ --password=****\ --default-character-set=utf8\ --add-drop-database\ --add-drop-table\ --add-locks\ --complete-insert\ --extended-insert\ --lock-all-tables\ --create-options\ --disable-keys\ --quick\ --order-by-primary\ --set-charset\ --tz-utc\ > dump/test.sql จนถึงตอนนี้ดีมาก แต่ฉันมีคำถามบางอย่างเกี่ยวกับพารามิเตอร์เช่นเดียวกับการดำเนินการ เกี่ยวกับข้อกังวลแรกของฉันฉันแค่ต้องการให้แน่ใจว่าพวกเขาทั้งหมดจะต้องและไม่ก่อให้เกิดความขัดแย้งใด ๆ เมื่อใช้ร่วมกัน ในที่สุดฉันต้องการสร้างไฟล์ดัมพ์ที่มีความแข็งแกร่งและสอดคล้องกันโดยมีเร็กคอร์ดนับล้านที่สร้างตารางฐานข้อมูลและแทรกข้อมูล สิ่งที่ดีคือการทำให้ฐานข้อมูลไม่พร้อมใช้งานชั่วขณะหนึ่งไม่ใช่ปัญหาสำหรับฉัน เป้าหมายเดียวของฉันคือการสร้างไฟล์การถ่ายโอนข้อมูลที่แข็งแกร่งและสอดคล้องกัน เกี่ยวกับคอนเสิร์ตครั้งที่สองของฉันฉันอยากรู้วิธีที่จะได้รับแจ้งเมื่อคำสั่งนั้นผิดพลาดและถ้าเกิดข้อยกเว้น ความคิดใด ๆ แก้ไข นี่คือคำสั่ง mysqldump ที่อัปเดตของฉันโดยอิงตามความคิดเห็นของ RolandoMySQLDBA mysqldump\ --host=localhost\ --port=3306\ --databases …

2
เครื่องมือในการส่งออกข้อมูลด้วยข้อมูลเชิงสัมพันธ์ทั้งหมดหรือไม่ [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นหัวข้อสำหรับผู้ดูแลฐานข้อมูล Exchange Exchange ปิดให้บริการใน5 ปีที่ผ่านมา มีเครื่องมือในการส่งออกข้อมูลจากแถวที่เลือกในตารางที่มีข้อมูลทั้งหมดที่เก็บไว้ในตารางอื่นในตารางอื่น ๆ ที่เชื่อมโยงโดยการออกแบบเชิงสัมพันธ์หรือไม่? วัตถุประสงค์คือเพื่อลดความยุ่งยากในการย้ายข้อมูลบิตระหว่างเซิร์ฟเวอร์สำหรับการย้ายข้อมูลแบบเฉพาะกิจ ฉันกำลังมองหาเครื่องมือสำหรับ MySQL InnoDB โดยเฉพาะกับคีย์ต่างประเทศที่กำหนดไว้

4
ไม่มี NULLs แต่ลำดับไบต์ไม่ถูกต้องสำหรับการเข้ารหัส“ UTF8”: 0x00
ฉันใช้เวลา 8 ชั่วโมงที่ผ่านมาพยายามนำเข้าผลลัพธ์ของ 'mysqldump --compatible = postgresql' ลงใน PostgreSQL 8.4.9 และฉันได้อ่านอย่างน้อย 20 กระทู้ที่แตกต่างกันที่นี่และที่อื่น ๆ เกี่ยวกับปัญหาเฉพาะนี้แล้ว แต่ไม่พบ คำตอบที่ใช้งานได้จริงที่ทำงาน ทิ้งข้อมูล MySQL 5.1.52: mysqldump -u root -p --compatible=postgresql --no-create-info --no-create-db --default-character-set=utf8 --skip-lock-tables rt3 > foo เซิร์ฟเวอร์ PostgreSQL 8.4.9 เป็นปลายทาง กำลังโหลดข้อมูลด้วย 'psql -U rt_user -f foo' กำลังรายงาน (ส่วนใหญ่เป็นหนึ่งในตัวอย่าง): psql:foo:29: ERROR: invalid byte sequence for …

5
mysqldump ไม่สมบูรณ์
ฉันพยายามเรียกใช้ mysqldump เพื่อสร้างสแนปชอตของฐานข้อมูลและฉันพบว่ามันจะหยุดกลางคันแบบสุ่มโดยไม่ต้องรายงานข้อผิดพลาดใด ๆ ฐานข้อมูลของฉันมีขนาดค่อนข้างเล็ก (ประมาณ 100MB) และใช้งาน InnoDB ฉันใช้มันเหมือน: mysqldump --force --single-transaction --quick --user myuser --password=mypass -h mydatabasehost mydb > /tmp/snapshot.sql การตรวจสอบรหัสออกรายงาน 0 รุ่นของฉันคือ: mysqldump Ver 10.13 Distrib 5.1.52 สำหรับ redhat-linux-gnu (i386) ฉันเคยเห็นโพสต์ที่คล้ายกันและแม้กระทั่งรายงานข้อผิดพลาดอย่างเป็นทางการแต่ดูเหมือนว่าจะไม่มีวิธีแก้ปัญหา ฉันจะใช้ mysqldump เพื่อถ่ายภาพฐานข้อมูลที่สมบูรณ์ได้อย่างไร แก้ไข: ฐานข้อมูลของฉันอยู่ใน RDS ของ Amazon ในปัจจุบัน

2
จะบันทึก verbose output จาก mysqldump ได้อย่างไร?
คุณมักจะบันทึกเอาต์พุต verbose ของคำสั่ง Linux ดังนี้: # command > output.txt แต่เมื่อคุณใช้คำสั่งเช่นmysqldumpนั้น>ตัวเลือกจะส่งออกดัมพ์ของตารางฐานข้อมูลไปยังไฟล์ที่ต้องการ: # mysqldump --username=whatever --password=whatever -h localhost database > dump.sql หากคุณเพิ่มใน-vตัวเลือก (verbose) ไปที่mysqldumpมันจะแสดงผลข้อมูลความช่วยเหลือเกี่ยวกับสิ่งที่คำสั่งทำ ฉันจะบันทึกเอาต์พุต verbose นี้ไปยังไฟล์ได้อย่างไรเนื่องจาก>ตัวเลือกถูกใช้เพื่อส่งออกข้อมูลตารางฐานข้อมูลไปยังไฟล์ โดยเฉพาะอย่างยิ่งฉันจะทิ้งผลลัพธ์ของฐานข้อมูลหนึ่งลงในฐานข้อมูลอื่นเช่นนี้ mysqldump -alv -h 123.123.123.123 --user=username --password=p@ssw0rd --add-drop-table databasename | mysql --user=username --password=p@ssw0rd -h localhost localdatabase ฉันลองต่อไปนี้ แต่ไฟล์เอาต์พุตไม่มีข้อมูลในตอนท้าย mysqldump -alv -h 123.123.123.123 --user = ชื่อผู้ใช้ …

1
การถ่ายโอนข้อมูล MySQL คืนค่า - วิธีการเก็บความคิดเห็น
ดังนั้นฉันมีการถ่ายโอนข้อมูล MySQL ที่ซับซ้อนเป็นข้อมูลสำรอง น่าเสียดายที่การสำรองข้อมูลนั้นซับซ้อนและเราใช้ทริกเกอร์ชั่วร้าย ทริกเกอร์ชั่วร้ายของเราบางคนมีบรรทัดความคิดเห็นเริ่มต้นด้วยอักขระ # เมื่อฉันสำรองฐานข้อมูลการถ่ายโอนข้อมูลที่เป็นผลลัพธ์จะบันทึกบรรทัด # ปัญหาคือเมื่อฉันทำการคืนค่า บรรทัดที่ขึ้นต้นด้วย # จะถูกแทนที่ด้วยบรรทัดว่าง ดังนั้นฉันกำลังมองหาวิธีการคืนค่าการถ่ายโอนข้อมูลด้วยบรรทัดเริ่มต้นด้วยปอนด์

1
คีย์ DISABLE ของ MySqlDump ไม่มีผลต่อการนำเข้า
ฉันได้ติดตามคำถามก่อนหน้านี้ของฉันเกี่ยวกับความเร็วการนำเข้าด้วย Inno-Tables (ประหลาดใจ!) สถานการณ์สมมติ ฉันพยายามนำเข้าฐานข้อมูลขนาดใหญ่ * การถ่ายโอนข้อมูลในเครื่อง dev ท้องถิ่นของฉันในเวลาที่เหมาะสม เรามีจำนวนมากKEYที่แนบมากับตารางซึ่งกลายเป็นคอขวด แต่ยังคงมีความสำคัญสำหรับระบบสดของเรา แนวทางของฉันหลังจากถามคำถามข้างต้นคือการลบKEY ...คำสั่งจากการถ่ายโอนข้อมูลนำเข้าและเพิ่มคีย์อีกครั้ง อย่างไรก็ตามฉันมักจะพบว่าตัวเองกำลังแก้ไขการถ่ายโอนข้อมูลปัจจุบันเพื่อนำเข้าภายในเครื่องและฉันเจอ "ความคิดเห็น" ตลกเหล่านี้ (The disable/enable keys-lines) -- -- Dumping data for table `monster` -- LOCK TABLES `monster` WRITE; /*!40000 ALTER TABLE `monster` DISABLE KEYS */; INSERT … INSERT … INSERT /*!40000 ALTER TABLE `monster` ENABLE KEYS */; …

4
วิธีเพิ่มการสำรองข้อมูลที่รวดเร็วและกู้คืนฐานข้อมูล 500GB โดยใช้ mysqldump
มีฐานข้อมูลขนาด 500GB ตารางในฐานข้อมูล A มีทั้งตาราง MyISAM และ INNODB ตาราง MyISAM เป็นตารางต้นแบบและตาราง Innodb เป็นตารางธุรกรรมหลัก สำรองและคืนค่าโดยใช้การถ่ายโอนข้อมูล mysql ออกจากเวลานานหรือวัน max_allowed_packet = 1G foreign_key_checks = 0 auto_commit = ปิด

1
กู้คืนฐานข้อมูล mysql เดียวบนระบบที่ถูกจำลองแบบ master-slave ที่ไม่ว่าง
กำลังมองหากลยุทธ์หรือเครื่องมือในการจัดการกับการกู้คืนฐานข้อมูลเดียวไปยังจุดในเวลาในระบบจำลองแบบไม่ว่าง ฉันมี 12 ฐานข้อมูลที่ทำงานบนเซิร์ฟเวอร์ MySQL 5.0.77 2 ตัวในการกำหนดค่าแบบจำลองต้นแบบทาส การถ่ายโอนข้อมูลเต็มรูปแบบถูกนำมาใช้เป็นทาสแบบอ่านอย่างเดียวทุกวันและมีการทิ้ง SQL ที่เพิ่มขึ้นพร้อมกับการสำรองข้อมูลเหล่านี้นอกสถานที่และตรวจสอบสถานะการจำลองแบบ แก้ไข: ตารางเป็นส่วนผสมของ InnoDB และ myISAM ดังนั้นจึงไม่มีโซลูชันเฉพาะเครื่องยนต์ เมื่อได้รับความล้มเหลวอย่างสมบูรณ์ของเซิร์ฟเวอร์หลักฉันสามารถทำลายการจำลองแบบและส่งเสริมเซิร์ฟเวอร์ทาสฉันยังมีตัวเลือกในการสร้างเซิร์ฟเวอร์ใหม่และกำหนดค่าจากการสำรองข้อมูล FULL ล้ำหน้าแล้วใช้ส่วนต่างที่เกิดขึ้นจากทาสทุกชั่วโมง อย่างไรก็ตามฉันกังวลว่าจะจัดการกับความล้มเหลวบางส่วนหรือความล้มเหลวของฐานข้อมูลเดียวได้อย่างไร ฉันคิดว่า 2 สถานการณ์ที่ค่อนข้างน่าจะเป็น ฐานข้อมูล 7 (ตัวอย่าง) เกิดความเสียหายยังคงให้บริการคำขอบางอย่างจนกว่าจะมีคนสังเกตว่ามันเสียหรือการแจ้งเตือนจากไฟล์บันทึก ... แบบสอบถามบางอย่างเช่นฐานข้อมูลแบบหล่นตารางวาง "อัปเดตที่ ... " พิมพ์แบบสอบถามแบบบอร์กเป็นฐานข้อมูลเดียวหรือบางส่วนในนั้น ในขณะนี้ฉันมีไฟล์ดัมทั้งหมดเป็นไฟล์ FULL- $ DATE-all-database.sql.gz และดิฟเฟอเรนเชียลที่สามารถนำไปใช้กับการถ่ายโอนข้อมูล FULL ได้เช่น DIFF- $ DATE-all-database.sql.gz ในการกู้คืนฐานข้อมูล 7 ไปยังจุดเวลาจะต้องมี grep ผ่านไฟล์ FULL …

4
คำสั่ง mysqldump เก็บฐานข้อมูลที่สำรองไว้ที่ไหน
ฉันพยายามสำรองฐานข้อมูลของฉันผ่านทางเทอร์มินัลใน Ubuntu โดยใช้mysqldumpคำสั่งและประสบความสำเร็จ มันจะวางฐานข้อมูลสำรองที่ไหน ฉันเรียกใช้คำสั่งเช่นนี้: $ mysqldump -h localhost -u username - p database_name > back_up_db.sql แต่ไม่รู้ว่าback_up_db.sqlเก็บไว้ที่ไหน
10 mysqldump  ubuntu 

3
mysqldump - ธุรกรรมเดี่ยว แต่อัพเดตคิวรี่กำลังรอการสำรองข้อมูล
ถ้าฉันใช้ mysqldump - ธุรกรรมเดี่ยวตามเอกสารที่ควรทำตารางล้างด้วยล็อคการอ่านเพื่อให้ได้สถานะที่สอดคล้องกันจากนั้นเริ่มต้นการทำธุรกรรมและไม่มีนักเขียนที่ควรจะรอ อย่างไรก็ตามเมื่อคืนนี้ฉันได้พบกับสถานการณ์ต่อไปนี้: ส่วนที่ตัดตอนมาจากรายการกระบวนการเต็มรูปแบบแสดง: หลายร้อยคน ... Command: Query Time: 291 State: Waiting for table flush Info: insert into db_external_notification..... ถ้าอย่างนั้น: Command: Query Time: 1204 State: Sending data Info: SELECT /*!40001 SQL_NO_CACHE */ * FROM `db_external_notification` และเธรดที่เหลืออยู่ในโหมดสลีป ไม่มีใครมีความคิดใด ๆ สิ่งที่แทรกเหล่านี้รอ? ฉันไม่เห็นตาราง FLUSH หรือ DDL ใด ๆ หรืออะไรก็ตามที่กล่าวถึงในคู่มือที่อาจทำให้ข้อความค้นหารอ คำสั่ง mysqldump …

2
คำสั่ง mysqldump จะสำรองมุมมองทั้งหมดที่มีอยู่ใน DB หรือมีคำสั่งพิเศษหรือไม่?
ฉันพยายามสำรองฐานข้อมูลทั้งหมดพร้อมกับมุมมอง ฉันจะใช้mysqldumpคำสั่ง ฉันสงสัยว่าจะคัดลอกมุมมองทั้งหมดหรือไม่ฉันจะต้องใช้คำสั่งแยกต่างหาก กรุณาแนะนำคำตอบ ความช่วยเหลือใด ๆ ที่ชื่นชมอย่างมาก
10 mysql  backup  mysqldump  view 

1
ทริกเกอร์และขั้นตอนการถ่ายโอนข้อมูล mysqldump สามารถ
มีวิธีการสร้าง mysqldump ซึ่งจะบันทึกทริกเกอร์และขั้นตอนทั้งหมดจากฐานข้อมูลที่ระบุหรือไม่? บางครั้งก่อนหน้านี้ฉันอ่านแล้วว่าmysqldumpจะช่วยทริกเกอร์ของฉันด้วย แต่มันก็ดูไม่เหมือนกัน คำถามที่สองของฉันคือฉันจะตรวจสอบในไฟล์ sql ได้อย่างไรถ้ามีทริกเกอร์อยู่

1
ต้องการสำรองฐานข้อมูล MySQL data_schema, performance_schema, mysql และ phpmyadmin หรือไม่?
ฉันรู้ว่าไม่จำเป็นต้องสำรองinformation_schemaฐานข้อมูล แต่เกี่ยวกับฐานข้อมูลต่อไปนี้ (นอกเหนือจากฐานข้อมูลที่ผู้ใช้กำหนด)? performance_schema mysql phpmyadmin (ดังนั้นในกรณีที่มีปัญหาและเราต้องเริ่มจากศูนย์ (ติดตั้ง MySQL ใหม่) ซึ่งฐานข้อมูลใดที่ฉันต้องวางกลับ)?

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