스프린트 과제를 위해 우선 JavaScript 파일과 mysql을 연결해야 한다.
dontev 모듈을 이용하여 sql 비밀번호를 환경변수로 설정 후 git에서는 숨길 예정이다.
1. dontev 모듈 설치
- dontev 모듈 설치 코드 : npm i dontev
2. .env 파일 생성 후 환경변수 입력
- .env 파일 생성 후, mysql 접속을 위해 아래와 같이 개인정보를 입력 및 저장 (환경 변수로 저장됨)
DATABASE_USERNAME=
DATABASE_PASSWORD='yourpassword'
DATABASE_NAME='learnmysql'
- .env에 입력된 환경 변수는 Node.js의 내장 객체인 process.env에 객체 형태로 저장됨
{
DATABASE_USERNAME: 'root',
DATABASE_PASSWORD: 'yourpassword',
DATABASE_NAME: 'learnmysql'
}
3. JavaScript 파일에서 dontev를 이용해 .env의 환경변수 조회
- mysql.js 파일을 생성한 뒤, mysql 연결 및 dontev 모듈 이용을 위해 아래와 같이 코드 작성 후 저장
const dotenv = require('dotenv');
const mysql = require('mysql');
dotenv.config();
4. process.env를 통해 환경변수 접근하기
- mysql.js 파일에서 process.env를 활용하여 환경변수 불러오기
module.exports = class DatabaseConnector extends SingletonBase {
constructor() {
super();
this.config = {
host: 'localhost',
user: process.env.DATABASE_USERNAME || 'root',
password: process.env.DATABASE_PASSWORD || '',
database: process.env.DATABASE_NAME || 'learnmysql'
};
return this;
}
... 다른 코드들
}
5. .gitignore을 통해 .env의 환경변수 숨기기
- .env에 입력된 개인정보는 git을 통해 외부로 유출되면 안됨
- .gitignore을 파일에 .env를 추가하여 .env에 입력된 개인정보 유출을 막을 수 있음
- .gitignore 파일을 생성하고 아래 코드를 입력 후 저장
node_modules/
package-lock.json
.env
반응형
'프로그래밍 > 웹 개발' 카테고리의 다른 글
[React] useState Hook과 Props로 쇼핑몰 상태관리 (1) | 2021.08.22 |
---|---|
[React] Hook과 Styled Component를 통한 기능 구현 (0) | 2021.08.21 |
[Node.js] MySQL과 연동하여 서버 및 DB 구축하기 (0) | 2021.07.28 |
[Node.js] Mini Node Server 스프린트2 (express 사용) (0) | 2021.07.02 |
[Node. js] Mini Node Server 제작 스프린트 (createServer) (0) | 2021.07.01 |
댓글