[SQL] MySQL은 사용자 로그인을 못하게 : 오류 1524
SQLMySQL은 사용자 로그인을 못하게 : 오류 1524
Server version: 5.7.10 MySQL Community Server (GPL)
MySQL을, 나는 사용자 망고 있습니다. 나는 그것을 만들 때 사용자는 완벽했다. 내 컴퓨터를 재부팅 한 후,하지만 망고에 로그인을 시도하면이 출력을 산출 :
$ mysql -u mangos -p
Enter password:
ERROR 1524 (HY000): Plugin '*some_random_long_hash_I_cannot_remember' is not loaded
$
그것은 종류의 암호 해시를 생각 나게 그래서 mysql 데이터베이스에서 user를 조사 후, 나는 망고 암호를 없었다는 것을 발견! 나는 암호를 업데이트 :
SET PASSWORD FOR 'mangos'@'127.0.0.1' = PASSWORD('mangos');
FLUSH PRIVILEGES;
지금, 나는 얻을 :
ERROR 1524 (HY000): Plugin '*3FBBDB84EA2B2A0EA599948396AD622B7FF68183' is not loaded
3FBBDB84EA2B2A0EA599948396AD622B7FF68183는 망고위한 mysql 데이터의 암호 란에 도시 된 동일한 수이며, 원래는 상이한 수이다. 나는 아직도 로그인 할 수 없습니다.
어떻게 MySQL이 제대로 암호를 인식해야합니까? 심지어 문제는 여기인가?
편집 :
mysql> SELECT * FROM mysql.user WHERE user = 'mangos' \G
*************************** 1. row ***************************
Host: localhost
User: mangos
Password: *3FBBDB84EA2B2A0EA599948396AD622B7FF68183
Select_priv: N
Insert_priv: N
Update_priv: N
Delete_priv: N
Create_priv: N
Drop_priv: N
Reload_priv: N
Shutdown_priv: N
Process_priv: N
File_priv: N
Grant_priv: N
References_priv: N
Index_priv: N
Alter_priv: N
Show_db_priv: N
Super_priv: N
Create_tmp_table_priv: N
Lock_tables_priv: N
Execute_priv: N
Repl_slave_priv: N
Repl_client_priv: N
Create_view_priv: N
Show_view_priv: N
Create_routine_priv: N
Alter_routine_priv: N
Create_user_priv: N
Event_priv: N
Trigger_priv: N
Create_tablespace_priv: N
ssl_type:
ssl_cipher:
x509_issuer:
x509_subject:
max_questions: 0
max_updates: 0
max_connections: 0
max_user_connections: 0
plugin: *3FBBDB84EA2B2A0EA599948396AD622B7FF68183
authentication_string: NULL
password_expired: N
해결법
-
==============================
1.당신의 사용자 테이블이 손상되어 나타납니다. 가능성이 재부팅 당신은 MySQL로 업그레이드를 트리거 언급하고으로 mysql_fix_privilege_tables 스크립트가 실행되지 않았습니다. 이 상황을 해결해야한다 :
당신의 사용자 테이블이 손상되어 나타납니다. 가능성이 재부팅 당신은 MySQL로 업그레이드를 트리거 언급하고으로 mysql_fix_privilege_tables 스크립트가 실행되지 않았습니다. 이 상황을 해결해야한다 :
mysql_upgrade -u root -ppassword --skip-grant-tables mysql -u root -ppassword -e "UPDATE mysql.user SET plugin = 'mysql_native_password' WHERE user = 'mangos'; FLUSH PRIVILEGES"
출처 : http://kb.odin.com/en/126676
으로 mysql_fix_privilege_tables에 --force 옵션을 제공하는 것은 업그레이드가 이미 수행 된 경우에도 업그레이드 스크립트를 다시 적용됩니다. 이는 백업에서 부분 복원의 경우에 필요할 수있다.
또한 언급 할만큼 가치, 사용자 암호를 변경하는 명령이 MySQL은 5.7.6에서 변경 / MariaDB 10.2.0 앞으로 :
ALTER USER mangos IDENTIFIED BY 'mangos';
이제이 이전 암호 설정 구문을 공식적으로 사용되지 않는 것은 아니지만, 암호를 설정하기위한 선호되는 방법입니다.
-
==============================
2.나는이 서비스를 종료하고 mysqld_safe를 사용하여, 그것은 어려운 방법을해야했다, 그래서으로 mysql_fix_privilege_tables (@ miken32에 의해 제안이)로 여기에서 설명하는, 나를 위해 작동하지 않았다.
나는이 서비스를 종료하고 mysqld_safe를 사용하여, 그것은 어려운 방법을해야했다, 그래서으로 mysql_fix_privilege_tables (@ miken32에 의해 제안이)로 여기에서 설명하는, 나를 위해 작동하지 않았다.
업데이트 : 사실, 난 하드 하드 하드 방법해야했다, 그래서 하나가 작동하지 않았다 (주의, 이것은 모든 데이터베이스를 삭제) :
-
==============================
3.여기에서 해결 된 문제를 얻었다. 이 문제를 해결하기 위해으로 mysql_fix_privilege_tables -u 루트 -p를 실행하거나 조회에서 "함께"대신 "에 의해"을 사용하여 시도보다 사용자를 생성하는 동안이 오류에 직면하는 경우.
여기에서 해결 된 문제를 얻었다. 이 문제를 해결하기 위해으로 mysql_fix_privilege_tables -u 루트 -p를 실행하거나 조회에서 "함께"대신 "에 의해"을 사용하여 시도보다 사용자를 생성하는 동안이 오류에 직면하는 경우.
CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'xyz';
-
==============================
4.나는의 my.ini 파일에 다음 라인을 추가하고 그것을 완벽하게 일 :
나는의 my.ini 파일에 다음 라인을 추가하고 그것을 완벽하게 일 :
[mysqld] #Path to installation directory. All paths are usually resolved relative to this. basedir = "C:/Program Files (x86)/EasyPHP-Devserver-17/eds-binaries/dbserver/mysql5717x86x191205223118/" skip-grant-tables <=== added this line
희망이 도움이,
건배
-
==============================
5.나는 5.6 상자에서 복제 된 5.7.12 상자에서이 문제를 건너 왔어요. 5.6 박스는 사전 자극 테스트 환경의 그것의 일환으로 5.7에서 다운 그레이드되었다.
나는 5.6 상자에서 복제 된 5.7.12 상자에서이 문제를 건너 왔어요. 5.6 박스는 사전 자극 테스트 환경의 그것의 일환으로 5.7에서 다운 그레이드되었다.
다운 그레이드 과정의 일부로서, 5.6 상자 (이것은 다운 그레이드 해결할 수있는 문제 후 5.6으로 mysql_fix_privilege_tables --force 실행) 그것의 권한을 망쳐 가지고 있지만, 그 과정에서 5.6 서버에서 실행 변경됩니다 권한 중 일부는 5.7에 푸시 된 것으로 보인다 섬기는 사람.
궁극적으로, authentication_string 암호 해시는 루트에 대한 플러그인 열에서 끝났다 @ localhost를.
정확한 열로 해시 이동 문제를 경화 해당 사용자의 '플러그'항목에 삽입 고정 mysql_native_password.
나는 지금은 버그 리포트를 제출 할 수 있도록 문제를 복제하고 있어요,하지만 복제하기 어려운 입증 그래서 관련 요인이 있었다.
from https://stackoverflow.com/questions/34935619/mysql-wont-let-user-login-error-1524 by cc-by-sa and MIT license
'SQL' 카테고리의 다른 글
[SQL] SQL 서버 그룹에 의해 누적 합계 (0) | 2020.05.23 |
---|---|
[SQL] 어떻게 내 SQL 데이터베이스에 많은 관계로 하나를 저장? (MySQL의) (0) | 2020.05.23 |
[SQL] SET 필드에서 값을 제거하는 가장 좋은 방법은? (0) | 2020.05.22 |
[SQL] 어떻게 CodeIgniter의 내 SQL 쿼리를 실행합니다 (0) | 2020.05.22 |
[SQL] 열 등 여러 행을 가입 MYSQL (0) | 2020.05.22 |