Como Instalar o MariaDB no Ubuntu 22.04

Introdução

O MariaDB é um sistema de gerenciamento de banco de dados relacional de código aberto, comumente usado como uma alternativa ao MySQL como a parte do banco de dados do popular stack LAMP (Linux, Apache, MySQL, PHP/Python/Perl). Ele é destinado a ser uma substituição direta para o MySQL.

A versão resumida deste guia de instalação consiste nestas três etapas:

  • Atualize seu índice de pacotes usando apt
  • Instale o pacote mariadb-server usando apt. O pacote também traz ferramentas relacionadas para interagir com o MariaDB
  • Execute o script de segurança mysql_secure_installation incluído para restringir o acesso ao servidor
  1. sudo apt update
  2. sudo apt install mariadb-server
  3. sudo mysql_secure_installation

Este tutorial explicará como instalar o MariaDB em um servidor Ubuntu 22.04 e verificar se ele está em execução e possui uma configuração inicial segura.

Pré-requisitos

Passo 1 — Instalando o MariaDB

No momento desta escrita, os repositórios padrão do APT do Ubuntu 22.04 incluem a versão 10.5.12 do MariaDB.

Para instalá-lo, atualize o índice de pacotes em seu servidor com apt:

  1. sudo apt update

Em seguida, instale o pacote:

  1. sudo apt install mariadb-server

Esses comandos irão instalar o MariaDB, mas não solicitarão que você defina uma senha ou faça outras alterações de configuração. Como a configuração padrão deixa sua instalação do MariaDB insegura, você usará um script fornecido pelo pacote mariadb-server para restringir o acesso ao servidor e remover contas não utilizadas.

Passo 2 — Configurando o MariaDB

Para novas instalações do MariaDB, o próximo passo é executar o script de segurança incluído. Este script altera algumas das opções padrão menos seguras para coisas como logins remotos do root e usuários de exemplo.

Execute o script de segurança:

  1. sudo mysql_secure_installation

Isso irá guiá-lo por uma série de prompts onde você pode fazer algumas alterações nas opções de segurança da sua instalação do MariaDB. O primeiro prompt pedirá que você insira a senha atual do banco de dados root. Como você ainda não configurou uma, pressione ENTER para indicar “nenhuma”.

Output
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY! In order to log into MariaDB to secure it, you'll need the current password for the root user. If you've just installed MariaDB, and you haven't set the root password yet, the password will be blank, so you should just press enter here. Enter current password for root (enter for none):

Você será perguntado se deseja mudar para autenticação de soquete Unix. Como você já possui uma conta root protegida, você pode pular esta etapa. Digite n e depois pressione ENTER.

Output
. . . Setting the root password or using the unix_socket ensures that nobody can log into the MariaDB root user without the proper authorisation. You already have your root account protected, so you can safely answer 'n'. Switch to unix_socket authentication [Y/n] n

O próximo prompt pergunta se você gostaria de configurar uma senha de root do banco de dados. No Ubuntu, a conta root para o MariaDB está intimamente ligada à manutenção automática do sistema, portanto, você não deve alterar os métodos de autenticação configurados para essa conta.

Fazer isso tornaria possível que uma atualização de pacote quebrasse o sistema de banco de dados removendo o acesso à conta administrativa. Digite n e depois pressione ENTER.

Output
. . . OK, successfully used password, moving on... Setting the root password ensures that nobody can log into the MariaDB root user without the proper authorisation. Set root password? [Y/n] n

Mais tarde, você aprenderá como configurar uma conta administrativa adicional para acesso por senha se a autenticação de soquete não for apropriada para o seu caso de uso.

A partir daí, você pode pressionar Y e depois ENTER para aceitar os padrões para todas as perguntas subsequentes. Isso removerá alguns usuários anônimos e o banco de dados de teste, desabilitará logins remotos de root, e carregará essas novas regras para que o MariaDB implemente imediatamente as alterações que você fez.

