인프런 커뮤니티 질문&답변

정민영님의 프로필 이미지

작성한 질문수

Node.js에 TypeScript 적용하기(feat. NodeBird)

시퀄라이즈

MySql ssl 보안 옵션 질문 입니다.

작성

·

221

0

안녕하세요. 제로초님~

강의 보면서 기존의 js 서버를 ts 로 바꾸고 있었는데요.

저는 mysql을 클라우드 서버에 생성해서 작업하고 있습니다.

클라우드의 mysql에 보안 설정으로 ssl설정을 켜둔 상태라

기존 js 서버의 config에 

    ssl: true,
    dialectOptions: {
      ssl: {
        require: true
      }

이렇게 설정이 들어가 있었는데

강의 내용대로 ts 로 바꾸려 하니 잘 안되서 질문 드립니다.

booean 타입과 object 타입은 어떤 식으로

변경 해야 할까요?

 

답변 2

0

정민영님의 프로필 이미지
정민영
질문자

넵.. 해결 했습니다. 

제로초님 config.ts 파일에 

type Config = {
  username: string,
  password: string,
  database: string,
  host: string,
  [key: string]: string,
}

이부분에 모든 타입이 string 으로 되어 있어서

 production: {
    username: process.env.DB_USERNAME!,
    password: process.env.DB_PASSWORD!,
    database: process.env.DB_NAME!,
    host: process.env.DB_HOST!,
    dialect: 'mysql',
    ssl: true,
    dialectOptions: {
      ssl: {
        require: true
      }
    }
}

ssl 설정이라던지,  dialectOptions 같은 경우 boolean 또는 

object 타입으로 설정이 되어야 하는 문제 였는데 

import { Options } from 'sequelize/types';
 
interface IConfigGroup {
  development: Options;
  test: Options;
  production: Options;
}

이렇게 타입을 Options 로 변경해서 해결이 됐습니다.

감사합니다.

0

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

그냥 안된다고 하시면 제가 뭐가 문제인지 알 길이 없습니다. 에러 메시지가 뭔가요?