Está en la página 1de 7

Manual MySql

# mysql -p  para entrar desde la terminal


# mysql -u usuario -p  para entrar desde la terminal con usuario diferente a root;

> select user();  para ver el usuario con el que nos hemos logueado.

> select * from Claves.usuarios;  para ver la tabla.

Claves  base de datos | usuarios  tabla


> select * from Claves.usuarios\G  para ver la tabla paginada.

> show databases; para ver los nombres de todas las tablas.
> desc mysql.user;  para ver el contenido de la tabla

Subir archivos a la base de datos


Desde filezilla lo ponemos en la carpeta que queramos Ej: /tmp (temporal)
Desde mysql (si es necesario descomprimir con unzip)
> source ruta_archivo | source /tmp/employees.sql

Desde la terminal
# mysql -p < ruta_archivo | mysql -p < /tmp/Zoo.sql

> show processlist;  para ver sesión o rutina

> kill NºID; | kill 6;  matar sesión o rutina


Crear usuario sin permisos y con contraseña: create user 'edu'@'localhost'
identified by 'manager';
Borrar usuario: drop user 'prueba'@'localhost';
Cuando se crea un usuario (CREATE USER) el único permiso que tiene es el de
USAGE que le da derecho a conectarse a MySQL.
> select user from mysql.user;  para ver los usuarios

Comando GRANT
Permite conceder privilegios a un usuario.
Crear usuario: GRANT all privileges on *.* to user1@'localhost' identified by 'user1'
with grant option;
with grant option  indica que el usuario puede otorgar privilegios a otros usuarios
Comando REVOKE
Permite revocar los privilegios del usuario otorgados con el comando GRANT.
REVOKE all privileges on *.* from user1@'localhost';

> show grants for user1@'localhost';  sirve para ver los permisos de un usuario.

Eliminar usuario
> drop user user1@'localhost';

Privilegios Nivel Global


Los permisos globales se aplican a todas las bases de datos.
Los privilegios son almacenados en la tabla “mysql.user”
GRANT ALL ON *.* y REVOKE ALL ON *.* otorgan y quitan sólo permisos
globales.
Privilegios a nivel de base de datos
Los permisos de base de datos se aplican a todos los objetos de una base de
datos.
Estos permisos se almacenan en las tablas “mysql.db”
GRANT ALL ON bd_name.* y REVOKE ALL ON bd_name.* otorgan y quitan sólo
permisos de bases de datos.
Privilegios a nivel de tabla
Los permisos de tabla de aplican a todas las columnas en una tabla dada.
Los privilegios son almacenados en la tabla mysql.tables_priv
GRANT ALL ON bd_name.tbl_name y REVOKE ALL ON bd_name.tbl_name
otorgan y quitan sólo permisos de tabla.
Privilegios a nivel de columna
Los permisos de columna se aplican a columnas en una tabla dada.
Estos permisos se almacenan en la tabla mysql.columns_priv.
Usando REVOKE, debe especificar las mismas columnas que se otorgaron los
permisos.
Entrar desde Windows (allow 3306)
> mysql -u root(u otrousuario) -p -h (dirección IP)
Cambiar contraseñas de usuario
 Poner contraseña: set password for user1@'localhost'='user1';

 Poner contraseña sin afectar a los permisos de la cuenta: grant usage on *.*
to user1@localhost identified by 'user1';

 Listar los privilegios de la sesión actual: show grants;

 Cambiar contraseña a un usuario que ya tiene: set password for


'user1'@'localhost' = password('user11');

Permisos y privilegios para GRANT y REVOKE


ALL [PRIVILEGES] INSERT
ALTER LOCK TABLES
ALTER ROUTINE PROCESS
CREATE PROXY
CREATE ROUTINE REFERENCES
CREATE TABLESPACE RELOAD
CREATE TEMPORARY TABLES REPLICATION CLIENT
CREATE USER REPLICATION SLAVE
CREATE VIEW SELECT
DELETE SHOW DATABASES
DROP SHOW VIEW
EVENT SHUTDOWN
EXECUTE SUPER
FILE TRIGGER
GRANT OPTION UPDATE
INDEX USAGE
Flush privileges; se actualiza la configuración (vuelve a leer las tablas de
privilegios) no es necesario lo hace automaticamente
Ejemplos prácticos:
Para ver permisos de un usuario: show grants for 'user1'@'localhost';

Para asignar permisos que queramos: grant [permisos que queramos asignar] on
*.* from 'user1'@'localhost';
Ej: GRANT delete, insert ON *.* TO 'user1'@'localhost';

Para eliminar permisos que queramos. revoke [permisos que queramos quitar] on
*.* from 'user1'@'localhost';
Ej: REVOKE delete, update ON *.* FROM 'user1'@'localhost';

Creación y actualización de tablas


Create table
Insert into

Update

Vistas
Una vista es una tabla virtual cuyo contenido está definido por una consulta.
Al igual que una tabla, una vista consta de un conjunto de columnas y filas de
datos con un nombre.
Estructura
Create view nombre_vista as
Select campo1, campo2
From tabla
Where campo_x=’valor’
Variables
Las variables nos permiten almacenar un valor y recuperarlo mas adelante
para emplearlos en otras sentencias. Las variables de usuario son mas
específicas de cada conexión y so liberadas automaticamente al abandonar la
conexion
select * from salaries;
set @muchos=50000;
set @pocos=10000;
select * from salaries
where salary>=@pocos and salary<@muchos;

También podría gustarte