Cómo instalar MariaDB en FreeBSD 12.1

En este artículo veremos cómo instalar MariaDB en FreeBSD 12.1 paso a paso, de forma que al final tendrás este potente servicio de bases de datos relacionales funcionando en tu servidor o VPS FreeBSD listo para tus desarrollos o como backend para tus aplicaciones.

Antes de instalar MariaDB en FreeBSD 12.1

Para seguir esta guía de instalación y configuración de MariaDB en FreeBSD 12.1 hasta el final, deberías partir de los siguientes requisitos básicos:

  • Una máquina FreeBSD 12.1 actualizada.
  • Acceso a terminal de comandos como root o un usuario con privilegios de sudo.
  • Conexión a Internet.

Cómo instalar MariaDB en FreeBSD 12.1

Vamos a instalar MariaDB en FreeBSD 12.1 usando paquetes disponibles en los propios repositorios del sistema, así que sería conveniente actualizar las listas de paquetes:

$ sudo pkg update

En el momento de escribir este artículo dispones de las versiones 10.3 y 10.4 de MariaDB Server en FreeBSD 12.1. En este tutorial instalaremos la última versión, pero si prefieres usar otra sustituye 104 por lo que corresponda en los nombres de los paquetes.

Instalamos MariaDB con pkg:

$ sudo pkg install -y mariadb104-server

Tras la descarga e instalación del paquete mariadb104-server y sus dependencias, se creará un nuevo servicio en nuestro sistema FreeBSD 12.1, el servicio mysql-server, que por defecto no está iniciado, ya que tenemos que hacer la inicialización de forma manual.

Las últimas revisiones de MariaDB 10.4 para FreeBSD 12.1 no preparan correctamente el sistema, ya que es necesario configurar los permisos adecuados para algún directorio al que debe acceder MariaDB:

~$ sudo chown mysql /var/run/mysql/

Ya podemos habilitar MariaDB para que inicie automáticamente junto con FreeBSD 12.1 con la opción enable del comando service:

$ sudo service mysql-server enable

Y arrancaremos por primera vez el servicio de forma manual con el comando sudo service mysql-server start:

~$ sudo service mysql-server start
Installing MariaDB/MySQL system tables in '/var/db/mysql' ...
OK

To start mysqld at boot time you have to copy
support-files/mysql.server to the right place for your system


Two all-privilege accounts were created.
One is root@localhost, it has no password, but you need to
be system 'root' user to connect. Use, for example, sudo mysql
The second is mysql@localhost, it has no password either, but
you need to be the system 'mysql' user to connect.
After connecting you can set the password, if you would need to be
able to connect as any of these users with a password and without sudo

See the MariaDB Knowledgebase at http://mariadb.com/kb or the
MySQL manual for more instructions.

You can start the MariaDB daemon with:
cd '/usr/local' ; /usr/local/bin/mysqld_safe --datadir='/var/db/mysql'

You can test the MariaDB daemon with mysql-test-run.pl
cd '/usr/local/mysql-test' ; perl mysql-test-run.pl

Please report any problems at http://mariadb.org/jira

The latest information about MariaDB is available at http://mariadb.org/.
You can find additional information about the MySQL part at:
http://dev.mysql.com
Consider joining MariaDB's strong and vibrant community:
Get Involved
Starting mysql.

Podemos comprobar que MariaDB se encuentra en ejecución con la opción status:

~$ sudo service mysql-server status
mysql is running as pid 1208.

Cómo instalar un cliente de MariaDB en FreeBSD 12.1

Si estás instalando MariaDB Server en FreeBSD 12.1, entonces no hay que hacer nada más, ya que el cliente se instala como dependencia del servicio.

Sin embargo, si sólo deseas un cliente para conectar remotamente a otros servidores, deberás instalar el paquete mariadb104-client con pkg:

$ sudo pkg install -y mariadb104-client

Una vez instalado, el cliente de consola se llama mysql:

~$ mysql --help |more
mysql  Ver 15.1 Distrib 10.4.13-MariaDB, for FreeBSD12.1 (amd64) using  EditLine wrapper
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Usage: mysql [OPTIONS] [database]
...

Cómo configurar MariaDB en FreeBSD 12.1

Tras la instalación debemos conectar con el cliente mysql al servicio para realizar algunos ajustes de seguridad:

~$ sudo mysql
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 16
Server version: 10.4.13-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.

>

Base de datos de pruebas

Por ejemplo, si examinamos las bases de datos disponibles por defecto, observaremos que existe una llamada test:

> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| test               |
+--------------------+
4 rows in set (0.002 sec)

>

Deberíamos eliminarla:

> drop database test;

Usuarios por defecto

Por otro lado, podemos saber cuáles son los usuarios por defecto examinando algunas columnas de la tabla mysql.user:

> 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  |                       |
|             | freebsd121 |                       |
+-------------+------------+-----------------------+
5 rows in set (0.002 sec)

>

