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.
Comandos sin entrar a la consola de mysql utilizando Mysqladmin:
- Sintaxis de mysqladmin:
mysqladmin -u usuario
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
- 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
- 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
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:
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...