과거 프로그래밍 자료들/컴퓨터설정&오류
[MYSQL 8.0] Node.js 연동 시 Error: ER_NOT_SUPPORTED_AUTH_MODE: Client does not support authentication protocol requested by server; consider upgrading MySQL client at Handshake.Sequence._packetToError 오류
평부
2021. 12. 29. 15:35
- vscode 내 mysql 연동 시 오류 발생
- mysql.js 파일 내 정보
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
var mysql = require('mysql');
var connection = mysql.createConnection({
host: 'localhost',
user: 'nodejs',
password: '12345678',
database: 'opentutorials'
});
connection.connect();
connection.query('select * from topic', function(error, results, fields) {
if(error) {
console.log(error);
}
console.log(results);
});
connection.end();
|
cs |
* 문제 해결 시 참고한 블로그
* user를 'root'가 아닌 'nodejs'로 만들고 DB 권한 부여하는 방법 참고(cmd(명령 프롬프트)에서 설정) : (https://cjh5414.github.io/mysql-create-user/)
- 문제점 : 클라이언트 프로그램에서 mysql 패스워드 플러그인 'caching_sha2_password"를 소화하지 못함
- 해결책 : 클라이언트 프로그램에서 사용할 수 있는 유저의 패스워드 Plusin를 바꿔 줌
* 문제 해결 시 참고한 블로그
(https://1mini2.tistory.com/88)
-> 노랑색으로 표시한
' ALTER USER 'user 이름'@'localhost' IDENTIFIED WITH mysql_native_password BY 'user 설정 시 비밀번호';