Eu quero criar um novo usuário no mysql com sintaxe:
create user 'demo'@'localhost' identified by 'password';
Mas ele retorna um erro:
Sua senha não atende aos requisitos atuais da política.
Eu tentei muitas senhas, mas elas não funcionam. Como posso consertar isso?
SHOW VARIABLES LIKE 'validate_password%'
UNINSTALL COMPONENT 'file://component_validate_password';
Respostas:
Por causa da sua senha. Você pode ver as métricas de configuração de validação de senha usando a seguinte consulta no cliente MySQL:
A saída deve ser algo assim:
então você pode definir o nível da política de senha mais baixo, por exemplo:
verifique a documentação do MySQL .
fonte
SET GLOBAL validate_password_policy = 0;
SET GLOBAL validate_password.length = 6; SET GLOBAL validate_password.number_count = 0;
Atualizada!!SET GLOBAL validate_password.policy = 0;
NOTA: Essa pode não ser uma solução segura. Mas se você estiver trabalhando em um ambiente de teste, só precisa de uma solução rápida e nem se preocupa com as configurações de segurança. Esta é uma solução rápida.
O mesmo problema aconteceu comigo quando executei o "mysql_secure_installation" e modifiquei o nível de segurança da senha para 'médio'.
Eu ignorei o erro executando as seguintes ações:
certifique-se de reinstalar o plug-in "validate_password", se necessário.
fonte
Se você não se importa com a política de senha. Você pode configurá-lo como LOW emitindo abaixo do comando mysql:
fonte
SET GLOBAL validate_password.policy=LOW;
vez dissoPara MySQL 8 *
SET GLOBAL validate_password.policy=LOW
Link de referência para explicar a política - Clique aqui
fonte
Depois de executar o comando
sudo mysql_secure_installation
.sudo mysql
para entrar no prompt do mysql.SELECT user,authentication_string,plugin,host FROM mysql.user;
para verificar se o usuário root possui como plugin auth_socket .uninstall plugin validate_password;
a remoção de privilégios antes de executar issoALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
Certifique-se de alterar a senha para uma senha forte.NOTA: verifique este link https://www.digitalocean.com/community/tutorials/how-to-install-mysql-on-ubuntu-18-04 para obter mais ajuda
fonte
Você precisa alterar a política de senha do MySQL para LOW.
faça login como root
mudar política
ou
Saída
reinicie o serviço MySQL
Você precisa alterar a política de senha do MySQL para Baixa = 0 / Média = 1 / Alta = 2.
fonte
Para o MySql 8, você pode usar o seguinte script:
fonte
Na minha opinião, definir "validate_password_policy" como "low" ou desinstalar o "validate password plugin" não é a coisa certa a fazer. Você nunca deve comprometer a segurança do seu banco de dados (a menos que realmente não se importe). Eu estou querendo saber por que as pessoas estão sugerindo essas opções quando você simplesmente pode escolher uma boa senha.
Para superar esse problema, executei o seguinte comando no mysql: SHOW VARIABLES LIKE 'validate_password%' conforme sugerido por @JNevill. Meu "validate_password_policy" foi definido como Médio, juntamente com outras coisas. Aqui está a captura de tela de sua execução: Validar política de senha
O resultado é auto-explicativo. Para uma senha válida (quando a política de Senha estiver definida como média):
Portanto, uma senha válida deve obedecer à política. Exemplos de senha válida para as regras acima talvez:
Você pode escolher qualquer combinação, desde que satisfaça a política.
Para outros "validate_password_policy", você pode simplesmente procurar nos valores opções diferentes e escolher sua senha de acordo (não tentei por "STRONG" ).
https://dev.mysql.com/doc/refman/5.6/en/validate-password-options-variables.html
fonte
validate_password_policy
paraLOW
. Os usuários podem criar ou gerar perfeitamente uma senha forte, cumprindo os requisitos. Se você não tiver certeza de como fazer isso, use uma ferramenta para isso. Por exemplo, github.com/joseluisq/rpasswdEtapa 1: verifique seu plug-in de autenticação padrão
Etapa 2: atendendo aos requisitos de validação de senha
Etapa 3: configurando seu usuário com os requisitos de senha corretos
fonte
Eu tive o mesmo problema e a resposta está bem na sua frente, lembre-se de quando você executou o script enquanto instalava o mysql como
sudo mysql_secure_installation
lá em algum lugar você escolheu qual tipo de senha você gostaria de escolher
Existem três níveis de política de validação de senha:
Comprimento BAIXO> = 8 Comprimento MÉDIO> = 8, maiúsculas e minúsculas e caracteres especiais FORTE Comprimento> = 8, maiúsculas e minúsculas, caracteres especiais e arquivo de dicionário
Digite 0 = BAIXO, 1 = MÉDIO e 2 = FORTE:
você tem que dar uma senha para a mesma política
Aqui estão alguns exemplos de exemplo de suas senhas:
para o tipo 0:
abcdabcd
para o tipo 1:
abcd1234
para o tipo 2:
ancd@1234
fonte
Para usuários do Laravel com esse problema no MySQL 8.0.x, adicione
ao seu arquivo database.php como abaixo:
Consertou para mim.
fonte
O problema é que sua senha não corresponde às regras de validação de senha. Você pode seguir as etapas abaixo para resolver seu problema.
Você pode simplesmente ver a matriz de configuração da validação de senha digitando o código abaixo.
Então, em sua matriz você pode encontrar abaixo variáveis com os valores correspondentes e lá você tem que verificar
validate_password_length
,validate_password_number_count
evalidate_password_policy
.Verifique os valores usados para essas variáveis. Certifique-se de
validate_password_length
que não deve ser maior que 6. Você pode configurá-lo para 6 usando o código abaixo.E depois disso, você precisa definir o
validate_password_number_count
0. Faça isso usando o código abaixo.Finalmente, você deve configurá-lo
validate_password_policy
paralow
. Ter isso comoMedium
ouHigh
não permitirá senhas menos seguras. Defina isso comolow
abaixo do código.fonte
Definir senha que atenda às 7 regras de validação do MySQL
por exemplo:-
d_VX>N("xn_BrD2y
Tornar os critérios de validação um pouco mais simples resolverá o problema
Mas recomendado uma senha forte é uma solução correta
fonte
Essa mensagem de erro não tem nada a ver com a senha armazenada na sua tabela. Também ocorre se você digitar (no console SQL)
"selecione a senha ('123456789')"
ou se
"selecione a senha ('A123456789')"
ou se
"selecione a senha ('A! 123456789')"
Se você digitar
"selecione a senha ('A! a123456789')"
então vai funcionar. Basta usar letras grandes e pequenas, caracteres especiais e números para criar sua senha.
Você pode desabilitar essas verificações no my.cnf, mas você terá um risco à segurança!
no [mysqld] adicione:
fonte
não funcionou para mim na nova instalação do mysqld no ubuntu, tive que adicionar o seguinte: ao /etc/mysql/mysql.conf.d/mysqld.cnf ou o servidor não foi iniciado (acho que o plug-in não carregou no quando eu simplesmente o adicionei sem a diretiva plugin-load-add)
fonte
Há alguns momentos em que encontrar uma solução rápida é ótimo. Mas se você pode evitar restrições de senhas reduzidas, isso pode impedir que você tenha grandes dores de cabeça no futuro.
O próximo link é da documentação oficial https://dev.mysql.com/doc/refman/5.6/en/validate-password.html , onde eles expõem um exemplo exatamente como o seu e o resolvem.
O único problema que você tem é que sua senha não é forte o suficiente para atender à política mínima real (não recomendada para remoção). Então você pode tentar senhas diferentes, como você pode ver no exemplo.
fonte
MOSTRAR VARIÁVEIS COMO 'validate_password%';
mysql> SET GLOBAL validate_password.length = 6;
mysql> SET GLOBAL validate_password.number_count = 0;
mysql> SET GLOBAL validate_password.policy = BAIXO;
MOSTRAR VARIÁVEIS COMO 'validate_password%';
fonte
fonte