sql >> Base de Datos >  >> Database Tools >> phpMyAdmin

Crear vista sin SUPER privilegios en phpMyAdmin

De la documentación:

Si especifica la cláusula DEFINER, no puede establecer el valor para ningún usuario que no sea el suyo a menos que tenga el privilegio SUPER. Estas reglas determinan los valores de usuario DEFINER legales:

  • *Si no tiene el privilegio SUPER, el único valor de usuario legal es su propia cuenta, ya sea especificada literalmente o usando CURRENT_USER. No puede establecer el definidor en alguna otra cuenta.*
  • Si tiene el privilegio SUPER, puede especificar cualquier nombre de cuenta sintácticamente legal. Si la cuenta no existe realmente, se genera una advertencia.

Verifique su cuenta de MySQL, no es byname @localhost .

Soluciones:

  • Cree una nueva vista con la cláusula DEFINER usando la cuenta que otorgó el privilegio SUPER.
  • No use la cláusula DEFINER en CREATE VIEW, en este caso MySQL creará la vista DEFINER =CURRENT_USER.