Like de SQL con PHP y PDO

Búsqueda en MySQL con PHP y PDO: con like y coincidencia exacta

Esta es la tercera parte de los tutoriales sobre cómo consumir una base de datos de MySQL desde PHP usando PDO para ejecutar las consultas.

Puedes ver la primera parte aquí, y la segunda aquí. Lo que nos reúne en esta ocasión es la búsqueda en tablas desde PHP.

Para hacer una búsqueda usando comodines se usará la sentencia LIKE de MySQL, y para buscar de manera exacta un simple where.

(más…)

Respaldos de BD creados cada minuto usando cron

Respaldar base de datos de MySQL automáticamente usando cron en Ubuntu

Combinar cron y mysqldump para respaldar base de datos cada cierto tiempo

Hace algún tiempo vimos cómo respaldar una base de datos completa en MySQL usando mysqldump sin exponer nuestras credenciales.

Hoy veremos cómo respaldar la base de datos pero cada cierto tiempo. Es decir, podríamos respaldarla cada semana, cada hora, todos los domingos o en cualquier momento del tiempo gracias a cron.

Resumiendo, veremos cómo crear un respaldo de una base de datos de manera periódica y automática usando cron, Linux, mysql y un script que he programado.

(más…)

Archivo de Excel que vamos a importar hacia MySQL usando PHP

Importar datos de Excel a MySQL con PHPSpreadSheet, PDO y PHP

Importar datos de Excel a base de datos de MySQL usando PHP

Ya vimos cómo exportar datos de MySQL a un libro de Excel. Ahora haremos el proceso inverso: a partir de un archivo de Excel leer algunas hojas y poner sus datos dentro de nuestra base de datos de MySQL.

Digo muy en serio que vamos a hacer el proceso inverso, porque usaré la misma base de datos que en el post anterior así que recomiendo leerlo antes.

(más…)

Hoja de Productos dentro de libro con contenido de MySQL

Exportar datos de MySQL a Excel con PHP, PHPSpreadSheet y PDO

Crear libro de Excel a partir de una base de datos de MySQL

En este artículo voy a explicar cómo podemos exportar los datos de una base de datos de MySQL a un archivo de Excel u hoja de cálculo.

Vamos a usar PDO para conectar a la base de datos, y PHPSpreadSheet para crear un archivo de Excel y escribirle los datos traídos desde la tabla de la BD.

Actualización: mira este post para aprender a copiar datos de Excel a MySQL.

(más…)

Consultar datos de una tabla usando un cursor - PDO, PHP y MySQL

PHP y PDO parte 2: iterar con cursor y comprobar si elemento existe

Continuación de PDO con PHP para trabajar con bases de datos

En otro post ya hemos visto las bases para trabajar con PHP, PDO y MySQL (también SQLite). Ahora veremos dos cosas que vienen de ayuda al trabajar con PDO:

  1. Seleccionar datos y recorrerlos con un cursor en lugar de obtenerlos como arreglo
  2. Comprobar si un elemento existe en la base de datos
Consultar datos de una tabla usando un cursor - PDO, PHP y MySQL

Consultar datos de una tabla usando un cursor – PDO, PHP y MySQL

El primer punto viene de maravilla cuando hablamos de rendimiento. El segundo sirve para muchas cosas, por ejemplo, ver si un usuario ya existe al registrarse o cosas de esas.

(más…)

Script para respaldar base de datos de MySQL funcionando

Script para respaldar base de datos de MySQL / MariaDB en Linux usando MySQLDump

En este tutorial de Linux vamos a ver cómo respaldar o hacer un backup de una base de datos completa de MySQL o MariaDB usando la utilidad de MySQLDump también llamada mysqldump.

Todo eso será llamado desde un script sh programado por nosotros.

Por otro lado, veremos cómo no exponer nuestras credenciales de acceso para llamar al comando sin pasarle nuestra contraseña, evitando así riesgos de seguridad.

La segunda parte del tutorial (que traeré muy pronto) indicará cómo respaldar una base de datos periódicamente con cron, es decir, respaldarla cada mes, a diario o cada determinado tiempo.

Nota: este tutorial está probado con ubuntu 16.04 y 18.10 pero debería funcionar para otras versiones. Por cierto, aquí puedes ver cómo instalar y configurar MySQL en Linux en caso de que no lo tengas instalado.

(más…)

Fondo de pantalla de palabras reservadas del lenguaje Go / Golang

Fondos de pantalla e imágenes de lenguajes de programación

