Usuarios en una bbdd MySQL

Tengo una base de datos en la que quiero crear dos usuarios: uno que pueda consultar, insertar, modificar y borrar y el otro que pueda únicamente consultar. Voy a trabajar contra la base de datos con ASP.

1 respuesta

Respuesta
1
Bueno si vas a utilizar ASP estoy seguro que usaras windows como servidor web, y por lo tanto usaras ODBC para la interfaz de la base de datos o lo harás desde el código, ahora bien, puedes usar una aplicación que se llama MYSQL control center, la puedes bajar desde www.mysql.com. Con esta aplicación que es super sencilla creas los usuarios y le das los permisos que quieras según las necesidades que tengas, luego en el asp si lo haces por ODBC creas dos DSN uno con un privilegio o otro con otro privilegio, y por medio de un if validas el Connection de ASP según el DSN y el usuario que lo este usando.
Pör ejemplo:
DSN name ="DB_T"
server= "mipc"
user= "root"
pass=""
DSN name ="DB_L"
server= "mipc"
user= "lectura"
pass=""
---- Asumamos que allí tenemos dos ODBC creados uno con permiso total y otro de lectura nada más, luego con el if haces esto
IF usuario = "Nelson" then
strDns = "DB_T"
set oConn=Server.CreateObject("ADODB.Connection")
oConn.Open strDNS
elseif usuario = "Juan" then
strDns = "DB_L"
set oConn=Server.CreateObject("ADODB.Connection")
oConn.Open strDNS
end if
Y listo, la otra forma es hacer el conect sin ODBC, es decir directo, y allí le colocas el usuario que quieres según los permisos,
De acuerdo. Pero mi problema viene de antes. Yo creo en la tabla user de mysql un usuario, con su nombre de usuario y su password, y cuando intento entrar en mysql con este usuario me pone algo así como 127.0.0.0@nombredeusuario:access denied, y no se porque es. A ver si me puedes ayudar. Gracias mil por tu tiempo.
Te comento que me parece extraño, acabo de hacer una prueba y funciona perfecto. Ahora bien, me parece extraño la dirección 127.0.0.0 en tal caso debería decir localhost o en su defecto 127.0.0.1 ahora bien, lo ideal es que crees el usuario con el nombre de la maquina o con el símbolo % que en su defecto hace que use la maquina donde se encuentra el manejador para la conexión, si usas localhosts, estas haciendo la comunicación no por medio de puertos sino de forma directa, ahora bien esa es posiblemente una de las causas al problema, la otra es que el usuario que creaste no tenga los permisos necesarios para accesar una base de datos especifica, normalmente si creas un usuario debe dejarte entrar al menos en el manejador aunque no tengas permisos para más nada, te aconsejo que hagas una prueba, entra con el usuario administrador normalmente root crea una base de datos sencilla y dale a ese usuario todos los permisos para esa base de datos, y luego intenta de entrar con mysql -u<USUARIO>%<PASSWORD> <NOMBREBASEDEDATOS>
Con eso verificas si el problema es de permisología con el usuario. Si lo hace perfecto pues verifica la permisología para con las otras tablas, ahora como te dije antes, si el nombre del equipo esta bien debería entrar...
A mi solo me muestra ese error cuando el usuario no tiene permisos para entrar a un determinado usuario.,
Cualquier cosa no dudes en preguntarme, seria bueno que indicaras bajo que OS usas MYSQL y cual es la configuración que tienes con el MYSQL

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas