ส่งออกข้อมูลจาก mysql Workbench 6.0


98

ฉันพยายามส่งออกฐานข้อมูลของฉันโดยใช้ MySQL Workbench 6.0 บน Windows เพื่อส่งไปยังอินสแตนซ์ฐานข้อมูลของฉันใน Amazon RDS แต่ฉันได้รับข้อผิดพลาดนี้:

Operation failed with exitcode 7
11:34:40 Dumping clubbin (taxicompanies)
Running: "C:\Program Files\MySQL\MySQL Server 5.7\bin\mysqldump.exe"
-defaults-extra- file="c:\users\selene\appdata\local\temp\tmp6o0hno.cnf"
--max_allowed_packet=1G --delayed-   insert=FALSE --host=localhost --user=root
--port=3306 --default-character-set=utf8 "clubbin"   "taxicompanies"
mysqldump: [ERROR] unknown variable 'delayed-insert=FALSE'

ใครมีความคิดที่สามารถช่วยฉันได้บ้าง?

คำตอบ:


283

mysqldump: [ERROR] ตัวแปรที่ไม่รู้จัก 'delay-insert = FALSE'


ข้อผิดพลาดนี้เกิดขึ้นกับระบบต่างๆและสามารถแก้ไขได้ชั่วคราวโดย:

  1. ไปยังไดเร็กทอรีที่เหมาะสมขึ้นอยู่กับระบบ:

    ก) ของ Windows : C:\Program Files\MySQL\MySQL Workbench 6.3 CE\modules(การติดตั้งแบบ 32 บิตบน x64 ระบบ: C:\Program Files (x86)\MySQL\MySQL Workbench 6.3 CE\modules)

    b) Mac OS X : Applications/MYSQLWorkbench.app/Contents/Resources/plugins- คลิกขวาที่แอพแล้วเลือกแสดงเนื้อหาแพ็คเกจเพื่อเข้าไปในแอพ (ขอบคุณBradley Flood )

    c) Linux Ubuntu : /usr/lib/mysql-workbench/modules(ขอบคุณAlessandro Lopes )

  2. เปิดไฟล์ wb_admin_export_options.py

  3. ค้นหาบรรทัด "delayed-insert":["Write INSERT DELAYED statements rather than ...

  4. แทรก#ที่จุดเริ่มต้นของบรรทัดนี้เพื่อแสดงความคิดเห็น

  5. บันทึกไฟล์และรีสตาร์ท Workbench


ทดสอบบน Windows 7 x64, MySQL 5.6.27 (MyISAM) และ Workbench 6.3.5 x64

ทดสอบบน OSX Yosemite 10.10.4, MySQL 5.5.27 (MyISAM), Workbench 6.3.5 build 201 CE x64


18
สำหรับผู้ใช้บน OSX wb_admin_export_options.pyไฟล์จะอยู่ในApplications -> MYSQLWorkbench.app/Contents/Resources/plugins. หมายเหตุ: คลิกขวาที่แอพแล้วเลือกShow Package contentsเพื่อเข้าไปในแอพ
Bradley Flood

ติดตั้งซอฟต์แวร์ MySQL ใหม่ทั้งหมดบน Mac เครื่องใหม่พร้อมอัปเดตทั้งหมด ณ วันที่ 1 พฤศจิกายน 2015 ซึ่งจะช่วยแก้ไขปัญหาข้อมูลการส่งออก ขอบคุณ!
Nostalg.io

2
สำหรับผู้ใช้ Ubuntu จะอยู่ที่/usr/lib/mysql-workbench/modules/wb_admin_export_options.py
Brian Leishman

1
INSERT DELAYED ใช้ได้เฉพาะกับตาราง MyISAM, MEMORY, ARCHIVE และ BLACKHOLE สำหรับเครื่องยนต์ที่ไม่รองรับ DELAYED จะเกิดข้อผิดพลาด หากคุณกำลังใช้ innodb แสดงความคิดเห็นนี้
Pascal

@cybermonkey - แน่ใจเหรอ? ฉันได้ทดสอบ workbench x32 บน win32 และ x64 บน win64 - ติดตั้งเสมอใน "Program Files" โดยไม่มี "(x86)" ในเส้นทาง ...
c4pricorn

8

สิ่งนี้ได้ผลสำหรับฉัน

แก้ไขไฟล์ C: \ Program Files \ MySQL \ MySQL Workbench 6.3 CE \ module \ wb_admin_export_options.py (ตรวจสอบให้แน่ใจว่าคุณเปิดโปรแกรมแก้ไขในฐานะผู้ดูแลระบบ)

ค้นหาบรรทัด:

delay-insert ": [" เขียนคำสั่ง INSERT DELAYED แทนที่จะเป็น INSERT statement "," FALSE "," BOOL ", (" 5.0.0 "," 5.7.0 ")],

และใส่แฮช“ #” ที่จุดเริ่มต้นของบรรทัดเพื่อให้มีลักษณะดังนี้:

# delay-insert ": [" เขียนคำสั่ง INSERT DELAYED แทน INSERT statement "," FALSE "," BOOL ", (" 5.0.0 "," 5.7.0 ")],

สิ่งนี้จะแสดงความคิดเห็นเพื่อให้ Workbench ไม่ใช้คำสั่งนี้

บันทึกและปิดไฟล์

เริ่ม Workbench แล้วลองอีกครั้ง

อ้างอิงhttp://dannytsang.co.uk/mysql-workbench-error-code-7/


ขออภัยหากทำพลาด - คำตอบของ c4pricorn แตกต่างกันอย่างไร
ruffin

5

บน Linux Ubuntu / Mint:

ไฟล์กำหนดค่าอยู่ที่: /usr/lib/mysql-workbench/modules/wb_admin_export_options.py

ตามที่ c4pricorn อธิบายไว้เพียงแสดงความคิดเห็นในบรรทัด "delay-insert": ["เขียนข้อความ INSERT DELAYED แทนที่จะเป็น ...

และเริ่มการทำงานของโต๊ะทำงานใหม่


1

เม็ดมีดที่ล่าช้าซึ่งเลิกใช้ใน 5.6 และถูกแปลงเป็นเม็ดมีดปกติใน 5.7 (ดูhttp://dev.mysql.com/doc/refman/5.7/en/insert-delayed.html ด้วย ) ฉันสงสัยว่าเหตุใด mysqldump จึงรายงานข้อผิดพลาดนี้ ไม่ว่าจะต้องปรับ MySQL Workbench เพื่อไม่delayed-insertให้มีการทิ้ง คุณสามารถส่งรายงานข้อบกพร่องที่http://bugs.mysql.comเพื่อนำสิ่งนี้ไปใช้ใน Agenta สำหรับ MySQL Workbench ได้หรือไม่


1
แต่พวกเขาปิดมันแบบคงที่ ดูเหมือนพวกเขาไม่รู้ว่ากำลังทำอะไรอยู่ การใช้ mysqldump จากการติดตั้ง mysql server 5.5 ของคุณตามที่พวกเขาแนะนำจะบ่นเกี่ยวกับพารามิเตอร์ที่ไม่รองรับอื่น:mysqldump: unknown variable 'set-gtid-purged=OFF'
clst

ข้อบกพร่องนั้นเก่า (1.5 ปี) และมีบางอย่างที่แตกต่างไปจากเดิมโดยสิ้นเชิง (ซึ่งได้รับการแก้ไขแล้ว) ปัญหาที่ถามเกี่ยวกับที่นี่เกี่ยวข้องกับเซิร์ฟเวอร์ MySQL ใหม่ (5.7.x) ปัญหานี้ได้รับการแก้ไขแล้วใน MySQL Workbench 6.3.6
Mike Lischke

แปลกที่ฉันมีข้อผิดพลาดเดียวกันกับ MySQL CE 5.5.46 และ Workbench 6.3.5 เมื่อวานนี้ การอัปเกรดเป็น 5.5.47 และ 6.3.6 ดูเหมือนจะได้รับการแก้ไขแล้ว ตัวเลือกบรรทัดคำสั่งแทรกล่าช้าจะถูกเพิ่มเมื่อเปิดใช้งานเท่านั้น และ mysqldump จากการติดตั้งเซิร์ฟเวอร์จะถูกใช้โดยค่าเริ่มต้น เมื่อใช้ mysqldump ในตัวตัวเลือกจะมองไม่เห็น เย้ ๆ ดีกว่าเดิม! ขอบคุณสำหรับคำแนะนำ
clst

1

ใน CentOS 7

เปิดไฟล์ /usr/lib64/mysql-workbench/modules/wb_admin_export_options.py ค้นหาบรรทัด "delay-insert": ["เขียนคำสั่ง INSERT DELAYED แทนที่จะ ... แทรก # ที่จุดเริ่มต้นของบรรทัดนี้เพื่อแสดงความคิดเห็นบันทึกไฟล์และ รีสตาร์ท Workbench


1

ตามที่ไฮไลต์ไว้ในโพสต์ก่อนหน้านี้การใส่ # ที่บรรทัดการแทรกล่าช้าใน wb_admin_export_options.py จะช่วยแก้ปัญหาได้สิ่งที่ฉันต้องการเพิ่มคือเมื่อฉันพยายามแก้ไขใน notepad และ Pythonwin ฉันพบปัญหาสิทธิ์ของผู้ดูแลระบบ พวกเขาไม่ให้ฉันบันทึกไฟล์หลังจากแก้ไขในที่สุดฉันก็แก้ไขมันได้ด้วยการแก้ไขและบันทึกใน notepad ++ หนึ่งสามารถดาวน์โหลดได้จากที่นี่https://notepad-plus-plus.org/


0

การถอดสายสอดล่าช้าเข้า wb_admin_export_options.pyช่วยแก้ปัญหาได้ คุณต้องได้รับสิทธิ์ของผู้ดูแลระบบเพื่อแก้ไขไฟล์

อย่างไรก็ตามโปรดพิจารณาว่าฐานข้อมูล MySQL ของคุณอาจไม่ได้รับการอัปเกรดอย่างถูกต้องมาก่อน


0

โปรดใช้ความระมัดระวังในการแก้ไข: บนแผ่นจดบันทึก Win7 64 ไม่ทำงานกับการแก้ไขนี้ Notepad จะนำเสนอบรรทัดเดียวใช้โปรแกรมแก้ไขกับ crlf


0

ฉันพบข้อผิดพลาดนี้จนกว่าฉันจะอัปเกรดเป็นเวอร์ชันล่าสุด ปัจจุบัน 8.0.15.0 ที่แก้ไขบน Mac ของฉัน

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