Restaurar Contraseña MariaDB en Ubuntu

Para esto necesitar tener el usuario root del host o equipo donde está instalado el servidor de MySQL o pertenecer al grupo sudoers.

sudo service mysql stop

Crear directorios necesarios para iniciar MySQL en modo seguro

sudo mkdir /var/run/mysqld

sudo chown mysql:mysql /var/run/mysqld

Iniciar el servidor MySQL en modo seguro

sudo mysqld_safe –skip-grant-tables –skip-networking &

mysql -u root

use mysql;

update user set password=PASSWORD(“nuevaclave”) where User=’root’;

O en algunos casos el campo password no existe, entonces es

update user set authentication_string=PASSWORD(“nuevaclave”) where User=’root’;

FLUSH PRIVILEGES;

sudo mysqladmin -u root -p -S /var/run/mysqld/mysqld.sock shutdown

Si te fijas te pide la clave root para poder continuar. Debes ingresar la clave root del usuario en MySQL.

sudo service mysql start

Una vez haya iniciado, puedes probar tu nueva clave ingresando al cliente de MySQL.

mysql -u root -p

Listo. 🙂

Conectar con MySQL por nombre de host

A veces, luego de instalar y configurar MYQSL, éste nos permite conectarnos vía dirección ip, pero no vía hostname o URL, para solventar esto basta con agregar la siguiente línea al archivo, my.cnf

[mysqld]
skip-name-resolve 

Instalar MariaDB en Debian 9

Créanme cuando les digo que si piensas instalar un servidor LAMP en Debian 9 vas a preferir MariaDB.

# apt install mariadb-client mariadb-server

Crear una base de datos

CREATE DATABASE newdatabase;

Para crear un usuario

CREATE USER ‘username’@’localhost’ IDENTIFIED BY ‘userpassword’;

Asignar los privilegios de la base de datos creada al nuevo usuario

GRANT ALL PRIVILEGES ON newdatabase.* to ‘username’@’localhost’;

Si quieres darle todos los privilegios (como un root)

GRANT ALL PRIVILEGES ON * . * TO ‘username’@’localhost’;

Para cambiar la contraseña de root de MariaDB

$ mysql -u root -p
mysql> use mysql;
mysql> update user set password=PASSWORD(“nuevaclave”) where User=’root’;

Para salir

mysql> flush privileges;
mysql> quit

 

Instalando CakePHP en Raspbian… #Capítulo1

El multifacético Raspberry PI puede ser usado en infinidad de áreas tecnológicas. Particularmente estoy usando uno como “servidor de desarrollo”, es decir, le instalé Raspbian, una distribución ligera basada en Debian, y lo uso como servidor dentro de una red local. Al servidor le instalé Apache2, MySQL y PHP5.

Para descargar CakePHP, actualmente se usa el manejador de dependencias Composer… Instalarlo es tan sencillo como seguir los pasos de su página web. En la web oficial de CakePHP nos dan adicionalmente un pequeño truco para ejecutar composer como un comando desde cualquier parte.

mv composer.phar /usr/local/bin/composer

Nota: recordar tener activado el mod rewrite.

Dato: si queremos instalar openssh-server, es necesario activarlo desde las opciones de configuración del raspberry con el comando

sudo raspi-config

Luego, para descargar CakePHP, nos ubicamos en el directorio del servidor donde queremos crear el proyecto y si tenemos el composer global colocamos el siguiente comando

composer self-update && composer create-project –prefer-dist cakephp/app [NOMBRE_DEL_PROYECTO]

Con esos pasos ya tenemos la instalación básica de CakePHP y debería lucir así para la versión 3.4.4


Fuentes:

Falta de capacidad como indicador de éxito de un sitio web

Una pequeña startup* que llamaremos RedBuho quiere publicar en Internet un sitio web con su idea empresarial, se trata de una red social general para compartir y guardar cualquier tipo de material multimedia.

El dueño de RedBuho (dueño, programador, analista, diseñador y el que hace todo porque es el único), ideó su portal en PHP* y MySQL* ya que, le resulta muy sencillo encontrar servidores gratuitos o muy económicos para subir su desarrollo.

