Clonar base de datos MySQL

Clonar base de datos MySQL desde consola

Vamos a ver como podemos clonar rápidamente una BBDD para tener una copia de seguridad y así luego poder hacer todas las pruebas que queramos sin ningún tipo de miedo.

En el mundo de la programación, la base de todo es probar y probar, pero a veces, nos cargamos algo que funcionaba en pro de buscar alguna mejora y nos echamos las manos a la cabeza.

Y como el git no es aplicable a las bases de datos, que funciona muy bien con código pero ya sabemos lo problemático que es un control de versiones con bases de datos.

Pues no nos queda otra que hacernos una copia de la base de datos.

Hay muchas formas de hacerlo, pero las que sean a través de herramientas visuales, imagino que seran tan intuitivas que no hace falta ni explicarlas, así que voy a explicar como hacerlo desde consola

Primeramente volcaremos nuestra base de datos a un archivo con el siguiente comando:

Con esto lo que conseguiremos es un fichero de sentencias sql con todo el contenido de nuestra base de datos.

En el caso que solo quisieramos la estructura, añadiríamos la opción –no-data, tal que así:

Nota: En ambos casos estams usando el usuario root, si tuvieramos que usar otro usuario lo cambiamos y listo.

Luego abriremos una shell MySQL con el siguiente comando:

Todo esto lo haremos desde el mismo directorio, si queremos guardar el archivo en un directorio específico, deberemos marcarselo, sino simplemente haremos lo siguiente:

Con este comando creamos la base de datos que será la copia de la que hemos volcado.

Con este comando lo que hacemos es decirle a MySQL que use la base de datos que acabamos de crear.

Y con esto último, ya le decimos que cargue en la base de datos nueva que hemos creado, todos los datos que ya teníamos.

Veís que fácil? Realmente es sencillo ya que son muy pocos pasos.

Y ya tenems una copia de nuestra base de datos, para lo que queramos, para trastear, para copiarla en otro servidor, lo que queramos.

Espero que os haya servido este pequeño tutorial.

Y recordad! No olvidéis comentar! Vuestro código y en el Blog 😉

Eliminar registros duplicados de una tabla

Eliminar registros duplicados

Vamos a ver como eliminar registros duplicados de una tabla.

Primero de todo comentar que hay que tener mucho cuidado con este tipo de sentencias SQL ya que podemos eliminar, cosas que no queríamos.

Así que antes de nada deberíamos hacer una copia de seguridad.

Y una vez dicho esto, y espero que hayas hecho la copia de seguridad, vamos al lío.

Sigue leyendo Eliminar registros duplicados de una tabla

Aumentar el límite de memoria en PHP

Aumentar limite de memoria en PHP

En esta entrada, vamos a ver como aumentar el límite de memoria de PHP, ya sea para WordPress, para scripts propios o donde necesites más memoria para poder ejecutar el PHP.

Rara vez vamos a necesitar esto, pero quizás tengamos algún webservice o landing page pesado.

Tenemos varias opciones para aumentar el límite de memoria, podemos hacerlo desde el archivo php.ini modificando o añadiendo un archivo .htaccess o bien,  desde la línea de código.

Los dos primeros métodos, no los recomiendo porque se aplicaría a toda la web, y si no lo necesitamos realmente, mejor no aplicarlo, la última opción sería realmente la más idónea, pero no me extiendo más y vamos a ver como aumentar el limite de memoria.

Sigue leyendo Aumentar el límite de memoria en PHP

Obtener un periodo de fechas, ya sean días, semanas o meses en PHP

Obtener periodos de tiempo en PHP, ya sean días, semanas o meses

Vamos a hablar sobre como podemos obtener un periodo fechas, ya sean días, meses o años, utilizando PHP.

La verdad que una vez que sabemos como, veremos que es muy fácil y que podemos dar el juego que necesitemos para obtener un intervalo concreto.

Para ello vamos a usar la función DatePeriod de PHP. A continuación pongo un ejemplo y os explico que es lo que hace.

Sigue leyendo Obtener un periodo de fechas, ya sean días, semanas o meses en PHP

Convertir de latin1 a utf8 en una base de datos MySQL

En esta entrada, vamos a ver como convertir los datos que tengamos en una base de datos MySQL de latin1 a utf-8.

Imaginémonos que hemos de crear un nuevo proyecto, porque el que teníamos antiguamente ha quedado obsoleto.

Pues nosotros como buenos programadores que somos, lo vamos a hacer de nuevo, sin aprovechar nada de lo viejo, ya que solo sería arrastrar la mierda hacía otro lado.

Y lo que queremos es darle un cambio completo y no un simple lavado de cara.

Pues bueno, vamos haciendo nuestra nueva web, aplicación, o con lo que estemos liados en ese momento, y vemos que hay datos en la base de datos antigua que nos hacen falta.

Pero claro… como es lógico, en la base de datos antigua, está todo guardado en latin1. ¡OUCH!

Así que si importamos esos datos, se nos van a introducir incorrectamente ya que los acentos y caracteres especiales no van a estar bien puestos y a la hora de mostrar la información no nos va a ser posible verla correctamente.

Y como no queremos seguir con las chapuzas que han hecho nuestros antecesores y tratar esos datos de forma diferente.

Vamos a convertir esos datos grabados en latin1 a utf-8 con la siguiente sentencia SQL:

