tables pma for column_info column all mysql select command denied

pma - Error de MySQL:#1142-comando SELECT denegado al usuario



select command denied to user for column (8)

Así que el problema que me encontré fue esto ... la aplicación que solía otorgar los permisos convirtió Schema.TableName en una única declaración de base de datos en la tabla incorrecta, por lo que la concesión fue incorrecta, pero parecía correcta cuando hicimos una SHOW GRANTS FOR UserName si no estaba prestando mucha atención a GRANT SELECT vs GRANT TABLE SELECT. Corregir manualmente el Grant Select en la Tabla w / escape apropiado de Schema . Table resolvió mi problema.

Puede no estar relacionado, pero me puedo imaginar que si un cliente lo hace mal, otro podría hacerlo también.

Espero que sea útil.

Tengo problemas con una determinada consulta en uno de mis servidores. En todos los demás lugares que he probado, funciona completamente bien, pero en el servidor que quiero usar no funciona.

Se trata del siguiente SQL:

SELECT facturen.id AS fid, projecten.id AS pid, titel, facturen.totaal_bedrag AS totaal, betaald, datum FROM facturen, projecten WHERE facturen.project_id = projecten.id AND projecten.eigenaar = ''1'' ORDER BY datum DESC

Este es el código de error que obtengo de él:

SELECT command denied to user ''marco''@''localhost'' for table ''projecten''

Las tablas: facturen:

CREATE TABLE IF NOT EXISTS `facturen` ( `id` int(11) NOT NULL auto_increment, `project_id` int(11) NOT NULL, `datum` int(11) NOT NULL, `lever_datum` int(11) NOT NULL, `totaal_bedrag` decimal(9,2) NOT NULL, `btw` decimal(9,2) NOT NULL, `bedrijf` varchar(40) NOT NULL, `contactpersoon` varchar(60) NOT NULL, `adres` varchar(60) NOT NULL, `postcode` varchar(7) NOT NULL, `plaats` varchar(30) NOT NULL, `betaald` int(11) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=201200006 ;

projecten:

CREATE TABLE IF NOT EXISTS `projecten` ( `id` int(11) NOT NULL auto_increment, `titel` varchar(80) NOT NULL, `eigenaar` int(11) NOT NULL, `creatie_datum` int(11) NOT NULL, `eind_datum` int(11) NOT NULL, `totaal_bedrag` decimal(9,2) NOT NULL, `btw` decimal(9,2) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=201200004 ;

La parte extraña es que cualquier otra consulta tanto en la tabla ''projecten'' como en la tabla ''facturen'' funciona completamente bien, también esta consulta funciona bien en otros dos servidores míos.



En el buscador de consultas MySQL, vaya a la pestaña Herramientas> Administrador de MySQL> Administración de usuarios y luego dele los privilegios al usuario.


Este es el problema de privilegios en los usuarios de su base de datos. primero compruebe y conceda permiso al usuario ''marco'' en localhost


Me enfrenté a la misma situación, pero es curioso que la razón del error se debió al uso de la base de datos incorrecta o el nombre del esquema.

Es cierto que múltiples problemas pueden llevar al error que ha mencionado.


También tuve este problema y, para mí, el problema fue que me mudé a un nuevo servidor y la base de datos a la que intentaba conectar con mi código PHP cambió de "my_Database" a "my_database".


se trata de la privallage del usuario en el mysql, por lo que debe establecer las subvenciones más grandes con sus usuarios.

hacer esto !

En la Terminal, ponga el código mysql> show grants;

a continuación, cambie el siguiente código de esta manera:

GRANT ALL PRIVILEGES ON *.* TO ''root''@''localhost'' IDENTIFIED BY PASSWORD ''*3F9DF5A32114E05C12C50A83EAE02991016C917B'' WITH GRANT OPTION;

Entonces se hará.


Este error también se produce cuando se produce un error de sintaxis debido al aliasing tablename.

Por ejemplo, cuando se ejecuta debajo de la consulta,

seleccione * de a.table1, b.table2 donde a.table1 = b.table2

a continuación se produce el error:

Error de MySQL: # 1142. Respuesta de la base de datos. SELECCIONE el comando denegado al usuario "username @ ip" para la tabla "table1"

Solución : la sintaxis de alias tablename se debe usar correctamente, solución de sintaxis para instancia anterior> select * from table1 a, table2 b donde a.table1 = b.table2