Com isso, você terminou a configuração de segurança inicial do MariaDB. O próximo passo é opcional, embora você deva segui-lo se preferir autenticar-se no seu servidor MariaDB com uma senha.

Passo 3 — (Opcional) Criando um Usuário Administrativo que Utiliza Autenticação por Senha

Nos sistemas Ubuntu que executam o MariaDB 10.5, o usuário root do MariaDB é configurado para autenticar-se usando o plugin unix_socket por padrão, em vez de uma senha. Isso permite uma segurança e usabilidade melhores em muitos casos, mas também pode complicar as coisas quando você precisa permitir que um programa externo (por exemplo, phpMyAdmin) tenha direitos administrativos.

Como o servidor utiliza a conta root para tarefas como rotação de logs e iniciar e parar o servidor, é melhor não alterar os detalhes de autenticação da conta root. Alterar credenciais no arquivo de configuração /etc/mysql/debian.cnf pode funcionar inicialmente, mas atualizações de pacotes podem potencialmente sobrescrever essas alterações. Em vez de modificar a conta root, os mantenedores do pacote recomendam criar uma conta administrativa separada para acesso baseado em senha.

Para isso, criaremos uma nova conta chamada admin com as mesmas capacidades da conta root, mas configurada para autenticação por senha. Abra o prompt do MariaDB a partir do seu terminal:

  1. sudo mariadb

Então, crie um novo usuário com privilégios de root e acesso baseado em senha. Certifique-se de alterar o nome de usuário e a senha de acordo com suas preferências:

  1. GRANT ALL ON *.* TO 'admin'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;

Atualize os privilégios para garantir que sejam salvos e estejam disponíveis na sessão atual:

  1. FLUSH PRIVILEGES;

Após isso, saia do shell do MariaDB:

  1. exit

Finalmente, vamos testar a instalação do MariaDB.

Passo 4 — Testando o MariaDB

Quando instalado a partir dos repositórios padrão, o MariaDB iniciará automaticamente. Para testar isso, verifique seu status.

  1. sudo systemctl status mariadb

Você receberá uma saída semelhante à seguinte:

Output
● mariadb.service - MariaDB 10.5.12 database server Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled) Active: active (running) since Fri 2022-03-11 22:01:33 UTC; 14min ago Docs: man:mariadbd(8) https://mariadb.com/kb/en/library/systemd/ . . .

Se o MariaDB não estiver em execução, você pode iniciá-lo com o comando sudo systemctl start mariadb.

Para uma verificação adicional, você pode tentar se conectar ao banco de dados usando a ferramenta mysqladmin, que é um cliente que permite executar comandos administrativos. Por exemplo, este comando diz para se conectar ao MariaDB como root usando o soquete Unix e retornar a versão:

  1. sudo mysqladmin version

Você receberá uma saída semelhante a esta:

Output
mysqladmin Ver 9.1 Distrib 10.5.12-MariaDB, for debian-linux-gnu on x86_64 Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others. Server version 10.5.12-MariaDB-1build1 Protocol version 10 Connection Localhost via UNIX socket UNIX socket /run/mysqld/mysqld.sock Uptime: 15 min 53 sec Threads: 1 Questions: 482 Slow queries: 0 Opens: 171 Open tables: 28 Queries per second avg: 0.505

Conclusão

Neste guia, você instalou o sistema de gerenciamento de banco de dados relacional MariaDB e o segurou usando o script mysql_secure_installation que veio instalado com ele. Você também teve a opção de criar um novo usuário administrativo que utiliza autenticação por senha antes de testar a funcionalidade do servidor MariaDB.

Agora que você tem um servidor MariaDB em execução e seguro, aqui estão alguns exemplos de próximos passos que você pode tomar para trabalhar com o servidor:

Source:
https://www.digitalocean.com/community/tutorials/how-to-install-mariadb-on-ubuntu-22-04