Descubrimos dos usuarios anónimos que deberíamos eliminar:

> drop user ''@localhost;

Y:

> drop user ''@freebsd121;

Para este último usuario, la parte host (a la derecha de la @) dependerá del nombre de tu sistema.

Juego de caracteres por defecto

Por último, deberíamos comprobar los juegos de caracteres empleados por el servicio:

> 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/ |
+--------------------------+----------------------------------+
8 rows in set (0.002 sec)

>

Observa que se emplea el juego de caracteres latin1, cuando lo ideal sería usar utf8 o utf8mb4. Configuraremos esto más adelante en el archivo my.cnf.

Crear un administrador alternativo

Para poder trabajar a nivel administrativo e incluso remotamente con un usuario «menos conocido» que root, podemos crear una nueva cuenta de superusuario:

> grant all privileges on *.* to chacho identified by 'XXXXXXXX' with grant option;

Este usuario podrá acceder remotamente porque se llama simplemente usuario, que equivale a usuario@’%’, en lugar de usuario@localhost.

Modo de autenticación de root

Puedes dejar el acceso a root mediante sudo, pero ¿y si prefieres usar contraseña con el administrador root? Podemos aprovechar la sesión para crearla:

> alter user root@localhost identified by 'XXXXXXXX';

Si has decidido hacer esto, la próxima vez que quieras iniciar sesión con root tendrás que especificarlo:

~$ mysql -u root -p
Enter password:
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 20
Server version: 10.4.13-MariaDB FreeBSD Ports
...
>

Si alguna vez prefieres regresar al sistema de acceder mediante sudo, haz el siguiente cambio:

> alter user root@localhost identified via unix_socket;

Y no olvides refrescar la tabla de permisos siempre que realices cambios sobre usuarios:

> flush privileges;

Cerrar la sesión

Ya podemos cerrar la sesión con el comando exit:

> exit

Archivos de configuración de MariaDB en FreeBSD 12.1

Para configurar MariaDB en FreeBSD 12.1 a través de sus archivos de configuración trabajaremos sobre el directorio /usr/local/etc/mysql/.

El archivo principal, my.cnf, sólo configura el puerto de escucha y el archivo de socket, cargando el resto de configuración desde el subdirectorio conf.d/.

Vamos a editar el archivo server.cnf para realiar algún ajuste más:

~$ sudo nano /usr/local/etc/mysql/conf.d/server.cnf

Aprovecharemos para configurar el juego de caracteres del servicio a utf8 o utf8mb4, añadiendo una directiva en la sección server o en la sección mysqld:

...
[server]
...
character-set-server = utf8mb4
...

Guardados los cambios y cerrado el archivo, habrá que reiniciar el servicio para aplicar los nuevos ajustes:

~$ sudo service mysql-server restart

Configurar el acceso remoto a MariaDB en FreeBSD 12.1

La configuración por defecto de MariaDB en FreeBSD 12.1 no permite el acceso remoto, como podemos comprobar si desde otro sistema en red tratamos de acceder al servidor FreeBSD 12.1 con un cliente como mysql.

Por ejemplo, la máquina FreeBSD 12.1 sobre la que realizamos este artículo es accesible en el subdominio freebsd121.local.lan, que usaremos como valor del argumento -h para el cliente mysql, y con el parámetro -u indicaremos nuestro usuario con capacidades de acceso remoto:

~$ mysql -h freebsd121.local.lan -u chacho -p

como instalar y configurar mariadb en freebsd 12.1

Para activar el acceso remoto tendremos que editar el archivo server.cnf:

~$ sudo nano /usr/local/etc/mysql/conf.d/server.cnf

Buscaremos 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
...

Tras guardar y cerrar el archivo, habrá que reiniciar el servicio:

~$ sudo service mysql-server restart

Ahora cualquier usuario con el acceso adecuado podrá conectar desde otro sistema en la red:

como configurar mariadb en freebsd 12.1

Conclusión

Ya sabes cómo instalar y configurar MariaDB en FreeBSD 12.1, un sistema de bases de datos relacionales cada día más popular y más usado en distintos tipos de desarrollos, especialmente como soporte de complejas aplicaciones.

En caso de dudas o preguntas, sugerencias, notificaciones o cualquier otro particular, puedes dejar un comentario.

¡Apoya este sitio!

Y si te ha resultado útil esta guía de instalación de MariaDB en FreeBSD 12.1 y quieres agradecérnoslo, cualquier pequeña aportación ayuda al mantenimiento y creación de más guías y artículos sobre FreeBSD 12.1 o MariaDB, y puedes hacerlo invitándonos a un café:

 

O dejando una propina de 1 $ en PayPal:

¡Gracias!

Valora esta entrada

1 estrella2 estrellas3 estrellas4 estrellas5 estrellas (2 votos, promedio: 5,00 de 5)
Cargando...

Deja un comentario

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies.

ACEPTAR
Aviso de cookies