MariaDB no Linux: O que é, como instalar (Ubuntu/CentOS/Debian) e configuração segura

1. O que é MariaDB?

Visão geral e principais recursos do MariaDB

MariaDB é um sistema de gerenciamento de banco de dados relacional (RDBMS) de código aberto. Ele foi desenvolvido com base no MySQL e é amplamente adotado em muitos sistemas e aplicações devido à sua alta compatibilidade.

Originalmente, após a aquisição do MySQL pela Oracle, alguns de seus desenvolvedores se separaram e lançaram o projeto MariaDB. Como resultado, o MariaDB mantém um conjunto de comandos e estruturas de dados semelhantes ao MySQL, ao mesmo tempo em que enfatiza a abertura e a transparência em seu design.

O MariaDB é gratuito e suporta uma ampla gama de propósitos tanto para uso comercial quanto não comercial. Em particular, ele tem um histórico sólido em ambientes de servidores Linux e é altamente valorizado por sua estabilidade, desempenho e segurança.

Diferenças em relação ao MySQL

MariaDB e MySQL são muito semelhantes, e muitos comandos e arquivos de configuração podem ser usados como estão. No entanto, existem várias diferenças importantes.

  • Diferenças de licenciamento Como o MySQL é desenvolvido e gerenciado pela Oracle, restrições de licenciamento podem se aplicar em alguns cenários de uso comercial. O MariaDB, por outro lado, é baseado na GPL (Licença Pública Geral GNU), permitindo um uso mais flexível.
  • Velocidade de desenvolvimento e abordagem orientada à comunidade O MariaDB é desenvolvido ativamente de forma orientada à comunidade e tende a introduzir novos recursos mais rapidamente. Ele é especialmente forte em recursos voltados para empresas (como opções de mecanismos de armazenamento e otimizações de desempenho).
  • Extensibilidade e compatibilidade O MariaDB mantém alta compatibilidade com o MySQL ao mesmo tempo em que oferece seus próprios mecanismos de armazenamento (como Aria e ColumnStore), permitindo operações flexíveis dependendo do seu caso de uso. No entanto, à medida que as versões evoluem, diferenças de compatibilidade podem surgir, portanto, é necessário cautela ao migrar.

Benefícios de escolher o MariaDB

Ao implantar um banco de dados em um ambiente Linux, o MariaDB oferece os seguintes benefícios:

  • Instalação fácil com uma configuração simples
  • Desempenho leve e rápido
  • Escalabilidade que pode lidar com processamento de dados em grande escala
  • Operação estável a longo prazo
  • Amplo conhecimento e recursos de suporte de desenvolvedores em todo o mundo

Por essas razões, o MariaDB é escolhido para uma ampla variedade de ambientes, desde configurações de desenvolvimento pessoal até sistemas de produção corporativos.

2. Preparação antes da instalação

Antes de instalar o MariaDB em um ambiente Linux, há vários pontos a confirmar e etapas de preparação a concluir. Pular esta etapa pode gerar problemas mais tarde, portanto, a preparação antecipada é muito importante.

Verificar requisitos do sistema

O MariaDB é um banco de dados leve e rápido, mas ainda possui requisitos mínimos de sistema. Abaixo estão diretrizes gerais de requisitos (eles variam dependendo da versão e de como você o utiliza):

  • SO : Distribuições Linux como Ubuntu, Debian, CentOS e RHEL
  • CPU : 1GHz ou superior (multinúcleo recomendado)
  • Memória : 512MB ou mais (1GB ou mais recomendado)
  • Armazenamento : 1GB ou mais de espaço livre (ajuste conforme necessário dependendo do volume de dados)
  • Rede : Conexão à Internet necessária para baixar pacotes e aplicar atualizações

Observe que em distribuições Linux mais antigas, as versões mais recentes do MariaDB podem não ser suportadas. Verifique sua versão do Linux e, se necessário, adicione repositórios ou tome outras medidas adequadas.

Verificar e atualizar pacotes necessários

Para instalar o MariaDB, normalmente você usa o gerenciador de pacotes padrão do SO (como APT ou YUM). Atualizar seu sistema previamente ajuda a evitar problemas de dependência.

Aqui está um exemplo para Ubuntu/Debian:

sudo apt update
sudo apt upgrade -y

No CentOS/RHEL, execute o seguinte:

