En esta ocasión vamos a ver cómo instalar MariaDB en FreeBSD 11 paso a paso de modo que puedas trabajar con uno de los sistemas de bases de datos relacionales más usados sobre tu servidor o VPS FreeBSD.
Contenido
Antes de instalar MariaDB en FreeBSD 11
Para seguir los pasos de esta guía de instalación de MariaDB Server en FreeBSD 11 sólo se necesita cumplir los siguientes requisitos:
- Una máquina FreeBSD 11 actualizada.
- Un usuario con permisos de sudo, o el mismo root.
- Acceso a Internet.
Cómo instalar MariaDB en FreeBSD 11
Vamos a instalar MariaDB Server en FreeBSD 11 desde los repositorios del sistema, por lo que el primer paso será actualizar las listas de paquetes:
~$ sudo pkg update
En el momento de redactar este artículo disponemos de las versiones 10.3, 10.4 y 10.5 de MariaDB, los paquetes mariadb103-server, mariadb104-server y mariadb105-server respectivamente. En este caso instalaremos MariaDB 10.5 con pkg:
~$ sudo pkg install -y mariadb105-server
Cómo instalar el cliente de MariaDB para FreeBSD 11
En el caso de que sólo necesites instalar el cliente de MariaDB para FreeBSD 11, el paquete que necesitas es mariadb10X-client (sustituye X por 3, 4 ó 5, dependiendo de la versión que te interese):
~$ sudo pkg install -y mariadb105-client
Si has instalado MariaDB Server no necesitas instalar este paquete, ya que el cliente de MariaDB es una de las dependencias.
Configuración del servicio
Tras la descarga e instalación de MariaDB Server y sus dependencias se crea un nuevo servicio en FreeBSD 11, el servicio mysql-server.service o mysql-server, que por defecto no queda habilitado ni en ejecución.
En primer lugar habilitaremos el servicio para que inicie automáticamente con el sistema y para poder usar las opciones de gestión habituales de service, editando el archivo rc.conf:
~$ sudo nano /etc/rc.conf
Añadimos la siguiente línea al final del archivo:
... mysql_enable="YES"
Guardados los cambios y cerramos el archivo.
El instalador del paquete de MariaDB no ajusta correctamente ciertos permisos, así que de forma manual cambiamos el propietario del directorio /var/run/mysql para que el servicio pueda escribir en esa ubicación:
~$ sudo chown mysql:mysql /var/run/mysql/
Ya es posible iniciar el servicio:
~$ sudo service mysql-server start
Podemos comprobar que MariaDB Server se encuentra en ejecución con el comando sudo service mysql-server status
:
Cómo asegurar MariaDB en FreeBSD 11
Normalmente lo primero que se hace tras instalar MariaDB Server en FreeBSD 11 es ajustar el servicio con herramientas como mysql_secure_installation, aunque podemos hacer estos ajustes de forma manual.
Por defecto el superusuario root de MariaDB Server viene configurado para usarse sin contraseña, a través del comando sudo:
~$ sudo mysql Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 3 Server version: 10.5.6-MariaDB FreeBSD Ports Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. root@localhost [(none)]>
Podemos comprobar las bases de datos existentes por defecto:
> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | test | +--------------------+ >
Eliminamos la base de datos de pruebas test:
> drop database test;
Consultamos ahora la lista de usuarios:
> select user,host,plugin from mysql.user; +-------------+------------+-----------------------+ | User | Host | plugin | +-------------+------------+-----------------------+ | mariadb.sys | localhost | mysql_native_password | | root | localhost | mysql_native_password | | mysql | localhost | mysql_native_password | | | localhost | | | | freebsd11 | | +-------------+------------+-----------------------+ >
Podemos comprobar que existen dos usuarios anónimos, que eliminaremos:
> drop user ''@localhost,''@freebsd11;
Es posible que nos interese crear un usuario con capacidades administrativas, protegido por contraseña e incluso con acceso remoto:
> grant all privileges on *.* to chacho identified by 'XXXXXXXX' with grant option;
Por último, comprobaremos el juego de caracteres que utiliza MariaDB por defecto:
> show variables like 'char%'; +--------------------------+----------------------------------+ | Variable_name | Value | +--------------------------+----------------------------------+ | character_set_client | utf8 | | character_set_connection | utf8 | | character_set_database | latin1 | | character_set_filesystem | binary | | character_set_results | utf8 | | character_set_server | latin1 | | character_set_system | utf8 | | character_sets_dir | /usr/local/share/mysql/charsets/ | +--------------------------+----------------------------------+ >
Observamos que se está usando el juego de caracteres latin1 en lugar de utf8 o utf8mb4, que sería lo deseable.
Podemos cerrar la sesión con exit:
> exit
Cómo configurar MariaDB Server en FreeBSD 11
Para configurar MariaDB Server en FreeBSD 11 trabajaremos sobre los archivos de configuración organizados bajo la ruta /usr/local/etc/mysql/. El archivo más importante sería server.cnf, que podemos editar para realizar algunos cambios:
~$ sudo nano /usr/local/etc/mysql/conf.d/server.cnf
Por ejemplo, para configurar el juego de caracteres del servidor MariaDB añadiremos la directiva character-set-server en la sección server o en la sección mysqld:
... [server] ... character-set-server=utf8mb4 ...
Puedes elegir un valor como utf8 o utf8mb4, dependiendo de tus preferencias o necesidades.
Guardamos los cambios y reiniciamos el servicio:
~$ sudo service mysql-server restart
Acceso remoto a MariaDB en FreeBSD 11
Si estamos interesados en acceder remotamente a MariaDB Server en FreeBSD 11 tendremos que realizar algún ajuste de configuración, ya que por defecto el servicio sólo atiende conexiones locales. Para ellos editamos server.cnf:
~$ sudo nano /usr/local/etc/mysql/conf.d/server.cnf
Buscamos la directiva bind-address:
... bind-address = 127.0.0.1 ...
Bastará con desactivarla, insertando un carácter # al inicio de línea:
... #bind-address = 127.0.0.1 ...
Guardamos los cambios y reiniciamos el servicio:
~$ sudo service mysql-server restart
Desde este momento ya es posible recibir conexiones externas, por ejemplo desde otros sistemas que tengan instalado un cliente como mysql, indicando con el parámetro -h la dirección del servidor FreeBSD 11, con el parámetro -u nuestro usuario con permiso de acceso remoto y añadiendo el parámetro -p para que se nos solicite la contraseña:
~$ mysql -h freebsd11.local.lan -u chacho -p
Ya podemos trabajar sobre nuestro servicio MariaDB como si lo hicieramos de forma local en la máquina FreeBSD 11.
Conclusión
Ahora que sabes cómo instalar y configurar MariaDB en FreeBSD 11 ya puedes trabajar con uno de los motores de bases de datos relacionales más usados, tanto para tus propios desarrollos como para soporte de aplicaciones de terceros.
En caso de dudas, preguntas, sugerencias, notificación de posibles errores, etc. puedes dejar un comentario que responderemos gustosamente.
¡Apoya comoinstalar.me!
¿Ya puedes trabajar con bases de datos relacionales en tu propio sistema gracias a esta breve guía de instalación y configuración? Si es así y quieres agradecérnoslo contribuyendo al mantenimiento de este sitio y la creación de más tutoriales y guías, puedes hacerlo dejando una simbólica propina de 1 $ desde PayPal:
O, si te sientes especialmente agradecido, invitándonos a un café:
¡Gracias!