반응형

안녕하세요 ^ㅁ^

현재 사학년이지만, 시험이 5개나 있는 사학년입니다.....

현재 시험기간이라서 졸업작품에 더 추가한거는 없었지만! 드디어 웹호스팅?(맞는 말인가요 흑흑)했습니다.

 

AWS다들 하시길래 그걸 도전해 볼까? 했지만 사실 처음으로 웹호스팅올려보는 거라서 그냥 cafe24를 통해서 사용을 하였습니다. 

 


솔직히 딱히 뭐 에러가 난 건, 

SSH-key까지 다 했는데 깃에 올릴때마다 계속 

 

does not appear to be a git repository

fatal : could not read from remote repository.

이라고 뜨는 것이었다.

 

왜 이러지 했는데 cafe24에서 앱에 퍼블릭키(public key)를 제대로 할당? 부여? 하지 않아서 일어난 일이었다. ^^


호스팅 도움이 된 블로그들 

 

https://honeystorage.tistory.com/36

 

cafe24 node.js호스팅 (완벽정리. 장담.) - 업데이트됨

정말 귀찮아서 포스팅 안하려고했는데 저 처럼 쓸데없이 시간을 보낼지도 모르는 여러분을위해 포스팅합니다. 내용은 cafe24 node.js호스팅의 및 push, 실행까지 모든내용입니다. 캡쳐는 귀찮아서 생략합니다. tex..

honeystorage.tistory.com

정말 세세하게 다 친절하게 알려주셨다.

 

http://www.itpaper.co.kr/nodejs%EB%A1%9C-%EA%B5%AC%ED%98%84%ED%95%9C-%EC%84%9C%EB%B9%84%EC%8A%A4%EB%A5%BC-cafe24-%EC%9B%B9-%ED%98%B8%EC%8A%A4%ED%8C%85%EC%97%90-%EC%A0%81%EC%9A%A9%ED%95%98%EA%B8%B0/

 

Nodejs로 구현한 서비스를 Cafe24 웹 호스팅에 적용하기 » 아이티페이퍼

웹 호스팅 신청하기 http://www.cafe24.com 사이트에 로그인 후, 'Node.js 호스팅' 상품을 선택합니다. (필요하다면 회원가입도 진행되어야 합니다. 사용량에

www.itpaper.co.kr

스크린캡처까지 하셔서 내가 잘 하고 있는가 싶을 때 참고하면서 안심을 하였다.

 

정말 두 블로그 다 너무 참고가 많이 되었습니다.

날숨에 복받으시고 들숨에 건강챙기세요!^^

반응형

▷ 졸업작품에서 DB와 서버를 맡았다.

 

먼저 DB에 테이블을 입력을 하고 서버를 만들기 시작했다.

이전의 nodejs를 이용한 서버+DB 개발 때에는 DB를 mogodb를 사용을 했다. 하지만 이번에는 mariaDB를 사용했다.

그래서 먼저 DB에다가 테이블을 작성을 다하고 서버를 만들었는데 query문을 작성을 해서 디비를 사용할 생각이었다가.. Sequelize 라는 ORM을 알게 되었다. 

 

그래서 Sequellize을 써야지 했는데 따로 모델을 써줘야 되는 것이었다....!(그러기에 이미 디비에 테이블 저장이 됬는데)

 

그래서 여러 검색을 하다가,,

migration도 매뉴얼을 직접 번역도 해보고,,, 별의별 짓을 다했다가 그냥 쓰지 말까 고민을 하다가

 

stackoverflow에서 이 글을 발견했다!

https://stackoverflow.com/questions/10060265/sequelize-how-to-import-definitions-from-an-existing-database

 

Sequelize: how to import definitions from an existing database

Am I required to handwrite the model definitions for Sequelize even if I'm working off of an existing database. If it's not required, then how does one go about using Sequelize with an existing da...

stackoverflow.com

이 질문에 답변에 sequelize-auto 모듈을 알려준 것이었다!

그래서 바로 npm으로 인스톨을 해서 사용을 했다! 

>npm install -g sequelize-auto
>sequelize-auto -o "./models" -d databasename -h localhost -u username -x password -e mysql

하지만 에러가 났다,,,

 

 throw new Error('Please install mysql package manually');
      ^

Error: Please install mysql package manually

 

mysql모듈은 프로젝트에 설치를 했는데 왜 에러가 났지 ㅜㅜㅜ 이러고 고민을 하고 있던 도중

 

https://blog.hanumoka.net/2018/11/23/node-20181123-express-setting-sequelize/#2%EB%B2%88-%EB%B0%A9%EB%B2%95-%EC%A7%84%ED%99%94%EB%90%9C-%EC%8B%9C%ED%80%84%EB%9D%BC%EC%9D%B4%EC%A0%80-%EC%97%B0%EB%8F%99db%EB%8A%94-db%EC%97%90%EC%84%9C-%EB%94%B0%EB%A1%9C-%EA%B4%80%EB%A6%AC%ED%95%98%EB%8A%94-%EB%B0%A9%EC%8B%9D

 

Node Express에 sequelize를 이용해 mysql접속하기

들어아기 테스트용 Express 프로젝트 생성하기 시퀄라이저(sequelize)란 시퀄라이저의 특징 Express서버에 시퀄라이저(sequelize) 연동하기 1번 방법 시퀄라이저 연동(시퀄라이저에서 DB Entity를 관리하는 방식) 2번 방법 진화된 시퀄라이저 연동(DB는 DB에서 따로 관리하는 방식) workbench로 ERD로 DB 스키

