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

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

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



---------- Forwarded message ----------
From: Ramses <ramses.sevi...@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-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/ecad97c0-83aa-487c-915e-5f5df7b44...@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.


--
To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/52f4387e.2020...@acshell.net

Responder a