사랑하애오
article thumbnail
mysql -u root -p

로 로그인을 하려하는데 에러가 발생했다.


MySQL 데이터베이스를 연결하기 위해,
MySQL Workbench에서 아래 명령어를 입력하여 유저를 생성하였다.

-- 유저이름@아이피주소
create user 'root'@'localhost' identified by '1234';

-- 권한 부여
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost';

CREATE DATABASE test CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
use test;

root 계정 유저 생성을 완료했다.
모든 권한도 부여하였는데..

사용자별 Auth plugin 을 조회합니다.

SELECT User, Host, plugin FROM mysql.user;
+------------------+-----------+-----------------------+
| User             | Host      | plugin                |
+------------------+-----------+-----------------------+
| debian-sys-maint | localhost | caching_sha2_password |
| mysql.infoschema | localhost | caching_sha2_password |
| mysql.session    | localhost | caching_sha2_password |
| mysql.sys        | localhost | caching_sha2_password |
| root             | localhost | auth_socket           |
+------------------+-----------+-----------------------+
 

root 사용자는 auth_socket 인증 방식을 사용하는 것을 볼 수 있습니다.

이것을 caching_sha2_password 방식으로 변경합니다.
예전 버전은 auth plugin 이 mysql_native_password 방식일 수 있으며,

그럴 경우 아래 쿼리와 같이 mysql_native_password 로  설정하세요.

잘못 설정할 경우 root 로도 로그인이 불가능합니다.

UPDATE user SET plugin='mysql_native_password' WHERE User='root';
 
 
UPDATE user SET plugin='caching_sha2_password' WHERE User='root';
 

root 암호가 설정되지 않았다면 설정해 줍니다.

 SET PASSWORD FOR 'root'@'localhost' = '1234';
 
 

변경된 정책을 반영해 줍니다.

FLUSH PRIVILEGES;
 
 

정책 변경이므로 MySQL 을 재구동합니다.

 

profile

사랑하애오

@사랑하애

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!