En esta entrada vamos a ver cómo instalar MariaDB en FreeBSD 12 paso a paso, de modo que dejaremos configurado y listo para tabajar este potente motor de bases de datos relacionales, pieza importantísima en la configuación de muchos tipos de aplicaciones, especialmente aplicaciones web residentes en tu servidor o VPS FreeBSD.
Contenido
Antes de instalar MariaDB en FreeBSD 12
Para poder seguir esta guía de instalación de MariaDB en FreeBSD 12 será necesario partir del siguiente escenario:
- Una máquina FreeBSD 12 actualizada.
- Un usuario con pemisos de sudo.
- Acceso a Internet.
Como seguramente ya cumples todos estos requisitos puedes ir abriendo una terminal de consola para ponernos manos a la obra.
Cómo instalar MariaDB en FreeBSD 12
Vamos a instalar MariaDB en FreeBSD 12 desde los repositorios oficiales del sistema. A diferencia de otras distribuciones, aquí no vamos a encontrar un metapaquete que referencie a la última versión del software que queremos instalar. Veremos las distintas versiones que tenemos disponibles y seleccionaremos la que nos interese, normalmente la última.
Cómo descargar MariaDB para FreeBSD 12
Con la herramienta pkg investigaremos qué versiones de MariaDB tenemos disponibles:
~$ pkg search mariadb |grep -i server mariadb103-server-10.3.30 Multithreaded SQL database (server) mariadb104-server-10.4.20 Multithreaded SQL database (server) mariadb105-server-10.5.11 Multithreaded SQL database (server)
Vemos las versiones disponibles de MariaDB Server, siendo la que nos interesa la última versión. Si necesitas instalar otra versión por algún motivo, basta con indicar el paquete deseado.
~$ sudo pkg install -y mariadb105-server
Al instalar el servidor, además de las dependencias, se instala también el cliente de consola mysql.
Cómo configurar MariaDB en FreeBSD 12
El servicio MariaDB, que en el sistema se llama mysql-server, no inicia automáticamente ni se configura para arrancar con el sistema, como podemos comprobar con el comando service:
~$ sudo service mysql-server onestatus mysql is not running.
Para activar MariaDB como servicio permanente del sistema y que arranque en cada inicio del mismo, usaremos la opción enable del comando service:
~$ sudo service mysql-server enable
Sólo en el caso de haber instalado MariaDB 10.4, antes de iniciar el servicio debemos ajustar los permisos del directorio /var/run/mysql, ya que el instalador del paquete no lo hace y no será posible arrancar el servicio:
~$ sudo chown mysql /var/run/mysql/
Ahora sí, para iniciar el servidor MariaDB usaremos también service:
~$ sudo service mysql-server start
Este comando mostrará mucha información sobre el primer inicio de MariaDB Server en FreeBSD 12:
~$ 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 https://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 https://mariadb.org/jira The latest information about MariaDB is available at https://mariadb.org/. You can find additional information about the MySQL part at: https://dev.mysql.com Consider joining MariaDB's strong and vibrant community:Get InvolvedStarting mysql.
La primera vez que inicia el servicio arroja mucha información, las siguientes veces será más silencioso.
Podemos comprobar que el servicio se encuentra en ejecuión con la opción status del comando service:
~$ sudo service mysql-server status mysql is running as pid 1240.
Una vez iniciado MariaDB Server deberíamos ejecutar el script mysql_secure_installation para hacer más segura nuestra instalación, ya que nos permitirá:
- Elegir entre el método de autenticación unix_socket sin contraseña o autenticación con contraseña para el usuario root.
- Crear una contraseña para el usuario root que, por defecto, no tiene.
- Eliminar los usuarios anónimos.
- Desactivar el acceso remoto para el usuario root.
- Eliminar la base de datos de pruebas.
- Finalmente, recargar la tabla de privilegios de MariaDB para que los cambios hagan efecto de inmediato.
~$ sudo mysql_secure_installation
Ya tenemos el servicio listo para trabajar con él, creando bases de datos, usuarios, etc.
Por cierto, el usuario y grupo con que se ejecuta el servicio es mysql y mysql, respectivamente.
Cómo crear un usuario en MariaDB Server
Ya que hemos cerrado el acceso remoto para el usuario root, puede ser interesante crear un nuevo usuario con capacidades administrativas y con acceso remoto para trabajar, por ejemplo desde MySQL Workbench.
Iniciaremos sesión con el cliente mysql para crear el nuevo usuario:
$ mysql -u root -p Enter password: Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 19 Server version: 10.5.11-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. >
En MariaDB podemos crear el usuario y concederle permisos con una única sentencia:
> grant all privileges on *.* to chacho identified by 'XXXXXXXX' with grant option;
Este usuario tendrá todos los privilegios sobre todas las bases de datos, podrá crear usuarios y concederles permisos, y al no haber añadido a su nombre ningún dominio (con el carácter @), puede conectar al servicio desde cualquier ubicación.
Cómo configurar MariaDB Server en FreeBSD 12
Para configurar MariaDB Server en FreeBSD 12 es necesario trabajar sobre sus archivos de configuración organizados en la ruta /usr/local/etc/mysql/, siendo el archivo principal server.cnf.
Para aplicar cualquier cambio de configuración de MariaDB, será necesario reiniciar el servicio:
~$ sudo service mysql-server restart
Juego de caracteres por defecto
Por defecto MariaDB Server trabaja en FreeBSD 12 con el juego de caracteres latin1, que se antoja insuficiente para las modernas aplicaciones capaces de funcionar en idiomas distintos al inglés. Lo ideal será trabajar con utf8 o utf8mb4, para lo que editaremos el archivo server.cnf:
~$ sudo nano /usr/local/etc/mysql/conf.d/server.cnf
Buscaremos la sección server o la sección mysqld y añadiremos la directiva character-set-server con el valor que nos interese:
... [server] ... character-set-server = utf8mb4 ...
Guardamos los cambios y reiniciamos el servicio para pasar a trabajar con la nueva configuración.
Cómo configurar MariaDB para acceso remoto en FreeBSD 12
Por defecto MariaDB en FreeBSD 12 sólo permite conexiones locales, lo que podemos comprobar fácilmente si intentamos acceder desde otro sistema en red con un cliente como mysql, especificando con el parámetro -h la dirección del servidor FreeBSD 12:
~$ mysql -h freebsd12.local.lan -u chacho -p
Por tanto, si necesitamos permitir el acceso remoto a MariaDB en FreeBSD 12 tendremos que editar el archivo server.cnf:
~$ sudo nano /usr/local/etc/mysql/conf.d/server.cnf
Buscamos la directiva bind-address:
... bind-address = 127.0.0.1 ...
La configuración de esta directiva sólo permite conexiones desde la propia máquina FreeBSD 12, pero simplemente desactivándola MariaDB atenderá peticiones remotas o en red:
... #bind-address = 127.0.0.1 ...
Habrá que guardar los cambios y reiniciar el servicio para aplicar los cambios.
Ahora podemos acceder desde otra máquina de la red local al servicio MariaDB que acabamos de configurar en FreeBSD 12 mediante el cliente de consola mysql:
Podemos apreciar que en el mensaje de saludo aparece la versión de MariaDB y para qué sistema ha sido compilada (ports de FreeBSD).
Conclusión
Ahora que ya sabes cómo instalar MariaDB en FreeBSD 12 tienes una gran plataforma para montar aplicaciones de intranet o Internet, ya que es una pieza imprescindible en sistemas FAMP para sitios web avanzados, entre otro tipo de aplicaciones.
Si tienes alguna duda o pregunta, has detectado algún error o quieres sugerir algún artículo nuevo, déjame un comentario.
¡Apoya comoinstalar.me!
¿Ha sido de alguna utilidad para tí este artículo? Si te ha servido para ahorrar tiempo y solventar problemas, quizás estés tan satisfecho que quieras ayudarnos con una mínima aportación para mantenimiento este sitio web y la redacción de otros artículos tan buenos o mejores que este, y puedes hacerlo dejando 1 $ de propina en PayPal:
O, si te sientes especialmente agradecido, invitándonos a un café:
¡Gracias!