Archivos de Categoría: MySQL - Paginas 5

Listar campos de una tabla de MySQL

Estoy dándole vueltas a montar un CRUD sencillito para facilitarme los back office que hago. Viendo opciones de cómo hacerlo, me he encontrado con una cláusula de MySQL que permite devolver los campos de una tabla con sus propiedades, algo que me vendrá bastante bien para este proyecto.


-- Si queremos sacar la estructura de la tabla 
describe tabla;

-- Y si queremos sacar la información de un campo en concreto 
describe tabla campo;

En breve me iré de vacaciones y seguramente le eche unas horas a este proyecto, a ver qué tal queda. Ya iré informando

Clonar tablas en SQL Server y MySQL

Es habitual que cuando vamos a hacer algún proceso un poco peliagudo sobre una tabla, nos hagamos una copia de seguridad por lo que pueda pasar. Por suerte hay formas bastantes sencillas de hacerlo.

En SQL Server sería así:


select * into tabla_clonada from tabla_origen

y en MySQL asi:


create table tabla_clonada select * from tabla_origen

logicamente si ponemos en vez del asterisco los campos que queremos, nos los crea con esos campos

Haciendo backups y restaurandolos desde linux

Hoy ha tocado hacer backup de un servidor de desarrollo a uno de producción, con el inconveniente de que tocaba hacerlo por SSH ya que no nos daban otro acceso a parte del FTP.

Así que primero ha tocado hacer un dump de la base de datos (encima el mysql estaba en otra maquina):
mysqldump --opt --host=IP_SERVIDOR_MYSQL --user=USUARIO_MYSQL BASE_DATOS > backup.sql

Putada, solo tenia permisos de escritura sobre mi directorio home por lo que para bajarlo he tenido que hacerlo por SSH. El punto del final es para que me lo descargue en el directorio actual
scp USUARIO_SSH@IP_SSH:/home/USUARIO_SSH/backup.sql .

Después subida del backup.sql por FTP y a restaurarlo:
mysql --verbose --host=IP_SERVIDOR_MYSQL --user=USUARIO_MYSQL BASE_DATOS < /RUTA_FTP/backup.sql

Y por ultimo, bajar todos los ficheros por FTP y subirlos. Puedes hacerlo con un cliente de FTP normal pero para parecer más guay puedes hacerlo por consola:
lftp -u USUARIO_FTP SERVIDOR_FTP/RUTA_DESTINO/

y con un mput para subir y un mirror - v para bajar, solucionado.