Я пытаюсь экспортировать свою базу данных из MySQL Workbench, но в процессе экспорта получаю следующее:
Running: mysqldump.exe --defaults-file = "c:\users\user\appdata\local\temp\tmp2h91wa.cnf" --user=root --host=localhost --protocol=tcp --port=3306 --default-character-set=utf8 --skip-triggers "mydb" mysqldump: Couldn't execute 'SELECT COLUMN_NAME,
JSON_EXTRACT(HISTOGRAM, '$."number-of-buckets-specified"')
FROM information_schema.COLUMN_STATISTICS WHERE SCHEMA_NAME = 'mydb' AND TABLE_NAME = 'courses';': Unknown table 'column_statistics' in information_schema (1109)Operation failed with exitcode 2 20:55:09 Export of C:\Users\user\Documents\dumps\mydb.sql has finished with 1 errors
Похоже исправлено в версии - 8.0.17
Кажется, эта ошибка исправлена в Workbench 8.0.20, по крайней мере, обновление Workbench в Ubuntu 20.04 устранило ошибку для меня.






Это связано с флагом, который по умолчанию включен в mysqldump 8.
Это можно отключить, добавив --column-statistics=0.
Синтаксис:
mysqldump --column-statistics=0 --host=<server> --user <user> --password <securepass>
Для получения дополнительной информации перейдите на эта ссылка.
Чтобы отключить статистику столбца по умолчанию, вы можете добавить:
[mysqldump]
column-statistics=0
в файл конфигурации MySQL, например /etc/my.cnf или ~/.my.cnf.
Спасатель жизни! Спасибо :)
Это лучшее решение, если вы используете mysqldump для резервного копирования базы данных и выскакивает ошибка.
В MySql Workbench версии 8.0.13 выполните следующие действия:
Теперь должно работать. К сожалению, вам придется делать это каждый раз при запуске MySql Workbench.
Это должен быть принятый ответ. У меня это сработало. Он также упоминается в Трекер ошибок MySQL.
В моем Workbench нет этой опции, возможно, потому, что рабочая база данных находится в версии 5.x, а я использую 8.x. Есть ли способ активировать что-то вроде режима совместимости между mysqldump.exe 8.x и MySQL Server 5.x?
Похоже, в последних версиях такой возможности нет. Проблема с отслеживанием ошибок, о которой упоминает ThatGuyRob, говорит о том, что они добавили всплывающее предупреждение с инструкциями о том, как это исправить, что описано в ответе Артема.
Как объясняется в этот другой отчет об ошибке MySQL, эта проблема для WorkBench 8.0.14 и 8.0.15 будет исправлена в версии 8.0.16.
Как описано в @Veve, это не исправленная проблема. В Mac моим решением было понизить версию WorkBench до версии v.6.3.10, и она работает нормально, мне нужна эта помощь.
Это еще один обходной путь, если вы не видите пункт меню «Другое / статистика столбца»: stackoverflow.com/a/55121256/914352
В качестве еще одного обходного пути для новых версий Workbench вы можете легко применить этот патч serverfault.com/a/1015459
Тоже столкнулся с этой проблемой. Решили так: В меню Workbench перейдите к:
Изменить - Настройки - Администрирование
В поле «Путь к инструменту mysqldump» прописываем путь к mysqldump.exe, в моем случае «C: \ Program Files \ MySQL \ Сервер MySQL 5.7 \ bin \ mysqldump.exe» нажимаем ОК.
После этого ошибка больше не появлялась.
Теперь это правильный ответ, основанный на том факте, что он соответствует инструкциям, которые были добавлены во всплывающее предупреждение, которое вы получаете при попытке выполнить экспорт, которое было добавлено в MySQL Workbench 8.0.13.
Для меня это было в 'C: \ Program Files \ MySQL \ MySQL Workbench 8.0 CE \ mysqldump.exe'. Однако это не устранило мою ошибку.
это исправило ошибку для меня, путь - это место, где вы установили "mysql / bin / mysqldump.exe"
отличное решение
У меня тоже была такая же проблема. Я могу решить эту проблему, отключив статистику столбцов в расширенных параметрах экспорта данных MySQL Workbench.
1: Нажмите на дополнительные параметры:

2: В другом разделе для статистики столбца удалите ИСТИНА и установите для него значение 0, чтобы отключить его.

