it-swarm.com.ru

Как навсегда отключить статистику столбцов в MySQL 8?

Поскольку MySQL 8 флаг column-statistics включен по умолчанию.

Поэтому, если вы попытаетесь сбросить некоторые таблицы с помощью MySQL Workbench 8.0.12, вы получите следующее сообщение об ошибке:

14:50:22 Сброс дБ (имя_таблицы) Запуск: mysqldump.exe --defaults-file = "c:\users\username\appdata\local\temp\tmpvu0mxn.cnf" --user = db_user --Host = db_Host --protocol = tcp --port = 1337 - -default-character-set = utf8 --skip-триггеры "db_name" "table_name" mysqldump: не удалось выполнить 'SELECT COLUMN_NAME, JSON_EXTRACT (HISTOGRAM,' $. "указано число ведер" ") FROM information_schema.COLUMN_STATISTICS WHERE SCHEMA_NAME = 'db_name' И TABLE_NAME = 'table_name'; COLUMN_STATISTICS 'в информационной схеме (1109)

Операция не выполнена с кодом выхода 2 14:50:24 Экспорт C:\path\to\my\dump завершен с 1 ошибкой

Есть ли способ в MySQL (Workbench) 8 навсегда отключить column-statistics?


Обходной путь 1

Раздражающий обходной путь делает это вручную через:

mysqldump --column-statistics=0 --Host=...

Обходной путь 2

  1. переименовать mysqldump
  2. создать скрипт Shell (или пакет в Windows) 
  3. вызовите переименованный mysqldump с аргументом --column-statistics=0 в этом скрипте
  4. сохранить его как mysqldump

Обходной путь 3

  1. скачать MySQL 5.7
  2. извлечь mysqldump
  3. используйте этот mysqldump

Например, в MySQL Workbench: Редактировать/Настройки .../Администрирование/Путь к mysqldump Tool


Заранее спасибо!

14
Flo Bayer

Легкая работа вокруг

При использовании Mysql Workbench 8.0

  • Откройте вкладку «Экспорт данных»
  • Нажмите Дополнительные параметры  enter image description here
  • Под заголовком Другое установите статистику столбца в 0  enter image description here
  • Экспорт снова  enter image description here

Удачи!

9
Troyd Destin

Идея такова: каждая версия сервера имеет выделенную версию mysqldump. Не идеально и, конечно, не очень обратно совместимо, но это ситуация. MySQL Workbench может включать только один двоичный файл mysqldump, поэтому используется последний из них. Подход к загрузке MySQL 5.7 Zip и использованию mysqldump - хороший обходной путь без множества побочных эффектов. Вам нужно только быть осторожным, с какого сервера вы создаете дамп, с какой версией дампа.

Если вы хотите, чтобы MySQL Workbench автоматически применял этот параметр статистики столбцов, отправьте отчет об ошибке по адресу https://bugs.mysql.com .

Обновление

Тем временем для этой проблемы был создан отчет об ошибке: https://bugs.mysql.com/bug.php?id=91640

2
Mike Lischke

Может быть другой обходной путь, если вы работаете в операционной системе, которая поддерживает mysqldump (то есть Linux). Задайте путь к двоичному файлу mysqldump в настройках и включите аргумент --column-statistics = 0 в путь: Редактировать >> Предпочтения >> Администрирование >> путь к инструменту MysqlDump

1
AppSol