Hace algún tiempo hice algunas imágenes sobre lenguajes de programación para usarlas como fondo de pantalla; son simples, tienen el nombre del lenguaje de programación pero formado con palabras reservadas del mismo, aquí un ejemplo de Rust:

Rust creado con WordArt

Rust creado con WordArt

Voy a exponer aquí los fondos de pantalla de lenguajes de programación para descargarlos.

(más…)

Descargar MySQLTuner para comprobar instalación de MySQL en Linux

Usar MySQLTuner para mejorar y revisar una instalación de MySQL

Existe un script programado en Perl que sirve para mejorar el rendimiento de MySQL (y otros motores de bases de datos) comprobando algunas características e indicando cuáles cosas se pueden mejorar para que nuestra instalación de MySQL sea más rápida y estable.

El script del que hablo se llama MySQLTuner y es totalmente gratuito de usar, fácil de instalar, open source (aquí el repositorio) y muy útil. No modifica nada, pero indica qué se podría modificar y mejorar.

Vamos a ver cómo descargarlo, ejecutarlo y usarlo en Linux Ubuntu Server, aunque también aplica para otros servidores que tengan el motor de base de datos de MySQL.

(más…)

Eliminar y vaciar tablas de una base de datos de MySQL

Eliminar todas las tablas de una base de datos de MySQL

En este post veremos cómo eliminar todas las tablas de una base de datos en MySQL. Estos comandos también deberían funcionar correctamente en MariaDB.

Vamos a ver más de una forma de vaciar una base de datos; porque en algunos casos no tenemos permisos para realizar determinada acción (por ejemplo, crear y eliminar bases de datos) o no queremos tocar otra estructura de la base de datos, sino únicamente quitar las tablas.

(más…)

Ejemplo de cambio de contraseña en MySQL

Cambiar contraseña de usuario de MySQL

Siguiendo con los tutoriales de MySQL vamos a ver cómo cambiar la contraseña de cualquier usuario desde la línea de comandos modificando la tabla user en la base de datos mysql, usando una consulta de tipo update y llamando a la función password en algunos casos.

Por cierto, esto también te permitirá resetear la contraseña en caso de que la hayas olvidado (pero debes tener acceso, aquí no veremos cómo cambiar la de root).

(más…)

Sistema web para cotizaciones y presupuestos

Presentando un sistema web para hacer cotizaciones y presupuestos, gratuito y open source

Hoy vengo a presentar un software para realizar cotizaciones o presupuestos, el cual es totalmente gratuito de usar en la nube; así como open source. Es decir, aparte de que puedes usarlo en mi sitio, puedes descargarlo y modificarlo.

Sistema web para cotizaciones y presupuestos

Sistema web para cotizaciones y presupuestos

Características del software

No es la gran cosa, pero entre sus principales características encontramos las siguientes:

  • Realizar cotizaciones o presupuestos
  • Estimar el costo requerido, el cual se configura por cada servicio
  • Calcular tiempo requerido por cada servicio
  • Describir características y/o condiciones del trabajo
  • Agregar clientes para ligarlos a las cotizaciones
  • Imprimir la cotización o guardarla como PDF (esto depende del navegador la mayoría de veces)
  • Multiusuario: cualquier usuario puede registrarse y usarlo, así de simple. Eso sí, las cotizaciones, servicios y características son separadas por usuario
  • Totalmente open source
  • Escrito con PHP, utiliza PDO para interactuar con la base de datos
  • Base de datos MySQL
  • Lado del cliente con Vue.JS y Bootstrap
  • Mensaje de agradecimiento, presentación y pie totalmente configurables

Se me ocurre que puede servir tanto como para estudiantes que tienen que entregar un proyecto con PHP simple, así como para personas que necesitan un software como estos.

Voy a explicar cómo fue creado, en dónde se puede probar y también dónde se puede leer el código fuente.

(más…)

Solución a error 1045 access denied for user (using password: YES) | MySQL

Tal vez uno de los errores más comunes del motor de base de datos MySQL es aquel que dice algo como lo siguiente:

Error 1045: Access denied for user ‘usuario’@’host’ (using password: YES)

Este error puede ser causado desde la CLI, o al conectarnos desde un lenguaje de programación. Así que hoy veremos la solución a este problema, la cual, la mayoría de veces es escribir correctamente la contraseña y el usuario.

Aunque no todo es así de fácil, ya que a veces hay errores muy específicos que dependen del lenguaje, sistema operativo o versión de servidor. En este post veremos la mayoría de soluciones, pero si no queda, puedes comentar.

(más…)