blog.hanumoka.net

이분 블로그에서

mysql을 전역으로 설치를 해야 한다는 것을 깨달았다!

>npm install -g mysql

 그리고 다시 실행해 보니 에러가 나지 않았다!

 

Sequelize-auto의 깃허브

https://github.com/sequelize/sequelize-auto

 

sequelize/sequelize-auto

Automatically generate bare sequelize models from your database. - sequelize/sequelize-auto

github.com

 

나중에 Sequelize을 더 자세하게 공부하고 써야겠다!

반응형

 

에러,,, 너란,,, 에러,,,,,

 

 

지금 오늘 완료를 한 거는 'mysql' 이라는 node.js모듈을 사용해서 mariadb를 연결하는 것을 완료를 했습니다!

 

그래서 무슨 에러가 났는데?라고 하면

               

          1. mysql에서 ER_ACCESS_DENIED_ERROR가 나온 상황

          2. mysql에서 connect ECONNREFUSED 127.0.0.1:3307가 나온 상황

 

1. 첫번째 에러 나온 상황

 

 문제를 해결 했는데 문제가 된 ((나의 경우에))는

https://supdev.tistory.com/46  이분의 블로그를 읽고 나도 모듈화를 해보자! 그럼 더 좀더 깔끔해보이겠지 라는 생각으로 참고를 해서 진행을 하였다. (createConnection부분만 참고 하였다. 그래서 에러가 난 걸까,,?부분 참고해서?)

 

처음에는 따로 ./config/config.js 에 module.exports로

module.exports=(()=>{

    return {

        connectionLimit :5,

        host : 'localhost',

        user : 'user',

        password:'패스워드',

        database: '데이터베이스',

        port : 3307

    }

})

이런 식으로 작성한 후 app.js에는 

var sql = require('mysql');



const config = require('./config/config')

var connection = mysql.createConnection({

    host : config.host,

    user : config.user,

    password : config.password,

    database : config.database,

    port : config.port

});

이렇게가 에러난 상황이다.

 

이 방법을 config를 이용해서 나타내지 않고,

var connection = mysql.createConnection({

    host : 'localhost',

    user : 'user_name',

    password : '나의 패스워드',

    database : '데이터베이스',

    port : 3307

});

 이렇게 다 적어 주니깐 에러는 해결이 되었다.

 

2. 두번째 에러가 나온 상황

 

하지만 저 에러가 나오지 않았다 하는 순간,,,! 또 다른 에러가 나왔다.

connect ECONNREFUSED 127.0.0.1:3307 ,,,, 마리아 디비로 해서 그런가 생활 코딩에서 댓글로 에러가 나는 사람들은 비밀번호를,,, 하라고 하던데 그 해결방법은 나의 해결 방법이 아니였다.

 

이 에러 메세지는

{ Error: connect ECONNREFUSED 127.0.0.1:3307

      at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1117:14)

      --------------------

      at Protocol._enqueue (C:\Users\almon\OneDrive\바탕 화면\bookingProject\node_modules\mysql\lib\protocol\Protocol.js:144:48)

      at Protocol.handshake (C:\Users\almon\OneDrive\바탕 화면\bookingProject\node_modules\mysql\lib\protocol\Protocol.js:51:23)

     at Connection.connect (C:\Users\almon\OneDrive\바탕 화면\bookingProject\node_modules\mysql\lib\Connection.js:118:18)

     at Object. (C:\Users\almon\OneDrive\바탕 화면\bookingProject\server\app.js:45:12)

     at Module._compile (internal/modules/cjs/loader.js:689:30)

     at Object.Module._extensions..js (internal/modules/cjs/loader.js:700:10)

     at Module.load (internal/modules/cjs/loader.js:599:32)

      at tryModuleLoad (internal/modules/cjs/loader.js:538:12)

      at Function.Module._load (internal/modules/cjs/loader.js:530:3)

     at Function.Module.runMain (internal/modules/cjs/loader.js:742:12)

     errno: 'ECONNREFUSED',

     code: 'ECONNREFUSED',

     syscall: 'connect',

     address: 'localhost',

      port: 3307,

     fatal: true }

 

라고 떳는데 TCP.... 문제인가? 하고 뭐지,,,, 라고 생각하고 프로토콜,,,, 네트워크 (ㅂㄷㅂㄷ)


이라고 생각하고 있던 와중에 처음에 mysql이 아닌 mariadb모듈로 사용할려고 해서 npm에서 사용방법을 봤었을때 config작성에서 port를 작성하지 않는 게 생각이 났다!

 

그래서 곧바로 port정보를 삭제를 했다. 

그러니깐 에러가 나오지 않았다!!!!!!!!!!!!!!!!

히히,,히히,,,

오늘!!할!!졸작 계획!!! 끝!!!!

 ■ 오늘 에러난거 포스팅 하기  (완료!)

 

==================================================================

 

학부생때는 몰랐는데 이제 다시 해당 포스트를 보니깐 어떤 문제인지 알아 냈다...

port 를 3306을 안쓰고 3307을 쓰니깐 해당 포트에 mysql가 없으니깐 연결거부가 일어난거다... 

 

+ Recent posts