Como no puede ser de otra manera, en Comando IT os traigo un par de comandos de MySQL, por si justo no os acordáis de como era exactamente la hora de ponerte con el marrón de turno.
Os va a gustar tener esta lista cerca.
Crear una base de datos
create database tu_base_de_datos;
Mostrar todas las bases de datos en el servidor
show databases;
Cambiar de una base de datos a otra
use tu_base_de_datos;
Mostrar todas las tablas de una base de datos
show tables;
Mostrar los formatos de campo de la base de datos
describe nombre_de_tu_tabla;
Eliminar una base de datos
drop database tu_base_de_datos;
Eliminar una tabla de base de datos
drop table nombre_de_tu_tabla;
Devolver todos los registros de una tabla
SELECT * FROM nombre_de_tu_tabla;
Devolver las columnas y la información de la columna correspondiente a la tabla designada
show columns from nombre_de_tu_tabla;
Mostrar filas seleccionadas con el valor «whatever»
SELECT * FROM [nombre_de_tu_tabla] WHERE [field nombre_de_tu_fila] = «whatever»;
Mostrar todos los registros que contengan el nombre «Paco» y el número de móvil ‘600’
SELECT * FROM [table name] WHERE name = «Paco» AND numero_movil = ‘600’;
Mostrar todos los registros que contienen el nombre «Paco» y el número de móvil ‘600’ ordenados por el campo de «número de móvil»
SELECT * FROM [table name] WHERE name != «Paco» AND numero_movil = ‘600’ order by numero_movil;
Mostrar todos los registros que empiezan con la palabra ‘P’ y el número de móvil ‘600’
SELECT * FROM [table name] WHERE name like «P%» AND numero_movil = ‘600’;
Utilizar una expresión regular para encontrar registros. Utilizar «regexp binary» para usar la sensibilidad a las mayúsculas. Con esto aparece cualquier registro que comienza con «b»
SELECT * FROM [table nombre_de_tu_tabla] WHERE rec RLIKE «^b$»;
Mostrar registros únicos
SELECT DISTINCT [column nombre_de_tu_columna] FROM [table nombre_de_tu_tabla];
Mostrar los registros seleccionados de forma ordenada en ascendente (asc) o descendente (desc)
SELECT [col3],[col4] FROM [table nombre_de_tu_tabla] ORDER BY [col3] DESC;
Devolver un número de filas
SELECT COUNT(*) FROM [table nombre_de_tu_tabla];
Sumar el contenido de la columna
SELECT SUM(*) FROM [table nombre_de_tu_tabla];
Cambiar la contraseña de un usuario desde terminal de Linux
comandoit@comandoit:~# mysql -u root -h servidor_mysql.com -p password ‘nueva_contraseña’
Cambiar la contraseña de un usuario desde MySQL
SET PASSWORD FOR ‘paco’@’hostname’ = PASSWORD(‘nueva_contraseña’);
Dar permiso a un usuario «Paco» se conecte al servidor localhost usando la contraseña «contraseña»
grant usage on *.* to Paco@localhost identified by ‘contraseña’;
Dar permisos de usuario para utilizar una base de datos
grant all privileges on tu_base_de_datos.* to paco@localhost;
Actualizar datos en una tabla
UPDATE [table nombre_de_tu_tabla] SET Select_priv = ‘Y’,Insert_priv = ‘Y’,Update_priv = ‘Y’ where [field nombre_de_tu_fila] = ‘user
Eliminar filas de una tabla
DELETE from [table nombre_de_tu_table] where [field nombre_de_tu_fila] = ‘whatever’;
Actualizar base de datos cuando se modifican permisos o privilegios
FLUSH PRIVILEGES;
Eliminar una columna
alter table [table nombre_de_tu_tabla] drop column [column nombre_de_tu_comlumna];
Agregar una nueva columna en la base de datos
alter table [table nombre_de_tu_tabla] add column [nombre_de_tu_columna] varchar (20);
Cambiar el nombre de una columna
alter table [nombre_de_tu_tabla] change [antigua_nombre_columna] [nombre_de_tu_nueva_columna ] varchar (50);
Crear una columna única
alter table [nombre_de_tu_tabla] add unique ([nombre_de_tu_nueva_columna]);
Hacer una columna mas grande
alter table [nombre_de_tu_tabla] modify [nombre_de_tu_columna] VARCHAR(3);
Eliminar una columna única de una tabla
alter table [nombre_de_tu_tabla] drop index [nombre_de_tu_columna];
Cargar un archivo CSV dentro de una tabla
LOAD DATA INFILE ‘/Descargas/Archivo.csv’ replace INTO TABLE [nombre_de_tu_tabla] FIELDS TERMINATED BY ‘,’ LINES TERMINATED BY ‘n’ (field1,field2,field3);
Hacer una copia de seguridad de todas las bases de datos.
comandoit@comandoit:~# mysqldump -u root -p –opt >/Backups/alldatabases.sql
Hacer una copia de seguridad de una base de datos
comandoit@comandoit:~# mysqldump -u username -ppassword –databases basededatos >/Backups/databasename.sql
Hacer copia una tabla de una base de datos
comandoit@comandoit:~# mysqldump -c -u username -p base_de_datos tablename > /Descargas/base_de_datos.nombre_de_la_tabla.sql
Restaurar una base de datos o tabla de un backup
comandoit@comandoit:~# mysql -u username -p databasename < /Descargas/backup.sql
Un poco lo largo, pero merece la pena.