Tutorial

Como instalar o MariaDB no Ubuntu 20.04

Published on June 11, 2020
Português
Como instalar o MariaDB no Ubuntu 20.04

Introdução

O MariaDB é um sistema de gerenciamento de banco de dados de código aberto, usado com frequência como uma alternativa ao MySQL como a parte que representa o banco de dados da famosa pilha LAMP (Linux, Apache, MySQL, PHP/Python/Perl). Ele foi criado como um substituto do MySQL.

A versão curta deste guia de instalação consiste nestes três passos:

  • Atualize seu índice de pacotes usando o apt
  • Instale o pacote mariadb-server usando o apt. O pacote também traz ferramentas relacionadas para interagir com o MariaDB.
  • Execute o script de segurança incluído, mysql_secure_installation, 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 20.04, verificará se ele está em funcionamento e se tem uma configuração inicial segura.

Pré-requisitos

Para seguir este tutorial, você precisará de um servidor executando o Ubuntu 20.04. Cada servidor deverá ter um non-root user administrativo e um firewall configurado com o UFW. Configure isso seguindo o nosso Guia de configuração inicial de servidor para o Ubuntu 20.04.

Passo 1 — Instalando o MariaDB

No momento em que este tutorial está sendo escrito, os repositórios APT padrão do Ubuntu 20.04 incluem a versão 10.3 do MariaDB.

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

  1. sudo apt update

Depois disso, instale o pacote:

  1. sudo apt install mariadb-server

Estes comandos instalarão 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 desprotegida, usaremos um script que o pacote mariadb-server fornece 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 será executar o script de segurança incluído. Esse script modifica algumas das opções padrão menos seguras referentes, por exemplo, a logins root remotos e usuários de exemplo.

Execute o script de segurança:

  1. sudo mysql_secure_installation

Isso levará você a uma série de prompts onde é possível fazer algumas alterações nas opções de segurança de sua instalação do MariaDB. O primeiro prompt pedirá que digite a senha atual do root do banco de dados. Como ainda não configuramos uma senha, 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, we'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):

O próximo prompt pergunta a você se deseja configurar uma senha root do banco de dados. No Ubuntu, a conta root para o MariaDB está intimamente ligada à manutenção automatizada do sistema. Desse modo, não se deve alterar os métodos de autenticação configurados para esta conta. Se isso fosse feito, uma atualização de pacotes poderia quebrar o sistema de banco de dados devido a remoção do acesso à conta administrativa. Digite N e, em seguida, 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, vamos tratar de como configurar uma conta administrativa adicional para o acesso por senha caso a autenticação por soquete não seja apropriada para o seu caso de uso.

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

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

Passo 3 — (Opcional) Criando um usuário administrativo que implante a autenticação por senha

Em sistemas Ubuntu executando o MariaDB 10.3, o root user do MariaDB é configurado para autenticar-se usando o plug-in unix_socket por padrão, em vez de fazê-lo com uma senha. Isso permite maior segurança e usabilidade na maioria dos casos, mas também pode complicar as coisas quando for necessário permitir direitos administrativos a um programa externo (por exemplo, o phpMyAdmin).

Como o servidor usa a conta root para tarefas como a rotação de registro e a inicialização e parada do servidor, é melhor não alterar os detalhes de autenticação da conta root. A alteração das credenciais no arquivo de configuração /etc/mysql/debian.cnf pode funcionar inicialmente, porém, atualizações de pacotes podem resultar na substituição destas alterações. Em vez de modificar a conta root, os mantenedores de pacotes recomendam criar uma conta administrativa separada, para o acesso baseado em senha.

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

  1. sudo mariadb

Em seguida, crie um novo usuário com privilégios root e acesso baseado em senha. Certifique-se de alterar o nome de usuário e senha para que correspondam às suas preferências:

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

Recarregue os privilégios para garantir que eles estão salvos e disponíveis na sessão atual:

  1. FLUSH PRIVILEGES;

Em seguida, saia do shell do MariaDB:

  1. exit

Por fim, vamos testar a instalação do MariaDB.

Passo 4 — Testando o MariaDB

Quando o MariaDB é instalado dos repositórios padrão, ele normalmente é iniciado de maneira automática. Para testar isso, verifique o status dele.

  1. sudo systemctl status mariadb

Você receberá um resultado que é parecido com este:

Output
● mariadb.service - MariaDB 10.3.22 database server Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled) Active: active (running) since Tue 2020-05-12 13:38:18 UTC; 3min 55s ago Docs: man:mysqld(8) https://mariadb.com/kb/en/library/systemd/ Main PID: 25914 (mysqld) Status: "Taking your SQL requests now..." Tasks: 31 (limit: 2345) Memory: 65.6M CGroup: /system.slice/mariadb.service └─25914 /usr/sbin/mysqld . . .

Se o MariaDB não estiver em execução, inicie-o com o comando sudo systemctl start mariadb.

Como verificação adicional, tente se conectar ao banco de dados usando a ferramenta mysqladmin. Esta ferramenta é um cliente que permite que você execute 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á um resultado semelhante a este:

Output
mysqladmin Ver 9.1 Distrib 10.3.22-MariaDB, for debian-linux-gnu on x86_64 Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others. Server version 10.3.22-MariaDB-1ubuntu1 Protocol version 10 Connection Localhost via UNIX socket UNIX socket /var/run/mysqld/mysqld.sock Uptime: 4 min 49 sec Threads: 7 Questions: 467 Slow queries: 0 Opens: 177 Flush tables: 1 Open tables: 31 Queries per second avg: 1.615

Se você configurou um usuário administrativo separado com autenticação por senha, execute a mesma operação digitando:

  1. mysqladmin -u admin -p version

Isso significa que o MariaDB está em funcionamento e que seu usuário consegue autenticar-se com sucesso.

Conclusão

Neste guia, você instalou o sistema de gerenciamento de banco de dados relacional MariaDB e o protegeu 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 a autenticação por senha antes de testar a funcionalidade do servidor MariaDB.

Agora que você tem um servidor MariaDB funcionando e protegido, aqui estão alguns exemplos de passos que você pode seguir para trabalhar com o servidor:

Thanks for learning with the DigitalOcean Community. Check out our offerings for compute, storage, networking, and managed databases.

Learn more about us


About the authors
Default avatar

Manager, Developer Education

Technical Writer @ DigitalOcean



Still looking for an answer?

Ask a questionSearch for more help

Was this helpful?
 
Leave a comment


This textbox defaults to using Markdown to format your answer.

You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!

Try DigitalOcean for free

Click below to sign up and get $200 of credit to try our products over 60 days!

Sign up

Join the Tech Talk
Success! Thank you! Please check your email for further details.

Please complete your information!

Get our biweekly newsletter

Sign up for Infrastructure as a Newsletter.

Hollie's Hub for Good

Working on improving health and education, reducing inequality, and spurring economic growth? We'd like to help.

Become a contributor

Get paid to write technical tutorials and select a tech-focused charity to receive a matching donation.

Welcome to the developer cloud

DigitalOcean makes it simple to launch in the cloud and scale up as you grow — whether you're running one virtual machine or ten thousand.

Learn more
DigitalOcean Cloud Control Panel