Colección de comandos básicos mysql (Parte 1)

A continuación se mostrará una colección de los comandos básicos para el manejador de base de datos MySQL. Lo único que necesitaremos para verificar dichos comandos es nuestra poderosa consola y tener instalado correctamente el paquete mysql-server-5.0

Comandos sin entrar a la consola de mysql utilizando Mysqladmin:

- Sintaxis de mysqladmin:
mysqladmin -u usuario -p comando -h maquina(ip)

Nota: Si el servidor mysql es remoto se tendrá que colocar "-h ip_servidor", pero si es local no es necesario colocarlo.

- Asignar Contraseña para el root de mysql:
mysqladmin -u root -h localhost password "123"

- Cambiar la clave de root:
mysqladmin -u root -p password "nuevo_password"

- Comprobar si el servidor MySQL está en funcionamiento:
mysqladmin ping -u root -p

- Ver el estado actual del servidor de MySQL:
mysqladmin -u root -p status

- Mostrar todos los procesos en marcha o consultas en la base de datos MySQL:
mysqladmin -u root -p processlist

- Igual que el anterior pero con intérvalo de tiempo ("-i 2" ---> 2 segundos):
mysqladmin -u root -p -i 2 processlist

- Detener un proceso cliente:
mysqladmin -u root -p kill id

- Crear una base de datos mysql:
mysqladmin -u root -p create nombre_base_datos

- Ver las bases de datos mysql:
mysqlshow -u root -p

- Eliminar una base de datos MySQL existentes:
mysqladmin -u root -p drop
nombre_base_datos

- El método seguro para apagar el servidor MySQL:
mysqladmin -u root -p shutdown

- Observar las variables del sistema:
mysqladmin -u root -p variables

Ahora dentro de la consola de mysql:

- Entrar a la consola de mysql:
mysql -u root -p -h maquina(ip)

Nota: -h especificar si es remoto

- Cambiar la clave de root:
UPDATE mysql.user SET Password=PASSWORD('Nueva_password') WHERE User='root';

y luego

flush privileges;

- Otra forma de cambiar la pass del root:
set password for root@localhost=password('Nueva_password');

- Observar las variables del sistema:
show variables;

- Seleccionar el motor de almacenamiento al crear una tabla:
Sintaxis:
CREATE TABLE nombre_tabla(definición) ENGINE=nombre_motor;

Ejemplo:
CREATE TABLE Alumnos(nombre char) ENGINE=InnoDB;

- Cambiar motor de almacenamiento:
ALTER TABLE City ENGINE=MyISAM;

- Para ver la version de mysql:
SELECT version();

- Para ver la fecha:
SELECT CURRENT_DATE;

- Para sumar valores:
select 2+2;

- El estado actual del servidor de MySQL:
status

- Ejecuta comando de linux:
\! ls
\! pwd

- Para escribir en un fichero y que los resultados de los comandos vayan a él:
pager cat > /tmp/log.txt
show databases;
nopager

Verificar con: cat /tmp/log.txt

- Ejecutar sentencias SQL desde un fichero de texto:
\. nombre_de_fichero

- Para ver la lista de bases de datos disponibles:
show databases;

- Para seleccionar una base de datos:
USE nombre_de_la_base_de_datos;

- Para ver tablas de la
base de datos seleccionada:
SHOW TABLES;

- Para ver las columnas de la tabla:
SHOW COLUMNS FROM nombre_tabla;

o también

DESCRIBE nombre_tabla;

- Crear una nueva base de datos:
CREATE DATABASE nueva_base_datos;

- Crear una tabla:
Sintaxis:
CREATE TABLE nombre_tabla(definición);

Ejemplo:
create table tabla1(edad int);

- Alterar una tabla:
ALTER TABLE tabla modificación;

- Para ver caracteristicas de la tabla:
show create table nombre_tabla;

- Para ver las vistas:
show create view nombre_de_la_vista;

- Listar la sentencia grant para observar sus privilegios:
show grants;

- Listar la sentencia grant para observar sus privilegios de un usuario especifico:
Sintaxis:
show grants for usuario@maquina;

Ejemplo:
SHOW GRANTS FOR pepe@192.168.1.200;

- Ver la lista de usuarios conectados:
show processlist;

- Detener un proceso cliente:
kill id

- Crear un usuario con privilegios:
Sintaxis:
GRANT privilegios(columnas) ON elemento TO nombre_usuario@maquina IDENTIFIED BY 'contraseña' with grant option;

Ejemplos:

- Crea usuario para una BD y tabla especifica con privilegios (Consulta y actualización):
GRANT select, update ON nombre_BD.nombre_tabla TO nombre_usuario IDENTIFIED BY '123';

- Crea usuario para una BD especificas y Todas sus tablas con todos los privilegios:
GRANT all ON nombre_DB.* TO nombre_usuario IDENTIFIED BY '123';

- Crea usuario para todas las BD y Todas sus tablas con todos los privilegios:
GRANT all ON *.* TO nombre_usuario IDENTIFIED BY '123';

- Crea usuario para la base de datos actual de la tabla test con privilegios de actualizar en el campo id y consultar en el campo nombre:
GRANT UPDATE(id), SELECT(nombre) ON test TO javier@localhost IDENTIFIED BY '123';

- Usuario con privilegios de consultar e insertar en todas las BD y tablas.(el % significa que maria se puede conectar desde cualquier maquina):
grant select, insert on *.* to maria@'%' identified by '123';

With grant option: Es opcional y permite dar privilegios a otros usuarios.

-Creando usuario en la tabla user de mysql:
mysql -u root -p mysql

insert into user values('localhost','admin',PASSWORD('clave'), Reload_priv='Y', Process_priv='Y');

FLUSH PRIVILEGES;

- Otra manera de Crear Usuarios:
CREATE USER fulano2 IDENTIFIED BY '123';

CREATE USER Alumno@Salon1 IDENTIFIED BY PASSWORD(Alumno);

- Cambiar el nombre de un usuario:
RENAME USER viejo_nombre TO nuevo_nombre@192.168.40.21;

- Cambiar clave de un usuario:
SET PASSWORD FOR Pepe@'%'=PASSWORD('123');

- Cambiar clave del ususario logueado:
SET PASSWORD=PASSWORD('minuevaclave');

- Ver los Usuarios de MySQL y sus parametros:
SELECT User,Host,Password FROM mysql.user;

- Eliminar privilegios de un ususario:
Sintaxis:
REVOKE privilegios ON base_datos.tabla(columnas) FROM usuario;

Ejemplo:
REVOKE select ON PDVSA.* FROM manuel;

- Borrar usuario:
Sintaxis:
DROP USER nombre_usuario;

Ejemplo:
DROP USER manuel;

- Borrar usuario con condición "where":
DELETE FROM user WHERE user.User='manuel';

Nota: En el comando anterior la palabra where significa "donde", es decir, se borrará el registro "donde" el nombre de usuario sea igual a "manuel". Se usa como una especie de condición.

0 comentarios

Publicar un comentario

Escribe aquí abajo tu comentario...