Cada vez que intento hacer un mysqldump
me sale el siguiente error:
$> mysqldump --single-transaction --host host -u user -p db > db.sql
mysqldump: Couldn't execute 'SELECT COLUMN_NAME, JSON_EXTRACT(HISTOGRAM,
'$."number-of-buckets-specified"') FROM
information_schema.COLUMN_STATISTICS WHERE SCHEMA_NAME = 'db' AND
TABLE_NAME = 'Absence';':
Unknown table 'COLUMN_STATISTICS' in information_schema (1109)
El resultado es un volcado que no está completo. Lo extraño es que el mismo comando, ejecutado desde otro host, funciona sin arrojar ningún error. ¿Alguien experimentó el mismo problema?
Estoy usando mysql-client 8.0
e intento acceder a un 5-7
servidor mysql , ¿tal vez esa es la razón?
--column-statistics=0
argumento a la lista de argumentos generados en el cuadro en la parte inferior de la ventana emergente.Para aquellos que usan MySQL Workbench, hay un botón "Opciones avanzadas" en la pantalla Exportación de datos. La opción "Usar estadísticas de columna" puede deshabilitarse configurando a 0.
No lo he confirmado, pero se ha sugerido que la siguiente información también es cierta: en la versión 8.0.14 falta. En la Versión 8.0.16 está haciendo esto por defecto.
fuente
--column-statistics=0
el comando de exportación.Pasé todo el día buscando una solución, y chamusqué aquí solo para compartir la mía.
Sí, probablemente este error se deba a la diferencia de versiones.
Simplemente descargue el archivo ZIP MySQL 5.7 desde aquí: https://dev.mysql.com/downloads/mysql/ y descomprímalo, luego use el archivo mysqldump.exe desde allí.
Si está utilizando MySQL Workbench, deberá establecer una ruta a la herramienta mysqldump que descargó yendo a Editar -> Preferencias -> Administración (desde el panel izquierdo).
Espero que esto ayude.
fuente
C:\Program Files\MySQL\MySQL Server 5.7\bin\mysqldump.exe
Para facilitar esta respuesta , puede cambiar el nombre
mysqldump
, crear un script de shell en su lugar y llamar a los renombradosmysqldump
con el--column-statistics=0
argumento. P.ej:Renombrar mysqldump:
Guarde el siguiente script de shell en su lugar:
fuente
El trabajo más fácil alrededor
Cuando use Mysql Workbench 8.0
¡La mejor de las suertes!
fuente
Para macOS necesita la versión anterior (8.0.13) para ver las "estadísticas de columna", porque pruebo las versiones 8.0.14 y 8.0.15 y ambas no muestran las "estadísticas de columna".
Entonces, para ajustar las "estadísticas de columna" use la versión 8.0.13 https://downloads.mysql.com/archives/get/file/mysql-workbench-community-8.0.13-macos-x86_64.dmg
fuente
En mi situación, estoy usando mac-OS. Por cierto, había
[mysqldump] column-statistics=0
campos en elmy.cnf
archivo que se coloca en el/usr/local/etc
directorio. Eliminar ese campo solucionó el problema. (no: la versión mysql es 5.7 e instalada a través de homebrew).fuente
También tuve el mismo problema, ocurre cuando fusiono varias tablas de datos con el esquema existente desde otro esquema y exporto datos combinados a un archivo de script independiente. Intenté cambiar la estadística de columna = 0, pero el resultado fue el siguiente,
Entonces no había ayudado. Analizo el registro de MySQL encontré que
se queja del tamaño de innodb_buffer_pool_size. Lo hice a 24MB. Entonces funciona.
fuente
Yo uso XAMPP y MySQL Workbench advierte sobre una discrepancia de versión. Configuré MySQL Workbench para que apunte a mysql.exe y mysqldump.exe de XAMPP.
Vaya a Editar -> Preferencias -> Administración y configure la ruta para cada uno.
Esto funciona al menos para la versión 8.0.14. Entonces, para otros, es posible que desee evitar el uso de la versión incluida de mysql y mysqldump.
fuente