Usar palabras reservadas en MySQL 8

 

Generalidades

Este artículo proporciona una descripción general del uso de palabras reservadas en MySQL 8, incluyendo los cambios introducidos en MySQL 8.4, la versión que actualmente ejecutan todos los servidores MySQL de DreamHost.

Usar palabras reservadas en MySQL 8

MySQL 8.4 incluye una lista de palabras reservadas (como GROUPS, EMPTY, RANK, y SYSTEM) introducidas en MySQL 8, así como cuatro nuevas palabras reservadas agragadas en MySQL 8.4: MANUAL, PARALLEL, QUALIFY, y TABLESAMPLE.

Estas palabras se pueden usar como nombres de tablas y columnas, pero requieren un tratamiento especial como identificadores y deben escaparse en las consultas de la base de datos. Revisa la siguiente página para obtener más información sobre cómo usar palabras reservadas en MySQL 8:

Errores importando una base de datos con mysqlimport

DreamHost ha implementado algunas herramientas nuevas en MySQL 8, que pueden provocar que se produzca un error al utilizar el programa de línea de comandos mysqlimport:

mysqlimport: Error: 1227 Access denied; you need (at least one of) the SUPER, SYSTEM_VARIABLES_ADMIN, or SESSION_VARIABLES_ADMIN privilege(s) for this operation

El comando mysqlimport que causa el error se puede ver así:

[server]$ /usr/bin/mysqlimport --host hostname --user user --password password --local --fields-terminated-by='|' database /path/to/file

También puedes utilizar un archivo de opciones (recomendado), que se vería así:

[server]$ /usr/bin/mysqlimport --defaults-extra-file=/path/to/file --local --fields-terminated-by='|' database /path/to/file

Corregir el error

Si se produce este error, usar cliente mysql en lugar de mysqlimport permitirá que esta función funcione. Aquí hay un ejemplo de los comandos anteriores.

Ten en cuenta que es necesario especificar el nombre de la tabla, ya que anteriormente, mysqlimport lo determinaba a partir del nombre del archivo.

[server]$ echo "LOAD DATA LOCAL INFILE '/PATH/TO/FILE' into table tablename fields-terminated-by='|' mysql --host hostname --user username --password password database
[server]$ echo "LOAD DATA LOCAL INFILE '/PATH/TO/FILE' into table tablename fields-terminated-by='|' mysql --defaults-extra-file=/path/to/file

Modificaciones personalizadas de DreamHost para usuarios de WordPress

DreamHost ha realizado modificaciones en su configuración de MySQL 8 para brindar un soporte más amplio para la mayoría de los sitios y software. A continuación, aparecen las configuraciones predeterminadas de MySQL 8 que se han modificado en la configuración de DreamHost:

Configuración Predeterminado DreamHost
Plugin de encriptación caching_sha2_password mysql_native_password
Conjunto de caracteres utf8mb4 utf8

Ver también

¿Este artículo ha respondido sus preguntas?

¿Aún no encuentra lo que busca?