| Knowledge Base | ||||||||||||||||||
| Inicio > Databases > MySQL | ||||||||||||||||||
|
Consideraciones sobre la base de datos MySQL
|
||||||||||||||||||
|
Indice de contenido
La base de datos de sistema mysql y usuario root
Herramientas de conexión y administración
Usuario nulo
Creación de usuarios.
Conclusiones
Este documento describe algunas de las características del motor de base de datos MySQL.
Existe una base de datos que controla los permisos y accesos llamada mysql: # mysql -u root mysql mysql> SHOW TABLES; +-----------------+ | Tables_in_mysql | +-----------------+ | columns_priv | | db | | func | | help_category | | help_keyword | | help_relation | | help_topic | | host | | proc | | tables_priv | | user | +-----------------+ Además existe un usuario root con el que se configuran los usuarios del sistema.
En MySQL disponemos de varios programas para poder conectar y administrar la base de datos. Estos programas se ubican en el directorio bin, citamos los más significativos.
MySQL es una base de datos que contempla la posibilidad del usuario nulo. Esto quiere decir que cualquier base de datos creada puede ser vista por cualquier usuario. Esto es una opción, claro está, y se puede forzar a que los usuarios accedan con password, lo cual evita este modo poco seguro. Además se pueden otorgar privilegios a los usuarios de modo que podemos definir distintos niveles de acceso (SELECT, INSERT, DELETE, UPDATE, CREATE, DROP, RELOAD ...)
Para crear usuarios en MySQL se debe ejecutar el comando GRANT. Con este se asignan además los derechos y con el comnado REVOKE se revocan sobre la base de datos deseada. # mysql -u root DATABASE_NAME mysql> GRANT ALL PRIVILEGES ON db_name.* TO user_name WITH GRANT OPTION;Con esta instrucción se ha creado un usuario USER con permisos totales sobre la base de datos DATABASE_NAME. Si fuese preciso indicar un password para este usuario se podía haber hecho servir
mysql> GRANT ALL PRIVILEGES ON db_name.* TO user_name IDENTIFIED BY
PASSWORD('user_pass') WITH GRANT OPTION;
o bien el comando
mysql> SET PASSWORD FOR user_name = PASSWORD('user_pass');
El password debe ir cifrado, para lo que se utiliza la función PASSWORD. Para revocar permisos se debe utilizar el comando REVOKE: mysql> REVOKE ALL PRIVILEGES ON db_name.* FROM user_nameCon este ejemplo se deja al usuario user_name sin ningún permiso para la base de datos db_name Para dar de baja un usuario se elimina de la tabla user de mysql # mysql -u root mysql mysql> DELETE FROM user WHERE user = 'user_name';
Copyright © 1998-2008 DEISTER, S.A. - Todos los derechos reservados. Modificado: 5-mayo-2011 |
||||||||||||||||||