< mysql 인증 플러그인 설정 방법 >

* mysql 8.4에서 기본 인증 플러그인 변경 됨: 
mysql_native_password -> caching_sha2_password


* mysql v8.4로 업그레이드 후 로그인 이 안될때 my.ini 파일 수정
[mysqld]
mysql_native_password=ON

---------------------------------------
* 현재 사용중인 인증 플러그인 확인
SELECT Host, User, plugin FROM mysql.user;

* 특정 사용자의 인증 플러그인을 변경
ALTER USER '아이디'@'localhost' IDENTIFIED WITH caching_sha2_password BY '비밀번호';

- 변경 사항 적용
FLUSH PRIVILEGES;

---------------------------------------
* 인증 플러그인 변경후 php 접속 테스트
- windows 
php -r "mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT); $mysqli = new mysqli('127.0.0.1','사용자','비밀번호','mysql',3306); echo 'OK: '.($mysqli->server_info).PHP_EOL;"

- linux
php -r "mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT); \$mysqli = new mysqli('127.0.0.1','사용자','비밀번호','mysql',3306); echo 'OK: ' . \$mysqli->server_info . PHP_EOL;"

 

 

반응형
Posted by codens