2017-04-20 3 views
-2

로그인 페이지에 대해 XAMMP를 사용하여 프로젝트를 MySQL에 연결하려고합니다.Nodej가 Express를 사용하여 MySQL에 연결할 수 없습니다.

내가 MySQL로

내 코드에 연결할 수 없습니다 :

var mysql=require('mysql'); 
 
var connection=mysql.createConnection({ 
 
    host:'127.0.0.1', 
 
    port:'3307', 
 
    user:'root', 
 
    password:'1234', 
 
    database:'db' 
 
}); 
 

 
connection.connect(function(error){ 
 
    if(!!error){ 
 
    console.log(error); 
 
    }else{ 
 
    console.log('Connected!:)'); 
 
    } 
 
})

오류 실행 노드 서버 후

{ Error: ER_ACCESS_DENIED_ERROR: Access denied for user 'root'@'localhost' (using password: YES) 
 
    at Handshake.Sequence._packetToError (D:\db\database\node_modules\mysql\lib\protocol\sequences\Sequence.js:52:14) 
 
    at Handshake.ErrorPacket (D:\db\database\node_modules\mysql\lib\protocol\sequences\Handshake.js:103:18) 
 
    at Protocol._parsePacket (D:\db\database\node_modules\mysql\lib\protocol\Protocol.js:280:23) 
 
    at Parser.write (D:\db\database\node_modules\mysql\lib\protocol\Parser.js:75:12) 
 
    at Protocol.write (D:\db\database\node_modules\mysql\lib\protocol\Protocol.js:39:16) 
 
    at Socket.<anonymous> (D:\db\database\node_modules\mysql\lib\Connection.js:103:28) 
 
    at emitOne (events.js:96:13) 
 
    at Socket.emit (events.js:188:7) 
 
    at readableAddChunk (_stream_readable.js:176:18) 
 
    at Socket.Readable.push (_stream_readable.js:134:10) 
 
    -------------------- 
 
    at Protocol._enqueue (D:\db\database\node_modules\mysql\lib\protocol\Protocol.js:141:48) 
 
    at Protocol.handshake (D:\db\database\node_modules\mysql\lib\protocol\Protocol.js:52:41) 
 
    at Connection.connect (D:\db\database\node_modules\mysql\lib\Connection.js:130:18) 
 
    at Object.<anonymous> (D:\db\database\config\express.js:15:12) 
 
    at Module._compile (module.js:570:32) 
 
    at Object.Module._extensions..js (module.js:579:10) 
 
    at Module.load (module.js:487:32) 
 
    at tryModuleLoad (module.js:446:12) 
 
    at Function.Module._load (module.js:438:3) 
 
    at Module.require (module.js:497:17) 
 
    code: 'ER_ACCESS_DENIED_ERROR', 
 
    errno: 1045, 
 
    sqlState: '28000', 
 
    fatal: true }
,129을

** 그리고 어떻게하면 프로젝트의 다른 js 파일에 삽입하거나 데이터베이스에서 선택할 수 있는지 알고 싶습니다. 나는 컨트롤러 파일에 그것을 wirte 수 있습니까? **

업데이트 솔루션! : -이 문제 xammp 포트와 MySQL 서버 포트가 일치하지 않기 때문에이었다. config로 xammp MSQL 포트를 my.ini 파일에서 3306 (기본값)

+0

으로 해결했습니다. '127.0.0.1'대신'localhost'를 시도하고, 사용자 이름과 패스가 수동으로 로그인하여 올바른지 확인하십시오. mysql 서버. –

+0

시도해도 여전히 같은 오류가 발생합니다. – patppd

답변

0

으로 연결해보십시오. 터미널에 입력하십시오. -

mysql -u root -p 

암호를 입력하십시오.

mysql> 같은 프롬프트가 표시되면 연결되었습니다. 자격 증명을 확인하십시오.

this question도 참조하십시오.

+0

모든 권한 부여 후 'mysql> Query ok ..',하지만 'node server'를 시도했을 때. 여전히 동일한 오류 코드가 발생합니다. – patppd

0

해결 방법 :이 문제는 xammp 포트와 MySQL 서버 포트가 일치하지 않기 때문에 발생했습니다. 그것은 my.ini 파일의 xammp MSQL 포트를 3306 (기본값)

관련 문제