Node MSSQL 연결

알파카파카·2025년 4월 28일
post-thumbnail

1. Node 의존성 설치하기

npm i dotenv express mssql

2. .env 파일 작성하기

혼자서만 테스트 할 때는 무조건 작성하지는 않아도 되지만

나중에 Git에 올릴 때는 꼭 .gitignore 파일과 함께 작성하자

DB_IP='[연결할 DB서버 정보]'	# DB IP 주소
DB_PORT='[연결할DB서버포트]'	# DB PORT 정보
DB_NAME='[DB명]'	# DB 이름
DB_ID='[DB 계정 ID]'	# DB 사용자 이름 ( 스키마 )
DB_PW='[DB 계정 PW]'	# DB 비밀번호
# 여기까지 꼭 필요한 내용

DB_ENCRYPT = 'false'	# SSL 통신 여부 확인
DB_TRUST_CERT='false'	# 안전한 인증서 연결 여부 확인
DB_SELECT_QUERY='[사용할 쿼리]'	# DB에서 사용할 쿼리

3. js 파일 생성

require('dotenv').config()
const sql = require('mssql')

const dbConfig = {
  server: process.env.DB_SERVER,
  port: parseInt(process.env.DB_PORT, 10),
  datebase: process.env.DB_NAME,
  user: process.env.DB_USERNAME,
  password: process.env.DB_PASSOWRD,
  pool: {
    max: 5,
    min: 1
  },
  options: {
    encrypt: process.env.DB_ENCRYPT === 'true',
    trustServerCertificate: process.env.DB_TRUST_CERT === 'true',
    cryptoCredentialsDetails: {
      minVersion: 'TLSv1'        // TLS 1.0 이상 허용
    }
  }
}

// 풀 연결
const poolPromise = new sql.ConnectionPool(dbConfig)
  .connect()
  .then(pool => {
    console.log('--- MSSQL Connected!!! ---')
    return pool
  })
  .catch(err => {
    console.error('--- DB Connection Failed 8n8 ---', err)
    throw err
  })

module.exports = { sql, poolPromise }

이렇게 하면 연결 잘 됨

profile
타닥,,, 타다닥,,,,,,,

0개의 댓글