sudo yum update -y

Além disso, verifique se os seguintes pacotes estão instalados (instale-os se estiverem ausentes):

  • curl : Usado ao adicionar o repositório MariaDB
  • gnupg : Usado para verificar chaves de assinatura
  • software-properties-common (principalmente para Ubuntu): Necessário para gerenciar PPAs. Nem sempre necessário no Debian.

Considere usar o repositório oficial do MariaDB

Em muitas distribuições Linux, o MariaDB está incluído nos repositórios de pacotes padrão, mas a versão fornecida pode ser mais antiga.

Se você quiser sempre usar a versão estável mais recente, pode adicionar o repositório oficial do MariaDB. A próxima seção apresenta passos específicos por SO, mas decidir antecipadamente qual versão você usará tornará a instalação mais tranquila.

3. Etapas de Instalação por Distribuição Principal

O MariaDB está disponível em muitas distribuições Linux, mas os métodos de instalação diferem ligeiramente. Nesta seção, percorreremos etapas detalhadas de instalação para três distribuições representativas: Ubuntu, CentOS e Debian.

Instalando MariaDB no Ubuntu

No Ubuntu, você instala o MariaDB usando o gerenciador de pacotes APT. Esta seção tem como alvo Ubuntu 20.04 / 22.04 LTS.

1. Atualize a lista de pacotes

sudo apt update

2. Instale o MariaDB

sudo apt install mariadb-server -y

Este comando instala automaticamente o MariaDB e os pacotes de dependência necessários.

3. Inicie e habilite o serviço

sudo systemctl start mariadb
sudo systemctl enable mariadb

4. Verifique se está em execução

sudo systemctl status mariadb

Se você vir “active (running)”, ele foi iniciado com sucesso.

Instalando MariaDB no CentOS

No CentOS 7 e no CentOS Stream 8, você usa YUM ou dnf. Como os repositórios padrão costumam fornecer versões mais antigas, é comum adicionar o repositório oficial.

1. Adicione o repositório oficial (exemplo: MariaDB 10.6)

sudo vi /etc/yum.repos.d/MariaDB.repo

Cole o seguinte e salve:

[mariadb]
name = MariaDB
baseurl = https://downloads.mariadb.com/MariaDB/mariadb-10.6/yum/centos7-amd64
gpgkey=https://downloads.mariadb.com/MariaDB/MariaDB-Server-GPG-KEY
gpgcheck=1

*Ajuste a versão e as configurações do SO conforme necessário para o seu ambiente.

2. Instale os pacotes

sudo yum install mariadb-server -y

Ou no CentOS Stream 8 e posteriores:

sudo dnf install mariadb-server -y

3. Inicie e habilite o serviço

sudo systemctl start mariadb
sudo systemctl enable mariadb

Instalando MariaDB no Debian

O Debian também usa APT, mas ao usar o repositório oficial do MariaDB em vez dos repositórios padrão, você pode instalar a versão estável mais recente.

1. Instale os pacotes de dependência

sudo apt install curl software-properties-common gnupg -y

2. Adicione o repositório MariaDB (exemplo: Debian 11 “Bullseye”)

curl -LsS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash

3. Instale

sudo apt update
sudo apt install mariadb-server -y

4. Inicie e habilite o serviço

sudo systemctl start mariadb
sudo systemctl enable mariadb

4. Configuração de Conjunto de Caracteres

Um dos pontos mais importantes ao usar o MariaDB em um ambiente japonês é configurar o conjunto de caracteres (encoding). Como o japonês inclui caracteres multibyte, iniciar a operação com configurações incorretas pode levar a problemas como texto corrompido ou perda de dados.

Conjunto de Caracteres Recomendado para Ambientes Japoneses: UTF-8

Para o MariaDB, o conjunto de caracteres recomendado é utf8mb4. Ele é mais robusto que o legado utf8 e suporta caracteres de 4 bytes, como emojis, tornando‑se adequado não apenas para o japonês, mas também para ambientes multilíngues.

Nas configurações padrão da família MySQL, você pode encontrar latin1 ou utf8, e deixá‑los assim pode causar problemas. Portanto, altere a configuração para utf8mb4 logo após a instalação.

Como editar o arquivo de configuração (my.cnf)

