노는게 제일 좋습니다.

(Ubuntu) js Sequelize : mysql의 root계정에 access denied될 때 본문

그 외

(Ubuntu) js Sequelize : mysql의 root계정에 access denied될 때

노는게 제일 좋습니다. 2020. 9. 26. 02:32
AccessDeniedError [SequelizeAccessDeniedError]: Access denied for user 'root'@'localhost' (using password: YES)
    at ConnectionManager.connect (/home/wonjinyi/Desktop/LearnNode/200925/node_modules/sequelize/lib/dialects/mysql/connection-manager.js:118:17)
    at processTicksAndRejections (internal/process/task_queues.js:97:5) {
  parent: Error: Access denied for user 'root'@'localhost' (using password: YES)
      at Packet.asError (/home/wonjinyi/Desktop/LearnNode/200925/node_modules/mysql2/lib/packets/packet.js:712:17)
      at ClientHandshake.execute (/home/wonjinyi/Desktop/LearnNode/200925/node_modules/mysql2/lib/commands/command.js:28:26)
      at Connection.handlePacket (/home/wonjinyi/Desktop/LearnNode/200925/node_modules/mysql2/lib/connection.js:425:32)
      at PacketParser.onPacket (/home/wonjinyi/Desktop/LearnNode/200925/node_modules/mysql2/lib/connection.js:75:12)
      at PacketParser.executeStart (/home/wonjinyi/Desktop/LearnNode/200925/node_modules/mysql2/lib/packet_parser.js:75:16)
      at Socket.<anonymous> (/home/wonjinyi/Desktop/LearnNode/200925/node_modules/mysql2/lib/connection.js:82:25)
      at Socket.emit (events.js:315:20)
      at addChunk (_stream_readable.js:295:12)
      at readableAddChunk (_stream_readable.js:271:9)
      at Socket.Readable.push (_stream_readable.js:212:10) {
    code: 'ER_ACCESS_DENIED_ERROR',
    errno: 1045,
    sqlState: '28000',
    sqlMessage: "Access denied for user 'root'@'localhost' (using password: YES)"
  },
  original: Error: Access denied for user 'root'@'localhost' (using password: YES)
      at Packet.asError (/home/wonjinyi/Desktop/LearnNode/200925/node_modules/mysql2/lib/packets/packet.js:712:17)
      at ClientHandshake.execute (/home/wonjinyi/Desktop/LearnNode/200925/node_modules/mysql2/lib/commands/command.js:28:26)
      at Connection.handlePacket (/home/wonjinyi/Desktop/LearnNode/200925/node_modules/mysql2/lib/connection.js:425:32)
      at PacketParser.onPacket (/home/wonjinyi/Desktop/LearnNode/200925/node_modules/mysql2/lib/connection.js:75:12)
      at PacketParser.executeStart (/home/wonjinyi/Desktop/LearnNode/200925/node_modules/mysql2/lib/packet_parser.js:75:16)
      at Socket.<anonymous> (/home/wonjinyi/Desktop/LearnNode/200925/node_modules/mysql2/lib/connection.js:82:25)
      at Socket.emit (events.js:315:20)
      at addChunk (_stream_readable.js:295:12)
      at readableAddChunk (_stream_readable.js:271:9)
      at Socket.Readable.push (_stream_readable.js:212:10) {
    code: 'ER_ACCESS_DENIED_ERROR',
    errno: 1045,
    sqlState: '28000',
    sqlMessage: "Access denied for user 'root'@'localhost' (using password: YES)"
  }
}

위와같은 모양새의 오류를 만나 어쩔 줄 몰라 온갖 자료를 다 뒤집어봤다. 영어와 중국어를 보다가 해결이 안돼서 한숨을 쉬고있었는데, 해답은 의외로 한국어자료에 있었다.

Mysql 에러코드 1698과 1045 두 가지에 대해서 확실하게 해결 본 자료를 소개한다.

 

1. ERROR 1698 (28000): Access denied for user 'root'@'localhost

mysql -h localhost -u root -p 로 접속 시 위와 같은 오류가 뜨는 경우가 있다.

이는 `mysql` schema의 user 테이블에는 root계정에 대한 plugin이라는 것이 저장되어있는데, 이 타입이 잘못 지정되어서 그렇다.

아래 링크를 참고하여 root의 plugin을 auth_socket 에서 mysql_native_password로 변경하면 된다.

https://bscnote.tistory.com/77

 

ubuntu에서 mysql의 root계정이 로그인 안될때.

참고: https://stackoverflow.com/questions/39281594/error-1698-28000-access-denied-for-user-rootlocalhost ubuntu같은 일부 리눅스 시스템에서 mysql을 설치하고 $ mysql -u root -p 으로 로그인 시도를하면..

bscnote.tistory.com

 

2. ERROR 1045 (28000) : Access denied for user 'root'@'localhost' (using password: YES)

아마 위 1698에러를 해결했다면, 새로운에러 1045가 나타날 것이다. 이 문제는 두 가지 원인을 생각해볼 수 있다.

첫 번째로, 그냥 비밀번호를 틀렸거나 (오타가 났거나, 까먹었거나)

두 번째로, 암호화된 비밀번호값이 비어있거나

이 글까지 왔다면 각각 확인해볼 기력도 없이 이미 지쳐있을 것이다. 그냥 둘 다 해결해보자. 

https://velog.io/@codemcd/MySQL-%EB%B9%84%EB%B0%80%EB%B2%88%ED%98%B8-%EC%9E%AC%EC%84%A4%EC%A0%95%ED%95%98%EA%B8%B0-zxk1qm3y6c

 

MySQL 비밀번호 재설정하기

팀 프로젝트에서 MySQL을 사용할 때 평소에 사용하지 않는 비밀번호를 사용해서 이를 변경하려 했다. 간단히 구글에 검색해서 변경하려고 했는데 생각지도 못한 오류들이 너무 많았다. 버전도 경

velog.io

https://seyul.tistory.com/82

 

MySQL root 비밀번호 재설정하기

이 글에서는 MySQL root 비밀번호 잊었을 때 root 비번을 재설정하는 해결법 알아보자. MySQL 프로세스 죽이기 mysqld_safe를 사용하면 비밀번호 없이 MySQL root 계정으로 접속 가능하다. mysqld_safe를 사용하

seyul.tistory.com

 

Comments