Como veis con eso ya habríamos realizado el cambio en nuestra tabla, y al comprobar el resultado final, veríamos que los acentos y caracteres extraños, están todos correctamente.

En este caso se aplica solo a un campo, así que si queremos hacerlo para todos los campos, deberíamos irlos añadiendo, al menos que yo sepa no hay otra forma.

Espero que os haya servido de ayuda y podáis eliminar todo ese código antiguo escrito en latin1 que no sirve para nada.

Y recordad! No olvidéis comentar! Vuestro código y en el Blog 😉

Select2 aplicado a elementos creados de forma dinámica

¿Que es select2?

Esto es simplemente de forma introductoria para quien aún no conozca esta maravilla de plugin de jQuery.

Como ya hemos dicho es un plugin de jQuery que te convierte los selects en algo mucho más bonito y sobretodo muchísimo más funcional.

Al cual se le pueden aplicar muchas opciones que encontrareis en su web.

Es muy simple y completo a la vez, si no lo conocéis, no dudéis en echarle un ojo y seguro que lo usareis en vuestros proyectos, ya lo vereis ya. 😉

Sigue leyendo Select2 aplicado a elementos creados de forma dinámica

Cómo saber las fechas de los últimos trimestres en PHP

Hoy vamos a ver cómo saber las fechas de los últimos trimestres en PHP, para poder aplicarlo en donde nos haga falta.

Imaginemos que queremos mostrar las ventas de los tres últimos trimestres, lo que será la suma de las ventas es fácil, pero el dividirlo en trimestres, ya se complica un poco más la cosa.

Así que vamos a usar esta función que nos devuelve las fechas de inicio y final del trimestre que le pasemos.

Función para conseguir las fechas de inicio y fin del trimestre

Así que si por ejemplo tenemos una función llamada calculateTotallySales a la cual le pasamos el inicio y final de una fecha, y queremos saber los últimos tres trimestres, haremos lo siguiente:

Simple, ¿verdad? Pues me alegro, pero imagino que si habéis llegado hasta aquí es porque lo necesitabais y os ha sacado del apuro, así que me alegro de que eso haya ocurrido 🙂

Y recordad! No olvidéis comentar! Vuestro código y en el Blog 😉

Sumar o Restar horas, minutos, segundos en PHP

Para sumar o restar horas, minutos, segundos en PHP,  a partir de la versión 5 es muy simple, simplemente tenemos que hacer lo siguiente:

Sumar y restar horas, minutos, segundos en PHP 5 o superior

En esta función lo que hacemos es restarle 2 horas, sumamos 10 minutos y restamos 30 segundos, a la hora actual y la mostramos, así de simple.

Si por ejemplo nos encontramos con PHP 4 o queremos saber otros métodos para hacerlo, es también bastante simple, aunque un poco más complicado que antes.

Imagino que no os hará falta este método, porque ya nadie va con PHP 4 pero por si acaso os dejo a continuación el código que usaríamos en ese caso.

Sumar y restar horas, minutos, segundos en PHP 4

Le quitaremos a la fecha actual, 2 horas, añadiremos 10 minutos y restaremos 30 segundos. No creo que nunca tengamos que hacer un cálculo tan raro, pero era para que vierais como se puede sumar y restar horas, minutos y segundos a una fecha si lo tuvieramos que hacer en PHP 4.

Espero que os haya servido, como veis en PHP 5 o superior es muy simple y en PHP 4 es un poco más complicado pero también es muy sencillo.

Y recordad! No olvidéis comentar! Vuestro código y en el Blog 😉

Briefly unavailable for scheduled maintenance. Check back in a minute.

Vamos a hablar de un error que puede dejaros sin acceso a vuestro WordPress, el «Briefly unavailable for scheduled maintenance. Check back in a minute«.

No os asustéis, no es cosa del hosting, ni que hayáis roto nada vosotros, simplemente es parte del proceso que hace WordPress en las actualizaciones.

Básicamente es que cuando WordPress se actualiza, crea un archivo en la raíz de la carpeta donde tenemos el blog que se llama .maintenance.

Así que lo que puede ser que nos haya pasado, que a mitad de una actualización, se haya parado el proceso y no haya acabado de borrar el fichero .maintenance.

Con lo cual nos aparecerá siempre que intentemos entrar en nuestro blog, ya sea en frontend o backend el texto:

Briefly unavailable for scheduled maintenance. Check back in a minute

No os preocupéis, porque tiene fácil solución.

Sólo deberemos acceder a la carpeta principal de nuestro blog en el servidor, ya sea desde un panel de control del propio hosting o  desde un cliente FTP,  y allí veremos que existe el archivo .maintenance, lo eliminaremos de ahí y listo, ya estará solucionado.

Tan simple como eso. Si tenéis que comentar con un técnico o soporte lo que os ha ocurrido, simplemente tenéis que decirle que queréis que os borren ese archivo. No os deberían poner ningún impedimento.

Y con eso solucionamos de forma rápida y fácil el error que no nos deja acceder a nuestro WordPress.

No es un error común, pero ya se sabe que en el mundo de la informática todo es posible.

Espero que os haya servido para volver a acceder a vuestro blog, en el caso de que sigáis sin poder entrar quizás necesitéis mirar este otro artículo, de «un plugin ha roto mi WordPress«.

Y recordad! No olvidéis comentar! Vuestro código y en el Blog 😉