Como altero a senha root e o nome de usuário do MySQL no servidor ubuntu? Preciso parar o serviço mysql antes de definir alguma alteração?
Também tenho uma configuração do phpmyadmin. O phpmyadmin será atualizado automaticamente?
— asm234
Se você não precisar dos dados, poderá "redefinir" a senha removendo o mysql por inteiro: stackoverflow.com/questions/10853004/… e instalá-lo novamente (ele solicitará a "nova" senha raiz) FWIW: )
— rogerdpack 12/01
Você conhece a senha root do MySQL?
No mysql-server-5.7 esses métodos não funcionam. usar 'sudo' sem senha, como mencionado no askubuntu.com/a/848504
— Pragalathan M
Defina / altere / redefina a senha de root do MySQL no Ubuntu Linux. Digite as seguintes linhas no seu terminal.
Pare o servidor MySQL: sudo /etc/init.d/mysql stop
Inicie a mysqldconfiguração:sudo mysqld --skip-grant-tables &
Em alguns casos, você deve criar o /var/run/mysqldprimeiro:
Corre: sudo service mysql start
Entre no MySQL como root: mysql -u root mysql
Substitua YOURNEWPASSWORDpor sua nova senha:
Nota: em algumas versões, se a passwordcoluna não existir, você pode tentar:
Nota: Esse método não é considerado a maneira mais segura de redefinir a senha; no entanto, ele funciona.
Definir / Alterar / Redefinir a senha root do MySQL no Ubuntu Linux
— Christian Mark
Obviamente, após esse ponto, você precisará interromper o processo do servidor temporário e sem senha que você iniciou na etapa 2. talvez use sudo killall -9 mysqld? e depois sudo service mysql startreiniciar o daemon normal ...
— Lambart 08/12/13
O método nesta resposta é necessário apenas para redefinir uma senha root do MySQL que você não conhece [fonte ]. Se você souber, a SET PASSWORDinstrução MySQL é para você.
Eu segui até a terceira etapa e recebo Não é possível conectar-se ao servidor MySQL local através do soquete '/var/run/mysqld/mysqld.sock' (2) quando eu
— faço
em alguns casos, você também precisa executar mkdir /var/run/mysqlde chown mysql: /var/run/mysqldentre as etapas 1 e 2
o passo 3 não funcionou para mim no Ubuntu 18.04. Eu só logado usando sudo mysql
O único método que funcionou para mim é o descrito aqui (estou executando o ubuntu 14.04). Por uma questão de clareza, estes são os passos que segui:
Adicione as seguintes linhas no final:
ignorar-conceder-tabelas
select * from mysql.user where user = 'root';- Olhe para o topo para determinar se a coluna da senha é chamada de senha ou authentication_string
UPDATE mysql.user set *password_field from above* = PASSWORD('your_new_password') where user = 'root' and host = 'localhost'; - Use a coluna de senha apropriada acima
Remova as linhas adicionadas na etapa 2 se desejar manter seus padrões de segurança.
Para referência: https://dev.mysql.com/doc/refman/5.7/en/resetting-permissions.html
Finalmente, isso funcionou para mim! Estou executando o MySQL 5.7.18 no Ubuntu 16.04. Eu tentei o dpkg-reconfigure, a resposta de Anvesh, a resposta de Christian Mark e até as instruções na página de ajuda do MySQL.
Eu tive que executar o UPDATE mysql.user SET authentication_string = PASSWORD ('newpwd') WHERE User = 'root'; em vez da linha 5.
A única solução que funcionou para mim. Tenho o Ubuntu 17.04 e o mysql 5.7
Infelizmente isso não funciona para mim mysql 5.7.22 ubuntu 18.04
Tudo estava funcionando como esperado. Mas quando a tentar entrar ele está dizendo Introduzir a senha: ERROR 1698 (28000): Acesso negado para o usuário 'root' @ 'localhost'
— Dipak Chatterjee
A maneira oficial e fácil de redefinir a senha root em um servidor ubuntu ...
Se você estiver em 16.04, 14.04, 12.04:
Se você estiver no 10.04:
Se você não tiver certeza de qual versão do servidor mysql está instalada, tente:
Notas atualizadas para mysql-server-5.7
Note que se você estiver usando o mysql-server-5.7, não poderá usar o método dpkg-reconfigure mais fácil, mostrado acima.
Se você souber a senha, faça o login e execute:
Como alternativa, você pode usar o seguinte:
Isso fará uma série de perguntas sobre como proteger sua instalação (altamente recomendado), incluindo se você deseja fornecer uma nova senha root.
Se você NÃO souber a senha root, consulte esta redação centrada no Ubuntu no processo .
Funciona mesmo quando você perdeu a senha root original do MySQL - legal.
Trabalha comVer 14.14 Distrib 5.5.38, for debian-linux-gnu
— justinpage 14/09
Trabalhou com mysql v 5.0, bem ...sudo dpkg-reconfigure mysql-server-5.0
— dsghi
O sudo dpkg-reconfigure mysql-server-5.7 não funciona no Ubuntu 18.04 para redefinir a senha root. Alguma outra alternativa?
Ubuntu:sudo dpkg-reconfigure mysql-server-5.7; sudo mysql_secure_installation
O que funcionou para mim (Ubuntu 16.04, mysql 5.7):
Crie o diretório de serviço do MySQL.
Dê ao usuário do MySQL permissão para gravar no diretório de serviço.
Inicie o MySQL manualmente, sem verificações de permissão ou rede.
Em outro console, efetue login sem uma senha.
Desative o MySQL.
Inicie o serviço MySQL normalmente.
As outras maneiras não funcionaram para mim, mas esta (obrigado!), Ou você também pode ir aqui rricketts.com/reset-root-password-mysql-5-7-ubuntu-16-04-lts
Muito útil ! No meu caso específico (Ubuntu 18.04 LTS), eu tive que substituir a máquina '%' para 'localhost'
Isso não funcionou no ubuntu 18.04. Mas funcionou com esta pequena alteração descrita aqui stackoverflow.com/a/53385753/1591143 #
— Aleksandar Popovic
Estou compartilhando a solução final passo a passo para redefinir uma senha do MySQL no Linux Ubuntu.
Referência retirada do blog (dbrnd.com)
Etapa 1: Interrompa o serviço MySQL.
Etapa 2: Mate todos os mysqld em execução.
Etapa 3: Iniciando o mysqld no modo de Segurança.
Etapa 4: Inicie o cliente mysql
Etapa 5: Após o login bem-sucedido, execute este comando para alterar qualquer senha.
Etapa 6: você pode atualizar a senha root do mysql.
Nota : No MySQL 5.7, a coluna Passwordé chamadaauthentication_string .
Etapa 7: Por favor, execute este comando.
De fato. Além disso, está mais próximo da documentação oficial . Caso você se depare com isso: "ERRO 1524 (HY000): o plug-in 'auth_socket' não está carregado", dê uma olhada em stackoverflow.com/questions/37879448/…
Eu também tive que mudar o mysql.user.plugin de 'auth_socket' para 'mysql_native_password' para o meu usuário root com o host 'localhost'.
Eu tive que usar "sudo /etc/init.d/mysql stop" para parar o serviço e "UPDATE mysql.user SET authentication_string = PASSWORD ('newpwd') WHERE User = 'root';" para atualizar a senha
— L Bahr
_string autenticado ajudou
— Faiyaz Md Abdul
Enfrentei problemas com o ubuntu 18.04 e o mysql 5.7, esta é a solução
Tente reiniciar o mysql-server antes de executar os comandos
— Jerfeson Guerreiro
Obrigado, também estou executando o Ubuntu 18.04 aqui e a MYSQL-SERVER >= 5.7versão foi a única coisa que realmente resolveu o problema
Este é o que trabalhou na instalação do mysql do Ubuntu 18.04. MYSQL-SERVER >= 5.7versão para ser preciso.
— Manohar Sathish
Mude a senha root do MySQL.
Este método expõe a senha ao histórico da linha de comandos; esses comandos devem ser executados como raiz.
Entre através da ferramenta de linha de comando mysql:
Execute este comando, que define uma senha para o usuário atual ('root' para este caso):
SET PASSWORD = PASSWORD ('nova senha');
Inicialmente, execute este comando:
e então você deve verificar qual método de autenticação de suas contas de usuário MySQL usa.
agora você já pode ver algo assim:
na tabela acima, você pode ver o status de todas as contas de usuários mysql e se você definiu uma senha para a conta root antes de ver mysql_native_passwordna coluna do plugin auth_socket. Em resumo, para alterar sua senha root, você deve executar:
Certifique-se de alterar a senha para uma senha forte de sua escolha. Em seguida, para recarregar o servidor para efetivar suas novas alterações, execute isso;
Então, novamente verifique os métodos de autenticação empregados pelo seu mysql, por este comando:
e agora a saída é:
como você pode ver na tabela de permissões que sua conta root possui mysql_native_password . agora você pode sair do shell MYSQL
É isso aí. Você deve reiniciar o mysql sudo service mysql restart. Agora você pode acessar o mysql como uma conta root com sua senha facilmente.
Eu acho que isso é da DigitalOcean, que foi a única solução que funcionou para mim no Ubuntu 18.04 em execução no Virtual Box
funciona perfeitamente no ubuntu 18.04. Obrigado.
— mahfuz 6/07
Se você deseja alterar a senha root do MySQL, em um terminal, digite:
O daemon do MySQL será parado e você será solicitado a inserir uma nova senha.
— user2206324
Essa é uma maneira muito melhor de fazer isso. Eu era incapaz de executar os comandos anteriores por causa de algum erro mysql ...
O sudo dpkg-reconfigure o mysql-server-5.7 no ubuntu 16.04
Corri sudo dpkg-reconfigure mysql-server-5.7no Ubuntu 16.04, ele não solicitou a digitação de uma nova senha.
— Franck Dernoncourt 22/01
Se ele diz mysql-server is broken or not fully installed, pode-se usar sudo apt purge mysql*esudo apt install mysql-server
Isso funciona como charme, eu fiz isso no Ubuntu 16.04. Crédito total para o link abaixo, como o recebi de lá. [ https://coderwall.com/p/j9btlg/reset-the-mysql-5-7-root-password-in-ubuntu-16-04-lts[[1]
Crie o diretório de serviço do MySQL. sudo mkdir / var / run / mysqld
Faça login sem uma senha.
Atualize a senha do usuário root. verifique se a conta raiz pelo menos é atualizada pela consulta abaixo. faça alguma seleção e verifique os valores existentes, se quiser
Parar o serviço sudo MySQL mysql stop
Dê ao usuário do MySQL permissão para gravar no diretório de serviço. mysql do sudo chown: / var / run / mysqld
Inicie o MySQL manualmente, sem verificações de permissão ou rede. sudo mysqld_safe --skip-grant-tables --skip-networking &
5.Faça login sem uma senha. mysql -uroot mysql
6. Atualize a senha do usuário root.
UPDATE mysql.user SET authentication_string = PASSWORD ('YOURNEWPASSWORD'), plugin = 'mysql_native_password' WHERE Usuário = 'root' AND Host = '%'; SAÍDA;
Desative o MySQL. sudo mysqladmin -S /var/run/mysqld/mysqld.sock shutdown
Inicie o serviço MySQL normalmente. serviço sudo mysql start
— Rahul Raveendran
Olá, esta resposta funciona para mim, mas tive que usar outro comando: UPDATE mysql.user SET authentication_string=PASSWORD('solutionclub3@*^G'), plugin='mysql_native_password' WHERE User='root';sem AND Host='%'. Obrigado!
— David Corral
Esta solução pertence à versão anterior do MySQL. Ao fazer login no MySQL usando autenticação de soquete, você pode fazê-lo.
Em seguida, o seguinte comando pode ser executado.
Os detalhes estão disponíveis aqui .
Não consegui fazer o login como, sudo mysql -u rootmas consegui fazê-lo sudo mysqle executar o ALTER USERcomando.
Eu estava recebendo este erro: "Sua senha não atende aos requisitos atuais da política". Consegui corrigir isso aqui: stackoverflow.com/a/43094873/9073437 . Depois de definir uma política de senha modificada, tudo funcionou bem.
— Grandtour
Esta é a solução para mim. Eu trabalho no Ubuntu 18.04: https://stackoverflow.com/a/46076838/2400373
Mas é importante essa alteração na última etapa:
— juanitourquiza
Poxa! Muito obrigado! Esta é a única maneira que estava funcionando no meu caso. Esqueça esse script estúpido de instalação segura, pois mantinha meu 5,7 instalado recentemente, aberto aos usuários, sem nunca pedir uma senha ... se o Linux / Ubuntu é para usuários preocupados com a segurança, por que é tão difícil proteger um aplicativo crucial como o servidor MySQL ?
— 21819 Thomas Urban
Para Ubuntu 18.04 e mysql versão 14.14 Distrib 5.7.22, siga a etapa abaixo para redefinir a senha do mysql.
Este comando abrirá um novo arquivo no editor nano, que você usará para editar as substituições de serviço do MySQL. Isso altera os parâmetros de serviço padrão para o MySQL. Este arquivo estará vazio, então adicione o seguinte conteúdo:
Acho que você perdeu o conteúdo da etapa 2. Está incompleto.
— Lucas Mendes Mota Da Fonseca
Fazendo eco do comentário do rogerdpack: se você não conhece a senha root do MySQL e não se importa com os dados / configurações do MySQL, pode reinstalá-lo e redefinir a senha do root da seguinte maneira:
Durante a instalação, você pode escolher a senha do root:
Eu gostaria de ter começado aqui em vez de perder uma hora batendo minha cabeça ao tentar redefinir a senha.
— Eric Seastrand 12/09
Se você conhece sua senha atual, não precisa parar o servidor mysql. Abra o terminal do ubuntu. Entre no mysql usando:
Em seguida, digite sua senha. Isso o levará ao console do mysql. Dentro do console, digite:
Em seguida, limpe os privilégios usando:
Então você está pronto.
— Peter Mutisya
Quando você usa o MySQL PASSWORD()no sistema em que deseja alterar a senha, isso pode fazer com que a senha apareça em um log do MySQL em texto não criptografado [ fonte ]. Mantê-los, seus backups, etc., tão seguros quanto a senha, parece um pesadelo para mim, então eu gosto de fazê-lo da seguinte maneira:
Na sua máquina local , execute isso com sua senha:
Observe o espaço à frente para impedir que ele apareça no histórico do bash (para outras distribuições que não o Ubuntu, isso pode funcionar de maneira diferente - fonte ).
Na sua máquina servidor, execute o seguinte comando para alterar sua senha root do MySQL (substitua myhashpelo hash da sua senha conforme impresso pelo primeiro comando):
Opcionalmente, vamos ficar um pouco paranóicos: na sua máquina local, limpe a tela do terminal cleare limpe a rolagem do terminal virtual, para ocultar a senha de texto não criptografado que aparece no comando acima.
Para atualizar a senha de usuário "root" do Mysql, você deve ter em mente que precisará de permissões de superusuário para isso. Se você tiver privilégios de superusuário, tente os seguintes comandos:
MySQL 5.7.6 e posterior
MySQL 5.7.5 e versões anteriores
— alvaropaco
Você não precisa de tudo isso. Basta fazer login:
Em seguida, altere a senha do usuário atual como o mysql>prompt:
— mprivat
Esta é uma maneira mais simples! Ele funciona para mim com o mysql 5.7.21-0ubuntu0.17.10.1 #
— Sergio Belevskij
A maioria das respostas sobre esse tópico está desatualizada; duas grandes mudanças ocorreram no MySQL até a redação desta resposta:
1- o campo 'Senha' na tabela de usuários foi substituído pela coluna 'authentication_string'.
2- a função de criptografia 'Senha': PASSWORD ("of some text") está obsoleta.
Consulte este link para obter mais informações: dev.mysql.com/doc/refman/8.0/en/resetting-permissions.html
— Elie Asmar
Em vez de redefinir a senha, há uma solução alternativa na máquina local se você tiver configurado phpmyadmina conexão sem fornecer a senha ou o nome de usuário. Verifique isso iniciando mysql, apacheetc. Eu xamppinstalei na minha máquina local. Portanto, iniciar o xampp iniciará todos os serviços necessários. Agora vou http://localhost/phpmyadminme mostrar todos os bancos de dados. Isso confirma que você salvou o nome de usuário e a senha no arquivo de configuração do phpmyadmin, que pode ser encontrado no phpmyadminlocal da instalação. Se você xamppinstalou, a phpmyadminpasta pode ser encontrada na pasta raiz da xamppinstalação. Procure a palavra passwordno config.inc.phparquivo. Lá você encontrará o password e username.
Você pode facilmente mudar a senha do mysql se implantada no xampp através do phpadmin gui fornecido.
— Mohd Arshil
para o mysql 5.6, este comando funciona e você pode definir a senha através do assistente:
Eu tentei, mas não está funcionando .. Estou recebendo este erro abaixo .. poderia ajudar? Esta instalação do MySQL já foi atualizada para 5.7.21, use --force se você ainda precisar executar o mysql_upgrade
— Vijaysinh Parmar
Você pode tentar estas etapas para redefinir a senha root do mysql 5.7:
Parar o Serviço Mysql
Efetue login como root sem senha sudo mysqld_safe --skip-grant-tables e
Após o login no terminal mysql, você deve executar mais os comandos:
Depois de reiniciar o servidor mysql Se você ainda está enfrentando um erro, deve visitar: Redefinir a senha root do MySQL 5.7 Ubuntu 16.04
— Inderpal Singh
depois disso, use flush:
— Rahul Karande
Definindo a senha do MySQL
parar o serviço de banco de dados MySQL
crie um novo diretório mysqld
sudo mkdir / var / run / mysqld /
dar acesso ao usuário mysql
sudo chown mysql / var / run / mysqld /
inicie o MySQL no modo de segurança ...
logon no servidor de banco de dados sem uma senha
raiz do sudo mysql -u
use o banco de dados mysql padrão
alterar a senha root
update user set authentication_string=PASSWORD("New_Passwore_Here") where Usuário = 'root';
privilégios de liberação; Saída;
pare o MySQL safe_mode e inicie o serviço padrão do MySQL
faça logon no banco de dados MySQL usando a nova senha raiz
sudo mysql -u raiz -p
*** Fonte: https://websiteforstudents.com/resetting-mysql-root-password-on-ubuntu-16-04-17-10-and-18-04-lts/
Se você souber a senha de usuário 'root', efetue login no mysql com essas credenciais. Em seguida, execute a seguinte consulta para atualizar a senha.
— Udara Seneviratne
ao alterar / redefinir a senha do MySQL, os seguintes comandos listados acima não ajudaram. Descobri que entrar no terminal e usar esses comandos não faz sentido. em vez disso, use o comando sudo para tudo. DELETE SYSTEM 32 para Windows, se isso ajudar.
A questão é sobre o ubuntusistema operacional e não o Windows. O que você quer dizer com DELETE SYSTEM 32 para Windows ?
Para redefinir ou alterar a senha, digite sudo dpkg-reconfigure mysql-server-X.X(XX é a versão mysql que você instalou, isto é, 5.6, 5.7) e, em seguida, será exibida uma tela na qual é necessário definir a nova senha e, na próxima etapa, confirme a senha e aguarde um momento. É isso aí.
Eu tive que seguir esta rota no Ubuntu 16.04.1 LTS. É uma mistura de algumas das outras respostas acima - mas nenhuma delas ajudou. Passei uma hora ou mais tentando todas as outras sugestões do site MySql para tudo no SO, finalmente consegui trabalhar com:
Nota: enquanto mostrava Digite a senha para o usuário root, eu não tinha a senha original, então apenas digitei a mesma senha para ser usado como a nova senha.
Nota: não havia /var/log/mysqld.log apenas /var/log/mysql/error.log
Observe também que isso não funcionou para mim:
matar o atual mysqld pid
execute o mysqld com o sudo / usr / sbin / mysqld e
execute / usr / bin / mysql_secure_installation
Saída de mysql_secure_installation
Digite a senha para a raiz do usuário:
O VALIDAR SENHA PLUGIN pode ser usado para testar senhas e melhorar a segurança. Ele verifica a força da senha e permite que os usuários definam apenas as senhas que são suficientemente seguras. Deseja configurar o plugin VALIDATE PASSWORD?
Pressione y | Y para Sim, qualquer outra tecla para Não: não Usando a senha existente para root. Alterar a senha para root? ((Pressione y | Y para Sim, qualquer outra tecla para Não): y
Redigite a nova senha: Por padrão, uma instalação do MySQL possui um usuário anônimo, permitindo que qualquer pessoa faça login no MySQL sem precisar ter uma conta de usuário criada para eles. Isso é destinado apenas para testes e para tornar a instalação um pouco mais suave. Você deve removê-los antes de passar para um ambiente de produção.
Remover usuários anônimos? (Pressione y | Y para Sim, qualquer outra tecla para Não): y Sucesso.
Normalmente, o root só deve ter permissão para se conectar a partir de 'localhost'. Isso garante que alguém não consiga adivinhar a senha raiz da rede.
Proibir o login root remotamente? (Pressione y | Y para Sim, qualquer outra tecla para Não): y Sucesso.
Por padrão, o MySQL vem com um banco de dados chamado 'teste' que qualquer pessoa pode acessar. Isso também se destina apenas a testes e deve ser removido antes de entrar em um ambiente de produção.
Soltando banco de dados de teste ... Sucesso.
Removendo privilégios no banco de dados de teste ... Sucesso.
Recarregar as tabelas de privilégios garantirá que todas as alterações feitas até agora entrem em vigor imediatamente.
Recarregar tabelas de privilégios agora? (Pressione y | Y para Sim, qualquer outra tecla para Não): y Sucesso.