Magento 2 – Importación de la base de datos cancelada sin SUPER derechos

Al importar una exportación de base de datos desde otro servidor, aparece el error "ERROR 1227 (42000) en línea 15126: Acceso denegado; necesitas (al menos uno de) el privilegio SUPER(s) para esta operación "- miraste en el basurero en este punto, fue encontrado allí

/*!50001 CREAR ALGORITMO = INDEFINIDO */
/*!50013 DEFINER = `MEINDBUSER` @`% `SQL SECURITY INVOKER */

El problema aquí fue la parte "DEFINER =` MEINDBUSER` @ `%` " (MEINDBUSER, por supuesto, solo debe verse como un ejemplo). El usuario de la base de datos utilizado para la importación y en este caso también localhost tuvo que almacenarse aquí. Se veía así

/*!50001 CREAR ALGORITMO = INDEFINIDO */
/*!50013 DEFINER = MEINDBUSERNEU @ localhost INVOCADOR DE SEGURIDAD SQL */

También era importante eliminar las comillas individuales, que solo MEINDBUSERNEU @ localhost quedó allí. Entonces la importación funcionó sin ningún problema.

Actualización de 11.05.2020

Ahora este problema surgió nuevamente, pero esta vez no es tan fácil. La parte desencadenante del error al importar la base de datos fue esta vez:

/*!50003 CREAR*/ /*!50017 DEFINER = `[MEINDBUSER]`@` localhost` * / /*!50003 TRIGGER trg_catalog_category_entity_after_insert DESPUÉS DE INSERTAR EN catalog_category_entity PARA CADA FILA

El Definidor ahora era muy común, y no solo una vez como en la parte anterior- llamado.

Entonces había dos opciones:

  1. Prevenir, que al retroceder / Volcar la base de datos de estos usuarios de la base de datos se escribe en el archivo de copia de seguridad O
  2. Posteriormente elimine al usuario del archivo y luego impórtelo.

Hay opciones para ambos. Yo mismo creé el archivo de respaldo usando el comando SSH, Puedo ajustar un poco el comando y lograrlo, que ningún usuario concreto pero “Usuario actual” se utiliza. El comando sería este:

mysqldump -u "[Usuario]" --opt - transacción única - contraseña ="[CONSIGNA]" -h "[Host z.B. localhost]" "[Nombre de la base de datos]" | sed -E 's / DEFINER = `[^ `]+`@`[^ `]+`/ DEFINER = CURRENT_USER / g ' | gzip -9 > DATEINAME.sql.gz;

Esto crea una copia de seguridad de la base de datos con el nombre DATEINAME.sql.gz (así que está lleno de inmediato). Durante la creación del archivo, el comando SED convierte los datos del usuario definidos en la base de datos contra los generales. “USUARIO ACTUAL”-Información intercambiada. Entonces el archivo puede importarse más tarde. (Para descomprimir el archivo en el servidor de destino nuevamente “gunzip DATEINAME.sql.zip” DAR. Probablemente no tenga que mencionar eso, que el nombre se puede asignar libremente. Del mismo modo, los soportes de espacio dentro de los corchetes INCL. los corchetes se reemplazan por sus propios datos.)

Pero tengo que revisar el archivo SQL terminado, para importarlos, Puedo hacer esto a través de SSH con el siguiente comando y obtener el mismo resultado que el anterior

sed -E 's / DEFINER = `[^ `]+`@`[^ `]+`/ DEFINER = CURRENT_USER / g 'DATEINAME.sql > Nombre de archivo new.sql

Por razones de seguridad, el archivo no se sobrescribe simplemente, se crea un nuevo archivo, que tiene el nombre FILENAMEnew.sql.

Actualización de 04.05.2021

Hoy volvimos a tener este problema al configurar una tienda de prueba. El error ocurrió al importar la base de datos de liveshop a la nueva base de datos

ERROR 1227 (42000) at line 717: Access denied; you need (at least one of) the SU          PER privilege(s) for this operation

Luego desenterramos este artículo nuevamente y ahora tenemos una posibilidad, expandir esto un poco con una nueva forma de resolver este problema. El siguiente comando elimina todas las referencias al usuario y, por lo tanto, es posible una importación sin ningún problema.:

 sed -i.bak -e "s/\/\*[^*]*DEFINER=[^*]*\*\///" meindumpfile.sql

Publicado por Covos

DESDE 2009 He estado trabajando intensamente con Magento. Empecé con la creación y el funcionamiento de las tiendas B2C. Esto se extendió a través de mi trabajo en el sector de la logística. Esto dio lugar a sistemas especializados primera B2E. Hoy trabajo del día a día con una emocionante B2C, B2B- y proyectos B2E e informes en este blog sobre los desafíos y dan consejos de expertos.

Deja un comentario

Su dirección de correo electrónico no será publicado. Los campos obligatorios están marcados *