[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [OT] Permisos de usuarios en MySQL.



El 06-02-2014 21:43, Juan Manuel Acuña Barrera escribió:

El 06/02/2014, a las 18:12, Ramses <ramses.sevilla@gmail.com> escribió:

El 07/02/2014, a las 00:43, Fredy Guio <fredy.guio@gmail.com> escribió:



---------- Forwarded message ----------
From: Ramses <ramses.sevilla@gmail.com>
Date: 2014-02-06 17:53 GMT-05:00
Subject: [OT] Permisos de usuarios en MySQL.
To: debian-user-spanish@lists.debian.org


Hola a todos,

Tengo una aplicación que se conecta a MySQL con un usuario "pepe" con password "pepepass" con el que creo, modifico, borro y muestro registros de/en una base de datos.

El usuario lo cree en MySQL con los permisos ALL para localhost y esa base de datos en particular.

Bien, el tema es que si intento generar un fichero .CSV exportando una selección de registros con un comando del tipo:

mysql -u pepe --password=pepepass mibasededatos -e "SELECT * FROM tabla where ...." -B > fichero_salida.csv


Me da un error diciendo que no tiene permisos.

Verifica si el usuario pepe puede ejecutar el mismo comando dentro de la consola mysql. si lo puedes ejecutar, verfica que el usuario pepe tenga permisos de escritura donde estas guardando el archivo de salida.

Fredy, el usuario no lo tengo creado en el systema, sólo lo creé en MySQL. ¿Es ahí donde está la historia?. ¿Tendría que crearlo también en el sistema?.

No necesariamente necesitas un usuario del sistema.

Ampliando un poco lo que dice Fredy:

1.- Verifica que el usuario pepe pueda ejecutar el mismo comando dentro de la consola de mysql ( mysql -u pepe mibasededatos ).

2.- Verifica que el usuario _con el que estás logeado_ tenga permisos de escritura en la carpeta donde estás. Nota, el usuario con que estás logeado parece que no es pepe, ok?

3.- Solución temporal (ojo al final, agregué /tmp/) : mysql -u pepe --password=pepepass mibasededatos -e "SELECT * FROM tabla where ...." -B >  /tmp/fichero_salida.csv

Saludos!




Saludos y gracias,

Ramses

Si puedes adjunta el error que genera el comando.

Si ejecuto el mismo comando pero con el usuario "root" y la password "rootpass", me genera el fichero sin problemas.

mysql -u root --password=rootpass mibasededatos -e "SELECT * FROM tabla where ...." -B > fichero_salida.csv

Si ejecuto el comando:

mysql -u pepe -ppepepass

Entro perfectamente en MySQL y puedo crear, borrar, modificar y listar registros de esa base de datos.

¿Sabe alguien si necesito algún permiso especial para ejecutar el mismo comando con un usuario distinto a root?


Saludos y gracias,

Ramses

--
To UNSUBSCRIBE, email to debian-user-spanish-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
Archive: [🔎] ECAD97C0-83AA-487C-915E-5F5DF7B4495D@gmail.com">http://lists.debian.org/[🔎] ECAD97C0-83AA-487C-915E-5F5DF7B4495D@gmail.com




Te fijastes si el usuario pepe tiene los permisos de File_priv en la tabla de privilegios globales, quisas por eso no puedes generar el cvs, ademas debes agregar un into outfile para la salida del cvs, eso es lo que se recomienda en la documentación de MySQL.

Saludos.


Reply to: