bases_de_datos:mysql:administracion
Diferencias
Muestra las diferencias entre dos versiones de la página.
| Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
| bases_de_datos:mysql:administracion [2016/12/09 21:26] – [Configuración] alberto | bases_de_datos:mysql:administracion [2016/12/10 12:40] (actual) – [Crear usuarios y especificar privilegios] alberto | ||
|---|---|---|---|
| Línea 101: | Línea 101: | ||
| ===== Administración de usuarios ===== | ===== Administración de usuarios ===== | ||
| + | El administrador del Sistema MySQL, puede especificar: | ||
| + | * Qué usuarios pueden conectarse al servidor (usuario). | ||
| + | * Desde dónde pueden conectarse (host). | ||
| + | * Qué pueden hacer mientras están conectados (privilegios). | ||
| + | |||
| + | El " | ||
| + | * **user**: Usuarios que pueden conectar con el servidor. | ||
| + | * **db**: Privilegios a nivel base de datos. | ||
| + | * **tables_priv**: | ||
| + | * **columns_priv**: | ||
| + | |||
| + | Aunque se puden manejar los privilegios con la manipulación de estas cuatro tablas, es más cómodo usar las sentencias GRANT (crear usuarios y especificar privilegios) y REVOKE (eliminar privilegios). | ||
| + | |||
| + | ==== Crear usuarios y especificar privilegios ==== | ||
| + | Sintaxis de la sentencia GRANT: | ||
| + | <WRAP box> | ||
| + | GRANT privilegios (columnas) | ||
| + | ON nivelPrivilegio | ||
| + | TO usuario@host IDENTIFIED BY " | ||
| + | [WITH GRANT OPTION]; | ||
| + | </ | ||
| + | |||
| + | Vamos a ver qué significa cada cláusula de esta sentencia: | ||
| + | * **Privilegios**: | ||
| + | * // | ||
| + | |||
| + | ^ Privilegio | ||
| + | | ALTER | Permite alterar tablas e índices | ||
| + | | CREATE | ||
| + | | CREATE TEMPORARY TABLES | Permite crear tablas temporales (CREATE TEMPORARY TABLE) | | ||
| + | | DELETE | ||
| + | | DROP | Permite eliminar bases de datos y tablas | ||
| + | | INDEX | Permite crear y eliminar índices asociados a tablas | ||
| + | | INSERT | ||
| + | | SELECT | ||
| + | | UPDATE | ||
| + | |||
| + | * // | ||
| + | |||
| + | ^ Privilegio ^ Descripción ^ | ||
| + | | FILE | Permite leer y escribir archivos en el servidor (SELECT ... INTO OUTFILE y LOAD DATA INFILE) | | ||
| + | | PROCESS | Permite ver información sobre los procesos abiertos en el servidor (SHOW FULL PROCESSLIST) | | ||
| + | | RELOAD | Permite solicitar al servidor que cargue de nuevo en memoria las tablas del diccionario de datos(FLUSH)| | ||
| + | | REPLICATION CLIENT | Permite al usuario preguntar dónde está el servidor esclavo o maestro | | ||
| + | | REPLICATION SLAVE | Permiso necesario para que el usuario pueda acceder al fichero //binary log// del maestro desde el esclavo | ||
| + | | SHUTDOWN | Permite cerrar el servidor (mysqladmin shutdown) | | ||
| + | |||
| + | |||
| + | * // | ||
| + | |||
| + | ^ Privilegio ^ Descripción ^ | ||
| + | | ALL [PRIVILEGES] | Permite agrupar todos los privilegios en uno solo | | ||
| + | | USAGE | Es un privilegio especial que significa " | ||
| + | |||
| + | |||
| + | * **Nivel de privilegio**: | ||
| + | - //Nivel global//: Se aplican privilegios a todas las bases de datos y tablas del servidor. La forma de indicarlo será: GRANT privilegios ON *.* ... | ||
| + | - //Nivel base de datos//: Se aplican privilegios sobre todas las tablas de la base de datos nombrada: GRANT privilegios ON NombreBaseDatos.* ... | ||
| + | - //Nivel de tabla//: Se aplican privilegios sobre todas las columnas de la tabla especificada: | ||
| + | - // | ||
| + | |||
| + | * **Usuario@host**: | ||
| + | * **Contraseña**: | ||
| + | * **Cláusula WITH GRANT OPTION**: Es opcional, y significa que el usuario tiene la capacidad de transmitir sus privilegios a otros usuarios. | ||
| + | |||
| + | ==== Eliminar privilegios ==== | ||
| + | Sintaxis de la sentencia REVOKE: | ||
| + | <WRAP box> | ||
| + | REVOKE privilegios (columnas) | ||
| + | ON nivelPrivilegio | ||
| + | FROM usuario@host | ||
| + | </ | ||
| + | |||
| + | Los privilegios no tienen porqué coincidir con todos los que tiene el usuario, ya que es posible eliminar sólo la parte que interese.\\ Son los mismos privilegios y nivel de privilegio que se especificaron en el apartado anterior.\\ | ||
| + | |||
| + | Para eliminar de golpe todos los privilegios de uno o varios usuarios, se puede usar la forma: | ||
| + | <WRAP box> | ||
| + | REVOKE ALL PRIVILEGES, GRANT OPTION FROM usuario@host [, | ||
| + | </ | ||
| + | |||
| + | Eliminar todos los privilegios no supone eliminar al usuario, ya que éste aún permanece en un registro de la tabla // | ||
| + | |||
| + | ==== Eliminar una cuenta de usuario ==== | ||
| + | <WRAP box> | ||
| + | DROP USER ' | ||
| + | </ | ||
| + | |||
| + | Para poder eliminar a un usuario, anteriormente le han tenido que haber eliminado todos los privilegios.\\ | ||
| + | |||
| + | === Ver privilegios === | ||
| + | Pueden verse los privilegios de un usuario con la sentencia SHOW GRANTS: | ||
| + | <WRAP box> | ||
| + | SHOW GRANTS FOR ' | ||
| + | </ | ||
| ===== Índices ===== | ===== Índices ===== | ||
| ===== Copias de seguridad ===== | ===== Copias de seguridad ===== | ||
| ===== Ficheros Logs ===== | ===== Ficheros Logs ===== | ||
| ===== Replicación ===== | ===== Replicación ===== | ||
bases_de_datos/mysql/administracion.1481315192.txt.gz · Última modificación: por alberto
