Introdução
MariaDB é um sistema de gerenciamento de banco de dados relacional de código aberto, comumente usado como uma alternativa ao MySQL na parte do banco de dados do popular stack LAMP (Linux, Apache, MySQL, PHP/Python/Perl). É 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
usandoapt
. O pacote também inclui ferramentas relacionadas para interagir com o MariaDB - Execute o script de segurança incluído
mysql_secure_installation
para restringir o acesso ao servidor
Este tutorial explicará como instalar o MariaDB em um servidor Ubuntu 22.04 e verificar se está em execução e possui uma configuração inicial segura.
Pré-requisitos
- Para seguir este tutorial, você precisará de um servidor executando o Ubuntu 22.04. Este servidor deve ter um usuário administrativo não root e um firewall configurado com UFW. Configure isso seguindo nosso guia de configuração inicial do servidor para o Ubuntu 22.04.
Passo 1 — Instalando o MariaDB
Até o 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 no seu servidor com o comando apt
:
Em seguida, instale o pacote:
Estes 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, como logins remotos de root e usuários de exemplo.
Execute o script de segurança:
Isso irá guiá-lo através de uma série de prompts onde você pode fazer algumas mudanças nas opções de segurança da sua instalação do MariaDB. O primeiro prompt irá pedir que você insira a senha atual do banco de dados root. Como você ainda não configurou uma, pressione ENTER
para indicar “nenhuma”.
OutputNOTE: 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 via soquete Unix. Como você já tem uma conta root protegida, você pode pular esta etapa. Digite n
e então 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 para o root do banco de dados. No Ubuntu, a conta root do MariaDB está intimamente ligada à manutenção automatizada do sistema, então você não deve mudar 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 ao remover o acesso à conta administrativa. Digite n
e então 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 via soquete não for apropriada para o seu caso de uso.
A partir daí, você pode pressionar Y
e então 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 do root, e carregará essas novas regras para que o MariaDB implemente imediatamente as alterações que você fez.
Com isso, você concluiu 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 MariaDB root é configurado para autenticar-se usando o plugin unix_socket
por padrão, em vez de com 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 usa a conta root para tarefas como rotação de log e iniciar e parar o servidor, é melhor não alterar os detalhes de autenticação da conta root. Alterar as credenciais no arquivo de configuração /etc/mysql/debian.cnf
pode funcionar inicialmente, mas as atualizações do pacote poderiam potencialmente sobrescrever essas mudanças. Em vez de modificar a conta root, os mantenedores do pacote recomendam criar uma conta administrativa separada para acesso baseado em senha.
Para esse fim, vamos criar uma nova conta chamada admin com as mesmas capacidades da conta root, mas configurada para autenticação de senha. Abra o prompt do MariaDB a partir do seu terminal:
Em seguida, 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 para corresponder às suas preferências:
Atualize os privilégios para garantir que eles sejam salvos e estejam disponíveis na sessão atual:
Após isso, saia do shell do MariaDB:
Por fim, vamos testar a instalação do MariaDB.
Passo 4 — Testando o MariaDB
Ao ser instalado a partir dos repositórios padrão, o MariaDB iniciará automaticamente. Para testar isso, verifique o seu status.
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 socket Unix e retornar a versão:
Você receberá uma saída semelhante a esta:
Outputmysqladmin 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 usa autenticação por senha antes de testar a funcionalidade do servidor MariaDB.
Agora que você tem um servidor MariaDB em funcionamento e seguro, aqui estão alguns exemplos de próximos passos que você pode seguir para trabalhar com o servidor:
Source:
https://www.digitalocean.com/community/tutorials/how-to-install-mariadb-on-ubuntu-22-04