개발

시퀄라이즈(sequalize)와 마리아디비(MariaDB) 외부 접속[실패]

카레공 2022. 5. 23. 12:09

https://lab.cliel.com/entry/nodejs-mariaDB%EC%99%80-%EC%8B%9C%ED%80%84%EB%9D%BC%EC%9D%B4%EC%A6%88

 

[node.js] mariaDB CRUD (시퀄라이즈)

1. mariaDB 설치 (WSL2) mariaDB는 아래 명령어로 설치할 수 있습니다. apt update && apt-get -y upgrade apt-get install -y mariadb-server 설치가 완료되면 DB서비스를 시작하고 service mysql start 초기설정..

lab.cliel.com

1. 마리아DB를 설치해준다 (데이터를 쉽게 보기위해 설치했다)

-공식홈페이지에 가서 환경에 맞게 설치해준다

https://mariadb.org/

2.mariaDB client 터미널에 들어가서 설치할때 입력한 비밀번호 입력해주면 접속 완료!

 

3.설치하면 HeidiSQL도 같이 설치되는데 SQLite Browser같은 거라고 보면 된다 

 

 

 

 

 

 [왼쪽그림참고]  생성 눌러주고 외부또는 로컬 호스트명/IP 사용자,암호 등을 입력해주면 된다.

 

 

 

 

 

 

 

 

 

 

4. 일단 백엔드에서 시퀄라이즈 클리와 시퀄라이즈를 설치하자 + 마리아디비

이제 시퀄라이즈를..통해... 백엔드단에 연결해보자 (어떻게 될지 모르는 두려움..)

npm i sequelize sequelize-cli
npx sequelize init

init을 하면 models와 같은 파일들이 생성될 것이다 

마리아 디비도 설치해준다

npm i --save mariadb

5. config.json을 수정해준다

dialect를 다른 사이트에서 보면 mysql로 두는데 나는 mysql을 사용할 줄 모르니 mariaDb로 설정하고 싶었다.

다행히 공홈에서 dialect에 대한 정보를 얻었다

5. 그럼 DB를 연결해보자.... 두근두근

 

const { sequelize } = require("./models");

const server = app.listen(PORT, () => {
  console.log(" 서버 시작");

  sequelize
    .sync({ alter: true }) //데이터 날라가는게 무서워서 force:false처리 안함 
    .then(() => {
      console.log("mariaDB 연결성공");
    })
    .catch((err) => {
      console.error(`mariaDB 연결실패 - ${err}`);
    });
});

=> 실패 Error: Please install mariadb package manually  하하하하하

=> listen EADDRINUSE: address already in use :::3000

=>SELECT 1+1 AS result 모델이 하나도 없다는 뜻 

 

6. 모델을 정의해주자 

models파일에 ERD다이아그램을 보고 설정 해봤지만...

=>CREATE TABLE IF NOT EXISTS `employees` 

 

7 권한 찾아 삼만리

MySQL CLIENT 에서 권한을 받기위해 (인터넷 서칭)

mysql -h %hostname -u %username -p

입력해서 mariaDB로 접속까지는 했다 그 이후에 어떻게 하라는건지... ㅠㅠ

 

....>결국 권한을 받지 못하고 시퀄라이즈는 삭제하고 mysql 문법을 배우기로 했다 ^^ 

답을 알고계신 분은 댓글로 달아주시길 바란다.....

'개발' 카테고리의 다른 글

시퀄라이즈 테이블 옵션 설정  (0) 2022.05.23
시퀄라이즈 데이터 타입  (0) 2022.05.23
웹컴포넌트  (0) 2022.05.23
TCP와 UDP  (0) 2022.05.23
자바스크립트 문자열에서 숫자로 바꾸기  (0) 2022.05.22