SequelizeConnectionError: 클라이언트가 서버에서 요청한 인증 프로토콜을 지원하지 않습니다. MariaDB 클라이언트를 업그레이드하십시오.
어플리케이션이 기동되어 기능할 때 Ubuntu 16.04에서 Mariadb(mysql Ver 15.1 Distribute 10.0.29-MariaDB, readline 5.2를 사용하는 debian-linux-gnu(i686)의 경우)가 있는 nodejs(v6.11.0) 어플리케이션에서 Sequelize 버전 4.3.0을 사용하고 있습니다.Sequelize.sync();
그런 다음 sequelize connection manager가 다음 오류를 발생시킵니다.
처리되지 않은 거부 SequelizeConnectionError: 클라이언트가 서버에서 요청한 인증 프로토콜을 지원하지 않습니다. MariaDB 클라이언트를 업그레이드하십시오.
at Utils.Promise.tap.then.catch.err (/home/dariksoft/cars/node_modules/sequelize/lib/dialects/mysql/connection-manager.js:146:17)
at tryCatcher (/home/dariksoft/cars/node_modules/bluebird/js/release/util.js:16:23)
at Promise._settlePromiseFromHandler (/home/dariksoft/cars/node_modules/bluebird/js/release/promise.js:512:31)
at Promise._settlePromise (/home/dariksoft/cars/node_modules/bluebird/js/release/promise.js:569:18)
at Promise._settlePromise0 (/home/dariksoft/cars/node_modules/bluebird/js/release/promise.js:614:10)
at Promise._settlePromises (/home/dariksoft/cars/node_modules/bluebird/js/release/promise.js:689:18)
at Async._drainQueue (/home/dariksoft/cars/node_modules/bluebird/js/release/async.js:133:16)
at Async._drainQueues (/home/dariksoft/cars/node_modules/bluebird/js/release/async.js:143:10)
at Immediate.Async.drainQueues (/home/dariksoft/cars/node_modules/bluebird/js/release/async.js:17:14)
at runCallback (timers.js:672:20)
at tryOnImmediate (timers.js:645:5)
at processImmediate [as _immediateCallback] (timers.js:617:5)
mariadb-server와 mariadb-client를 업데이트했는데 이미 문제가 발생했어요!
누가 이 문제를 해결하도록 도와줄 수 있나요?
답을 찾았어요
mysql 명령줄에 로그인하고 다음 명령을 작성합니다.
use mysql;
update user set authentication_string=password(''),plugin='mysql_native_password' where user='root';
저 같은 경우에는 다음 세 줄을 입력해야 했습니다.
use mysql;
update user set authentication_string=password('new_root_password'), plugin='mysql_native_password' where user='root';
flush privileges;
상위 버전의 mysql을 사용하는 경우 패스워드 기능을 사용할 필요가 없습니다.대신 아래와 같이 쓰시면 됩니다.
use mysql;
update user set authentication_string='new_root_password', plugin='mysql_native_password' where user='root';
flush privileges;
언급URL : https://stackoverflow.com/questions/45051927/sequelizeconnectionerror-client-does-not-support-authentication-protocol-reques
'programing' 카테고리의 다른 글
웹 페이지가 iframe 내에 로드되어 있는지 브라우저 창에 직접 로드되어 있는지 확인하는 방법 (0) | 2022.10.27 |
---|---|
github에서 pip 설치가 작동하도록 구성 (0) | 2022.10.27 |
MySQL의 BLACKHOLE Engine의 목적은 무엇입니까? (0) | 2022.10.27 |
MySQL LIKE IN()? (0) | 2022.10.27 |
최대 크기 readwritesplit에 동일한 연결 수가 표시됨 (0) | 2022.10.27 |