El dueño de RedBuho, que llamaremos Mr. Bigowl, quiso probar un poco su conocimiento de Lean*, así que publicó su red social con las mínimas características necesarias para que fuera operativa.

Luego de dos meses, un famoso y respetado profesor de informática y seguridad en la web, con muchos seguidores en Youtube por lo didáctico y actualizado de sus videos, hizo una reseña de esta nueva red social, mencionó que a pesar de tener muy pocos usuarios, menos de 100, ofrece unas características innovadoras y muy interesantes. Inmediatamente, en una hora, RedBuho pasó de 85 usuarios a 1200, a la siguiente hora a 3500 y a la siguiente hora el portal dejó de funcionar por el exceso de visitas y registros.

En los siguientes días RedBuho tuvo serios problemas de disponibilidad, se caía constantemente, tenía lentitud, etc…

Hasta este punto de la historia probablemente alguien pensaría que Mr. Bigowl se equivocó al decidir montar su red social en un server gratuito, que no tuvo previsto soportar cierta cantidad de usuarios, que planificó mal, en fin, que todos estos eventos pueden verse como un fracaso.

Nada más alejado de la realidad…

Mr. Bigowl tuvo el problema más deseado por una empresa emergente, la falta de capacidad para un exceso de demanda. No ha fracasado, al contrario, tuvo demasiado éxito.

Ahora vienen nuevas decisiones…

  • Limitar la cantidad de usuarios mientras comienza a ser rentable el sitio.
  • Arrendamiento de hosting con más capacidades.
  • Buscar apoyo con publicidad u otro tipo de patrocinio

Lo realmente agradable es que alguna decisión tendrá que tomar. Si el sitio no hubiera tenido éxito, el pequeño cascaron de un hosting gratuito le hubiera sido suficiente para tener su proyecto.

Las conclusiones a las que quiero llegar son las siguientes:

  1. No llenes tu lista de cosas por hacer antes de lanzar tu producto. Sal al mercando con lo mínimo que necesites (eso se llama Producto Mínimo Viable).
  2. Si lanzaste tu producto y tienes problemas de capacidad, celébralo, porque ahora tendrás la tarea de pensar una estrategia para sopesar esa carencia, eso es un reto que deriva del éxito.
  3. No le temas al fracaso. El fracaso es información para mejorar.
  4. No le temas al éxito.

Glosario:

Startup: Una compañía startup, compañía de arranque, compañía incipiente o, simplemente, compañía emergente es un término utilizado actualmente en el mundo empresarial el cual busca arrancar, emprender o montar un nuevo negocio y hace referencia a ideas de negocios que están empezando o están en construcción, es decir son empresas emergentes apoyadas en la tecnología. [wikipedia]

PHP: Lenguaje de programación, muy usado.

MySQL: Base de Datos.

Lean Startup: Filosofía para abordar el lanzamiento de negocios y productos que se basa en aprendizaje validado, experimentación científica e Iteración en los lanzamientos del producto para acortar los ciclos de desarrollo, medir el progreso y ganar valiosa retroalimentación de los clientes. De esta manera las compañías, especialmente startups pueden diseñar sus productos o servicios para cubrir la demanda de su base de clientes, sin necesitar grandes cantidades de financiación inicial o grandes gastos para lanzar un producto.

Hosting: Servidor o servidores que sirven que ofrecen los recursos necesarios para alojar un sitio web y hacerlos de acceso público en Internet.

Instalar servidor LAMP (Ubuntu 14.04) #Server6001

A continuación el comando para instalar y comenzar a configurar un servidor LAMP: Linux (Ubuntu 14.04), Apache2, MySQL y PHP.

sudo apt-get install lamp-server^

El símbolo ^ al final del comando no es un error.

Contar cantidad de valores duplicados en un campo MySQL

Por ejemplo, hay un campo que debería ser único, pero la base de datos no tiene ninguna restricción o simplemente queremos saber cuantas apariciones tienen los distintos valores de un campo.

SELECT NOMBRE_CAMPO, COUNT(*) APARICIONES
FROM TABLA
GROUP BY NOMBRE_CAMPO
HAVING COUNT(*) > 1