O arquivo de configuração do MariaDB geralmente está localizado em /etc/mysql/my.cnf ou /etc/my.cnf. Adicione ou edite as seções [client] e [mysqld] conforme mostrado abaixo.

[client]
default-character-set = utf8mb4
[mysqld]
character-set-server = utf8mb4
collation-server = utf8mb4_general_ci

Depois de alterar as configurações, reinicie o MariaDB para aplicá-las:

sudo systemctl restart mariadb

Verificar se as Configurações Foram Aplicadas

Conecte-se ao MariaDB e confirme que as configurações foram aplicadas.

sudo mariadb

Após conectar, execute o seguinte comando:

SHOW VARIABLES LIKE 'character\_set%';

Saída de exemplo esperada:

character_set_client    utf8mb4
character_set_connection utf8mb4
character_set_database   utf8mb4
character_set_results    utf8mb4
character_set_server     utf8mb4

Se a saída for semelhante a esta, a configuração de conjunto de caracteres foi aplicada corretamente.

Nota: Conjuntos de Caracteres para Dados Existentes

Se você já possui bancos de dados ou tabelas existentes, seus conjuntos de caracteres não serão alterados automaticamente. Se necessário, você deve alterá-los individualmente com uma instrução ALTER como a seguinte:

ALTER DATABASE your_database_name CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci;

Da mesma forma, você pode alterar as configurações no nível da tabela ou da coluna.

5. Configuração de Segurança

Logo após instalar o MariaDB, a segurança não está totalmente reforçada. Ao aplicar configurações de segurança essenciais mínimas antes do uso em produção, você pode reduzir o risco de acesso não autorizado e vazamento de dados. Esta seção apresenta os passos básicos de configuração de segurança do MariaDB.

Executar mysql_secure_installation

O MariaDB fornece um script de reforço de segurança que você deve executar imediatamente após a instalação: mysql_secure_installation.

Execute‑o com o seguinte comando:

sudo mysql_secure_installation

Ao executá‑lo, várias perguntas serão exibidas em sequência. Veja o que cada opção significa.

  1. Definir (ou atualizar) a senha do root → Defina uma senha para o usuário administrador do MariaDB “root”. Use uma senha forte.
  2. Remover usuários anônimos → Por padrão, pode existir um usuário “anônimo”. Isso é desnecessário e arriscado, portanto a remoção é recomendada .
  3. Desabilitar login remoto do root → Permitir acesso root diretamente de redes externas é extremamente perigoso. Na maioria dos casos, defina isso como desabilitado .
  4. Remover o banco de dados de teste → O banco de dados “test” criado para testes também é desnecessário em muitos casos. A remoção é recomendada .
  5. Recarregar tabelas de privilégios → Isso aplica as alterações acima imediatamente. Confirme com “Sim” .

Responder a todas essas perguntas fortalece significativamente a segurança do MariaDB em seu estado inicial padrão.

Configuração de Firewall (Se Necessário)

O MariaDB normalmente se comunica pela porta 3306. Se você deve abrir essa porta depende de como planeja usar o sistema.

  • Ao usá‑lo localmente ou em um servidor independente → Você pode manter a porta 3306 fechada.
  • Ao permitir acesso externo (por exemplo, conectando de um aplicativo em outro servidor) → Abra o acesso apenas para os endereços IP necessários.

Exemplo: Limitando acesso com UFW no Ubuntu

sudo ufw allow from 192.168.0.10 to any port 3306

Criar um Usuário Diferente do root (Recomendado)

Em produção, a melhor prática é criar e usar uma conta de usuário dedicada em vez do usuário administrador “root”. Aqui está um exemplo:

CREATE USER 'appuser'@'localhost' IDENTIFIED BY 'secure_password';
GRANT ALL PRIVILEGES ON your_database.* TO 'appuser'@'localhost';
FLUSH PRIVILEGES;

Usar usuários separados por aplicação ajuda a minimizar o impacto caso as credenciais sejam comprometidas.

6. Verificação

Depois de instalar o MariaDB, concluir a configuração inicial e aplicar as medidas de segurança, o passo final é verificar se tudo está funcionando corretamente. Esta seção explica como confirmar a conectividade e executar comandos SQL básicos.

Conectar ao MariaDB

Após a instalação, verifique se você pode conectar ao MariaDB com o seguinte comando:

sudo mariadb

