# Tutorial: Alterar senha no MariaDB

SET PASSWORD é um comando no MariaDB que permite alterar a senha de um usuário existente. É recomendável trocar senhas em diferentes situações para proteger o seu banco de dados.

## Em que situações alterar senha de usuário no MariaDB?

Alterar senhas de usuários no [MariaDB](https://www.ionos.com/pt-br/digitalguide/servidor/conhecimento/banco-de-dados-mariadb/) é uma parte essencial da estratégia de segurança de qualquer ambiente de banco de dados. Você deve atualizar uma senha sempre que houver um motivo concreto ou quando as diretrizes de segurança exigirem. Assim que um usuário **deixar a empresa ou mudar de função**, todas as credenciais associadas devem ser imediatamente atualizadas ou desativadas. O mesmo vale para comportamentos suspeitos, como tentativas de login incomuns ou acessos a dados sensíveis — nesses casos, a troca da senha atual no MariaDB deve ser feita imediatamente.

Também é necessário alterar senhas que tenham se tornado públicas por engano. Isso pode acontecer por uma configuração incorreta, um script enviado por engano ou um registro em um sistema de controle de versões. Nessas situações, trocar a senha rapidamente ajuda a evitar acessos não autorizados. Além disso, muitos padrões de segurança recomendam **alterações periódicas de senhas**, por exemplo, a cada 90 dias. Isso é especialmente importante em ambientes críticos para a segurança.

Altere senhas sempre que houver riscos, não esperando até que um problema ocorra.

## Comando `SET PASSWORD` no MariaDB

Use o comando `SET PASSWORD` para alterar a senha de usuários no MariaDB. Se você **não especificar a cláusula `FOR`**, a alteração se aplica ao usuário atualmente conectado. Quando você usa `FOR 'user'@'host'`, a mudança é direcionada a uma conta específica. Nesse caso, é necessário ter permissão de `UPDATE` no banco de dados `mysql`, já que o MariaDB armazena ali as informações do usuário.

A sintaxe geral é:

```sql
SET PASSWORD FOR 'user'@'host' = PASSWORD('novasenha');
```

Nas versões mais recentes do MariaDB (a partir da 10.4), recomenda-se definir a senha diretamente em texto simples com o comando ALTER USER:

```sql
ALTER USER 'user'@'host' IDENTIFIED BY 'novasenha';
```

O motivo da mudança para essa nova abordagem é que a função antiga gera um hash interno e só é compatível com certos **plugins de autenticação baseados em senha**, como mysql_native_password, ed25519 ou mysql_old_password. Outros plugins, como unix_socket, pam, gssapi ou named_pipe, não armazenam senhas no banco de dados. Nesses casos, o uso de SET PASSWORD resultará em erro.

## Como alterar senhas no MariaDB

Você pode alterar a senha de um usuário diretamente pelo cliente MariaDB. A conexão é feita via **SSH**.

Primeiro, abra uma sessão SSH e conecte-se ao servidor. Para iniciar o **cliente MariaDB** com privilégios de administrador, digite o seguinte comando:

```bash
sudo mysql
```

Após inserir a senha do seu usuário SSH, você terá acesso à interface do MariaDB. A base de dados exibirá uma mensagem de boas-vindas e um prompt semelhante a este:

```sql
MariaDB [(none)]>
```

Para gerenciar as senhas de usuários, você precisa acessar o banco de dados que armazena essas informações. No MariaDB, por padrão, essa base se chama mysql. Para acessá-la, use:

```sql
use mysql;
```

A partir de então você poderá alterar a senha do usuário desejado. Para isso, insira o seguinte comando:

```sql
SET PASSWORD FOR 'newuser'@'host' = PASSWORD('newsecurepassword');
```

Substitua newuser pelo nome real do usuário e newsecurepassword pela nova senha desejada.

Após a alteração ser realizada com sucesso, o MariaDB confirma a modificação com uma mensagem correspondente.

Quando terminar as alterações, saia do cliente MariaDB com:

```sql
exit
```

Isso o levará de volta ao terminal normal do servidor.

Se você gerencia usuários que fazem login com senha, o comando `SET PASSWORD` continua sendo uma ferramenta útil. Ele permite reagir rapidamente a incidentes de segurança, definir novas senhas ou garantir o acesso seguro após uma mudança de função.

Dica Em outros artigos do nosso Digital Guide, você aprende como criar uma nova conta de usuário com [CREATE USER no MariaDB](https://www.ionos.com/pt-br/digitalguide/hospedagem/tecnologia-de-hospedagem/mariadb-create-user/) e como conceder permissões completas com [GRANT ALL PRIVILEGES no MariaDB](https://www.ionos.com/pt-br/digitalguide/hospedagem/tecnologia-de-hospedagem/grant-all-privileges-no-mariadb/).


This is a markdown version of: [https://www.ionos.com/pt-br/digitalguide/hospedagem/tecnologia-de-hospedagem/alterar-senha-no-mariadb/](https://www.ionos.com/pt-br/digitalguide/hospedagem/tecnologia-de-hospedagem/alterar-senha-no-mariadb/) for AI/LLM consumption.