Eu tive que usar mysqladmin -u root -p shutdown, com a nova senha.
SL Barth - Restabelece Monica
2
Bom fluxo de instruções, especialmente: em seguida, execute o mysql em um novo terminal
Mohammed Subhi Sheikh Quroush
8
Eu não posso fazer isso mysql -u root. Mostra erroAccess denied
Avinash Raj
4
@AvinashRaj: Tente isto: sudo mysql-u raiz
Allen Gingrich
Impressionante. Estou compreendendo o que funcionou no RHEL 7: Terminal 1: serviço sudo mysql stop sudo mysqld_safe --skip-grant-tables --skip-syslog --skip-networking Terminal 2: mysql -u root UPDATE mysql.user SET Password = PASSWORD ('nova senha') WHERE User = 'root'; PRIVILÉGIOS DE LAVAGEM; mysqladmin -u root -p shutdown Nota: Depois de encerrado o mysqladmin, você verá o modo de segurança sair no Terminal 1. sudo service mysql start É isso e funciona como um encanto com a nova senha!
Usuário StackOverFlow
65
Você não pode ver a senha com hash; a única coisa que você pode fazer é redefini-lo!
No meu caso, a senha não estava aqui; no entanto, em vez disso, /var/log/mysql/error.logcontinha uma advertência sobre a senha de root estar vazio - de modo que este tipo de salvou meu dia :)
Janaka Bandara
19
uma coisa que me levou a uma nova instalação do mySQL e me pergunto por que não consegui que a senha padrão funcionasse e por que até os métodos de redefinição não estavam funcionando. bem acontece que no Ubuntu 18 a versão mais recente do servidor mysql não usa autenticação por senha para o usuário root por padrão. Portanto, isso significa que não importa o que você definir, não permitirá que você o use. está esperando que você efetue login a partir de um soquete privilegiado. tão
mysql -u root -p
não funcionará, mesmo se você estiver usando a senha correta !!! negará acesso, não importa o que você colocar.
Em vez disso, você precisa usar
sudo mysql
que funcionará sem qualquer senha. então quando você precisar digitar
ALTERUSER'root'@'localhost' IDENTIFIED WITH mysql_native_password BY'Password you want to use';
então saia e agora a coisa sangrenta finalmente aceitará sua senha
Você não pode encontrar. Ele é armazenado em um banco de dados, ao qual você precisa acessar a senha root e, mesmo que você tenha acesso de alguma forma, ele é hash com um hash unidirecional. Você pode redefini-lo: http://dev.mysql.com/doc/refman/5.0/en/resetting-permissions.html
trabalhou em Centos7 mysqld --init-file=/root/m.txt. Eu adicionei o comando acima SET PASSWORD FOR 'root'@'localhost' = PASSWORD('yournewpassword');ao /root/m.txt
Damodar Bashyal
8
A menos que o gerenciador de pacotes solicite que você digite a senha raiz durante a instalação, a senha raiz padrão é a sequência vazia. Para conectar-se ao servidor recém-instalado, digite:
shell> mysql -u root --password=
mysql>
Para alterar a senha, volte ao shell unix e digite:
shell> mysql -u root --password=root...
blah, blah, blah : mysql welcome banner
...
mysql>
Bingo! Novo fazer algo interessante
mysql> show databases;+--------------------+|Database|+--------------------+| information_schema || mysql || performance_schema |+--------------------+3rowsinset(0.00 sec)
agora não está usando senhas, mas soquetes autenticados. apenas alterar a senha não é mais suficiente.
Kit Ramos
7
Além das outras respostas, em uma instalação cpanel, a senha root do mysql é armazenada em um arquivo chamado /root/.my.cnf. (e o serviço cpanel redefine-o novamente, portanto as outras respostas aqui não ajudarão)
parece que o servidor mysql não está mais usando autenticação por senha. você precisa iniciar o cliente mysql como um superusuário (sudo) para obter acesso até alterar o método de login.
Kit Ramos
4
A senha padrão que funcionou para mim após a instalação imediata do servidor mysql é: mysql
talvez ele não tenha respondido à pergunta, mas muitas pessoas que chegam aqui podem achar que isso resolve seu problema.
Ohad Cohen
3
O procedimento muda dependendo da versão do MySql. Siga o procedimento exatamente como descrito para sua versão:
DICAS - Leia antes da página de instruções para sua versão do MySql *
Na etapa 5: em vez de executar o CMD, crie um atalho na área de trabalho chamando CDM.exe. Em seguida, clique com o botão direito do mouse no atalho e selecione "Executar como administrador".
Na etapa 6: ignore a primeira versão proposta do comando e execute a segunda, aquela com o parâmetro --defaults-file
Depois de executar o comando, se tudo estiver ok, a janela do CMD permanecerá aberta e o comando da etapa 6 continuará em execução. Simplesmente feche a janela (clique em 'x') e force o fechamento do MySQl no Gerenciador de tarefas.
Exclua o arquivo com os comandos SQL e inicie novamente o MySQL. A senha deve ser alterada agora.
As respostas fornecidas aqui parecem não funcionar para mim; o truque acabou sendo: ALTER USER 'root' @ 'localhost' IDENTIFICADO COM mysql_native_password BY 'test';
Abra duas sessões de shell, efetuando login em uma como usuário raiz do Linux e a outra como usuário não raiz com acesso ao mysqlcomando.
Em sua sessão raiz, pare o ouvinte normal do mysqld e inicie um ouvinte que ignora a autenticação de senha ( nota: esse é um risco de segurança significativo, pois qualquer pessoa com acesso ao mysql
comando pode acessar seus bancos de dados sem uma senha. Você pode fechar sessões de shell ativas e / ou desativar o acesso ao shell antes de fazer isso):
# systemctl stop mysqld # /usr/sbin/mysqld --skip-grant-tables -u mysql &
Na sua sessão não raiz, efetue login no mysql e defina a senha root do mysql:
Eu resolvi isso de uma maneira diferente, isso pode ser mais fácil para alguns.
Fiz desta maneira porque tentei iniciar no modo de segurança, mas não consigo conectar com o erro: ERRO 2002 (HY000): Não é possível conectar ao servidor MySQL local através do soquete '/var/run/mysqld/mysqld.sock' (2)
Respostas:
graças a @thusharaK, eu poderia redefinir a senha root sem saber a senha antiga.
No ubuntu, fiz o seguinte:
Em seguida, execute o mysql em um novo terminal:
E execute as seguintes consultas para alterar a senha:
No MySQL 5.7, o campo de senha no campo da tabela mysql.user foi removido, agora o nome do campo é 'authentication_string'.
Saia do modo de segurança do mysql e inicie o serviço mysql:
fonte
mysqladmin -u root -p shutdown
, com a nova senha.mysql -u root
. Mostra erroAccess denied
Você não pode ver a senha com hash; a única coisa que você pode fazer é redefini-lo!
Pare o MySQL:
ou
Inicie no modo de segurança:
(a linha acima é o comando inteiro)
Este será um comando em andamento até o término do processo; portanto, abra outra janela do shell / terminal, faça o login sem uma senha:
MySQL 5.7 e superior:
Inicie o MySQL:
ou
Sua nova senha é 'senha'.
fonte
mysql_secure_installation
e a raiz não estava mais cooperando. O que aauthentication_string
configuração faz?mysqladmin -u root -p shutdown
com a nova senha entãosudo service mysql start
O MySQL 5.7 e superior salva a raiz no arquivo de log do MySQL.
Por favor tente isto:
fonte
/var/log/mysql/error.log
continha uma advertência sobre a senha de root estar vazio - de modo que este tipo de salvou meu dia :)uma coisa que me levou a uma nova instalação do mySQL e me pergunto por que não consegui que a senha padrão funcionasse e por que até os métodos de redefinição não estavam funcionando. bem acontece que no Ubuntu 18 a versão mais recente do servidor mysql não usa autenticação por senha para o usuário root por padrão. Portanto, isso significa que não importa o que você definir, não permitirá que você o use. está esperando que você efetue login a partir de um soquete privilegiado. tão
não funcionará, mesmo se você estiver usando a senha correta !!! negará acesso, não importa o que você colocar.
Em vez disso, você precisa usar
que funcionará sem qualquer senha. então quando você precisar digitar
então saia e agora a coisa sangrenta finalmente aceitará sua senha
fonte
Você não pode encontrar. Ele é armazenado em um banco de dados, ao qual você precisa acessar a senha root e, mesmo que você tenha acesso de alguma forma, ele é hash com um hash unidirecional. Você pode redefini-lo: http://dev.mysql.com/doc/refman/5.0/en/resetting-permissions.html
fonte
Siga estas etapas para redefinir a senha no sistema Windows
Pare o serviço Mysql do gerenciador de tarefas
Crie um arquivo de texto e cole a instrução abaixo
Salve como
mysql-init.txt
e coloque-o'C' drive
.Abra o prompt de comando e cole o seguinte
C:\> mysqld --init-file=C:\\mysql-init.txt
fonte
mysqld --init-file=/root/m.txt
. Eu adicionei o comando acimaSET PASSWORD FOR 'root'@'localhost' = PASSWORD('yournewpassword');
ao /root/m.txtA menos que o gerenciador de pacotes solicite que você digite a senha raiz durante a instalação, a senha raiz padrão é a sequência vazia. Para conectar-se ao servidor recém-instalado, digite:
Para alterar a senha, volte ao shell unix e digite:
A nova senha é 'root'. Agora conecte-se ao servidor:
Ops, a senha foi alterada. Use o novo
root
:Bingo! Novo fazer algo interessante
Maurycy
fonte
Além das outras respostas, em uma instalação cpanel, a senha root do mysql é armazenada em um arquivo chamado
/root/.my.cnf
. (e o serviço cpanel redefine-o novamente, portanto as outras respostas aqui não ajudarão)fonte
você pode ver a senha root do mysql, bem, eu tentei no mysql 5.5, então não conheço outra versão nova, funcione ou não
fonte
Isso funcionou para mim:
No terminal, digite o seguinte
$ sudo mysql -u root -p
Digite a senha: // basta pressionar enter
mysql>
fonte
A senha padrão que funcionou para mim após a instalação imediata do servidor mysql é:
mysql
fonte
O procedimento muda dependendo da versão do MySql. Siga o procedimento exatamente como descrito para sua versão:
DICAS - Leia antes da página de instruções para sua versão do MySql *
Na etapa 5: em vez de executar o CMD, crie um atalho na área de trabalho chamando CDM.exe. Em seguida, clique com o botão direito do mouse no atalho e selecione "Executar como administrador".
Na etapa 6: ignore a primeira versão proposta do comando e execute a segunda, aquela com o parâmetro --defaults-file
Depois de executar o comando, se tudo estiver ok, a janela do CMD permanecerá aberta e o comando da etapa 6 continuará em execução. Simplesmente feche a janela (clique em 'x') e force o fechamento do MySQl no Gerenciador de tarefas.
Exclua o arquivo com os comandos SQL e inicie novamente o MySQL. A senha deve ser alterada agora.
5.0 http://dev.mysql.com/doc/refman/5.0/en/resetting-permissions.html
5.1 http://dev.mysql.com/doc/refman/5.1/en/resetting-permissions.html
... basta alterar a versão no link (5.5, 5.6, 5.7)
fonte
No seu arquivo .err "hostname" dentro da pasta de dados em que o MySQL trabalha, tente procurar por uma string que comece com:
"Uma senha temporária é gerada para roor @ localhost"
você pode usar
pressione o comando slash seguido da string que você deseja procurar
Em seguida, pressione n para ir para o próximo resultado.
fonte
As respostas fornecidas aqui parecem não funcionar para mim; o truque acabou sendo: ALTER USER 'root' @ 'localhost' IDENTIFICADO COM mysql_native_password BY 'test';
(resposta completa aqui: https://www.percona.com/blog/2016/03/16/change-user-password-in-mysql-5-7-with-plugin-auth_socket/ )
fonte
Sistema:
Procedimento:
Abra duas sessões de shell, efetuando login em uma como usuário raiz do Linux e a outra como usuário não raiz com acesso ao
mysql
comando.Em sua sessão raiz, pare o ouvinte normal do mysqld e inicie um ouvinte que ignora a autenticação de senha ( nota: esse é um risco de segurança significativo, pois qualquer pessoa com acesso ao
mysql
comando pode acessar seus bancos de dados sem uma senha. Você pode fechar sessões de shell ativas e / ou desativar o acesso ao shell antes de fazer isso):# systemctl stop mysqld
# /usr/sbin/mysqld --skip-grant-tables -u mysql &
Na sua sessão não raiz, efetue login no mysql e defina a senha root do mysql:
$ mysql
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPass');
Query OK, 0 rows affected, 1 warning (0.01 sec)
mysql> quit;
Na sua sessão raiz, mate a instância sem senha do mysqld e restaure o ouvinte normal do mysqld para o serviço:
# kill %1
# systemctl start mysqld
Na sua sessão não raiz, teste a nova senha raiz configurada acima:
$ mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
...
mysql>
fonte
Eu resolvi isso de uma maneira diferente, isso pode ser mais fácil para alguns.
Fiz desta maneira porque tentei iniciar no modo de segurança, mas não consigo conectar com o erro: ERRO 2002 (HY000): Não é possível conectar ao servidor MySQL local através do soquete '/var/run/mysqld/mysqld.sock' (2)
O que eu fiz foi conectar normalmente como root:
Então eu criei um novo superusuário:
Em seguida, efetue login como myuser
Tentar alterar a senha não causou erros, mas não fez nada por mim, então eu soltei e recriei o usuário root
O usuário root agora está trabalhando com a nova senha
fonte
Vá para phpMyAdmin> config.inc.php> $ cfg ['Servidores'] [$ i] ['senha'] = '';
fonte
phpmyadmin
.