Теперь верните и экспортируйте данные. Спасибо
У меня была такая же проблема, и я решил ее так:
отредактируйте настройки верстака: Правка -> Настройки -> Администрирование
в свойстве "Путь к mysqldump Tool" укажите путь к вашему mysqldump.exe Обычно он находится в "C: \ Program Files \ MySQL \ MySQL Server 5.7 \ bin \ mysqldump.exe".
Ошибка по-прежнему в Workbench 8.0.16.
Исправить:
Вы можете редактировать wb_admin_export.py в модулях в программном каталоге рабочей среды. Найдите «skip_column_statistics = True» (вы найдете условное выражение, не беспокойтесь), прокомментируйте эту строку и добавьте строку «skip_column_statistics = True» (без условного).
Обязательный параметр теперь будет всегда добавляться.
У меня это сработало в версии 8.0.22, но очень удивительно, что это сработало только тогда, когда я отредактировал саму существующую строку. Когда я сделал дубликат и отредактировал дубликат (с комментариями к исходному), Workbench ничего не отображал в навигаторе (левая боковая панель). Странное поведение, ничего не помогло, кроме редактирования исходной строки. Я подозреваю, что Workbench по какой-то причине анализирует свои собственные файлы .py и задыхается, когда неожиданным образом находит свои переменные, даже если это в комментарии.
Перейдите в C:\Program Files\MySQL\MySQL Workbench 8.0 CE\modules, откройте этот файл wb_admin_export.py и раскомментируйте «--column-statistics=0», затем перезапустите рабочую среду.
не вижу ни одного комментария --column-statistics=0 к этому файлу
Я нашел это состояние в wb_admin_export.py вместо прокомментированного --column-statistics=0. вы можете удалить условие else False или изменить его на else True.
skip_column_statistics = True if get_mysqldump_version() > Version(8,
0, 2) and self.owner.ctrl_be.target_version < Version(8, 0, 0) else
True
Подводя итог тому, что я сделал из полезных комментариев @JustinLaureno и @ Mohd.Shaizad, протестированных на MySQL Workbench 8.0.18:
C:\Program Files\MySQL\MySQL Workbench 8.0 CE\moduleswb_admin_export.py (для этого вам нужны права администратора)skip_column_statistics = True if get_mysqldump_version() > Version(8, 0, 2) and self.owner.ctrl_be.target_version < Version(8, 0, 0) else False
skip_column_statistics = True
skip_column_statistics = True # This won't work
у меня нет skip_column_statistics im с использованием MySql workbench 8.0 CE
Отлично, как бы мы это сделали на Mac? Где мы можем найти этот файл ... кто-нибудь знает?
исправлена моя проблема при работе в Workbench версии 8.0.23 с Windows.
в версии 8 я изменил "wb_admin_export.py" и перезапустил рабочую среду. работает для меня
def start(self):
.
.
.
title = "Dumping " + schema
title += " (%s)" % table
# description, object_count, pipe_factory, extra_args, objects
args = []
args.append('--column-statistics=0')
class ViewsRoutinesEventsDumpData(DumpThread.TaskData):
def __init__(self, schema, views, args, make_pipe):
title = "Dumping " + schema + " views and/or routines and/or events"
if not views:
extra_args = ["--no-create-info"]
else:
extra_args = []
DumpThread.TaskData.__init__(self,title, len(views), ["--skip-triggers", " --no-data" ," --no-create-db", "--column-statistics=0"] + extra_args + args, [schema] + views, None, make_pipe)```
это для MacOS wb_admin_export.py найдено @ /Applications/MySQLWorkbench.app/Contents/Resources/plugins
Вы можете использовать собственный MySQL Workbench «Мастер миграции» для переноса данных без ошибок. Его можно найти в меню База данных -> Мастер миграции Он может передавать данные "онлайн", но я не нашел возможности создать с его помощью файл дампа. Это довольно хорошее решение для миграций
В Mysql-workbench версии 8.0.14 у вас нет возможности отключить столбец-статистика.
Но у вас есть возможность сделать это с помощью включение удаления-мастер-логов:Mysql-workbench версии 8.0.22
Запуск: mysqldump --defaults-file = "/ tmp / tmp5c5ww33n / extraparams.cnf" --host = xxxx --port = 3307 --default-character-set = utf8 --user = admin --protocol = tcp - delete-master-logs = TRUE --skip-triggers "fedena" mysqldump: Не удалось выполнить 'SELECT COLUMN_NAME, .................. Операция завершилась неудачно с кодом выхода 2 Экспорт b '/ home / sanaulla / dumps / Dump20210331.sql' завершился с 1 ошибкой
Я столкнулся с той же проблемой с последней версией MySQL workbench, я решил ее с помощью командной строки mysqldump
C:\Program Files\MySQL\MySQL Workbench 8.0 CE\mysqldump --column-statistics=0 --user=USERNAME --host=REMOTE_HOST --protocol=tcp --port=3306 --default-character-set=utf8 DATABASE_NAME > c:\temp\dump.sql --password
Замените USERNAME, REMOTE_HOST, DATABASE_NAME своими именами.
На MACOS просто перейдите на версию 8.0.13, это единственное, что помогло нам.
Следующая ссылка может помочь
https://downloads.mysql.com/archives/workbench/
Если вы используете SSH-ключ для доступа к удаленной базе данных, сделайте следующее:
Шаг 1
brew install putty
Шаг 2
puttygen id_rsa -O private-openssh -o id_rsa.pem
Шаг 3 - в рабочей среде MySQL
SSH Key File: /Users/local/.ssh/id_rsa.pem
Надеюсь, это поможет кому-то, потому что потратил 3 часа нашего времени зря :)
Похоже, это проблема с новым MySQL Workbench (8.x), пытающимся выполнить экспорт из более ранних версий баз данных MySQL (5.x). У меня такая же проблема, и я не вижу решения в инструменте MySQL Workbench. Кажется, нет возможности установить column_statistics в 0 в графическом интерфейсе. bugs.mysql.com/bug.php?id=89825.