Ou, se você quiser especificar o usuário e fornecer uma senha:

mariadb -u root -p

Quando solicitado, insira a senha que você definiu com mysql_secure_installation.

Se o login for bem‑sucedido, você verá um prompt como o seguinte:

Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 10
Server version: 10.6.16-MariaDB MariaDB Server

Se você vir isso, o MariaDB está rodando normalmente e você pode conectar com sucesso.

Criar um Banco de Dados

Em seguida, como um teste simples, crie um banco de dados.

CREATE DATABASE testdb CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

Se for executado com sucesso, o banco de dados foi criado sem problemas.

Verifique a lista de bancos de dados que você tem:

SHOW DATABASES;

Se testdb aparecer, funcionou.

Criar uma Tabela e Inserir Dados

Crie uma tabela de teste e insira alguns dados.

USE testdb;

CREATE TABLE users (
  id INT AUTO_INCREMENT PRIMARY KEY,
  name VARCHAR(50),
  email VARCHAR(100)
);

INSERT INTO users (name, email) VALUES ('田中太郎', 'taro-tanaka@example.com');

※Este exemplo verifica se texto multibyte (japonês) é armazenado corretamente usando utf8mb4.

Recuperar Dados

Para confirmar os dados inseridos, execute a seguinte consulta.

SELECT * FROM users;

Se a saída mostrar as informações de Taro Tanaka, você pode concluir que o banco de dados está funcionando corretamente.

Verificar Informações do Servidor

Se você quiser verificar informações básicas, como a versão do MariaDB, execute o seguinte comando:

STATUS;

Isso exibe detalhes como o status da conexão, versão do servidor e configuração do conjunto de caracteres.

7. FAQ (Perguntas Frequentes)

Ao instalar e operar o MariaDB em um ambiente Linux, muitas pessoas encontram perguntas ou problemas comuns. Saber como lidar com eles antecipadamente pode ser tranquilizador. Aqui, resumimos os pontos mais pesquisados em formato de FAQ para usuários iniciantes até intermediários.

Q1. Como posso verificar a versão do MariaDB?

Depois de conectar ao MariaDB, você pode verificá‑la executando o seguinte comando.

SELECT VERSION();

Ou, você pode verificar diretamente na linha de comando assim:

mariadb --version

Exemplo de saída:

mariadb  Ver 15.1 Distrib 10.6.16-MariaDB, for Linux (x86_64)

Q2. O que devo fazer se eu vir “Pacote não encontrado” durante a instalação?

Verifique o seguinte:

  • A lista de pacotes não está atualizada → Execute sudo apt update ou sudo yum update , então tente novamente
  • O repositório oficial do MariaDB não foi adicionado corretamente → Verifique os arquivos de configuração do repositório (como /etc/apt/sources.list.d/ ou /etc/yum.repos.d/ )
  • Sua distribuição e a versão do MariaDB não são compatíveis → Verifique novamente as versões suportadas na página de download oficial do MariaDB

Q3. Como desinstalar o MariaDB?

Para Ubuntu/Debian:

sudo apt remove --purge mariadb-server mariadb-client -y
sudo apt autoremove -y

Para CentOS/RHEL:

sudo yum remove mariadb-server -y

Depois disso, se você também quiser remover dados e arquivos de configuração, execute o seguinte:

sudo rm -rf /var/lib/mysql
sudo rm -rf /etc/my.cnf /etc/mysql

*Se você tem dados importantes, certifique‑se de fazer backup antes de excluir qualquer coisa.

Q4. Como fazer backup e restaurar um banco de dados?

Backup (criar um arquivo dump):

mysqldump -u root -p your_database > backup.sql

Restaurar:

mysql -u root -p your_database < backup.sql

Este método é simples e comum, e é muito útil para migrações e recuperação de desastres do MariaDB.

Q5. Por que não consigo conectar ao MariaDB de fora do servidor?

Possíveis causas incluem:

  • bind-address está definido como 127.0.0.1 → Em /etc/mysql/my.cnf ou /etc/my.cnf , altere para bind-address = 0.0.0.0 (tenha cuidado com a segurança)
  • A porta 3306 está bloqueada pelo firewall → Abra a porta com algo como sudo ufw allow 3306
  • O usuário não tem permissão para conexões remotas → Você precisa criar um usuário no formato user@'%'