[DB][Prisma] Prisma 시작하기
Prisma는 Node.js 기반 라이브러리입니다.
때문에 Prisma를 사용하기 위해서는 먼저 Node.js를 설치해야 합니다.
1. 의존관계 설정
먼저 프로젝트를 시작하고자하는 경로로 들어가 아래와 같이 package.json을 구성합니다.
각 버전은 최신버전을 사용해도 무방합니다.
{
"dependencies": {
"@prisma/client": "^5.4.2",
"dotenv": "^16.3.1",
"express": "^4.18.2",
"prisma": "^5.4.2",
},
"devDependencies": {
"nodemon": "^3.0.1"
},
"type": "module",
"scripts": {
"dev": "nodemon app.js",
"start": "node app.js"
}
}
devDependencies (개발환경에서만 필요한 의존관계)
- nodemon : 코드를 실행시킵니다. 실행되는 동안 코드를 수정하면 변경사항이 적용될 수 있도록 자동으로 재시작합니다.
dependencies (일반 의존관계)
- prisma : Prisma 명령어를 실행합니다.
- @prisma/client : Prisma 관련 코드를 실행합니다.
- express : API 미들웨어를 다룹니다. 항목참조
- superstruct : 유효성 검사를 할 때 사용됩니다.
- dotenv : 환경 변수를 설정합니다.
이후 npm install 또는 npm i 로 모든 의존관계를 설치해주면 됩니다.
$ npm i
$ npm install
2. 초기화
Prisma가 특정 데이터베이스를 사용할 수 있도록 초기화 합니다.
$ npx prisma init --datasource-provider [orm 이름]
아래 명령어는 Prisma가 PostgreSQL 데이터베이스를 사용할 수 있도록하는 경우입니다.
$ npx prisma init --datasource-provider postgresql
초기화가 완료되면 아래와 같은 문구를 출력합니다.
3. 환경변수 설정
초기화 후에 환경변수를 관리하는 .env 파일이 생성됩니다.
DATABASE_URL
.env에서는 사용하고자 하는 데이터베이스 서버에 접근할 수 있는 url이 저장되어 있습니다.
해당 url을 사용자 정보에 맞게 수정해야 합니다.
※ Prisma의 경우 PostgreSQL을 포함해서 MySQL, SQLite, SQL Server, MongoDB 등 다양한 데이터베이스 시스템을 이용할 수 있도록 지원하고 있습니다.
여기서는 PostgreSQL을 기준으로 설명합니다.
[PostgreSQL 설치하기]
- 사용 DB : postgresql
- 사용자 이름 : PostgreSQL을 처음 설치 할 때 생성된 사용자인 postgres
- 사용자 비밀번호 : 설치과정에서 함께 설정한 postgres의 비밀번호
- 서버 주소 : 그대로 둬도 무방합니다.
- DB 이름 : 임의로 지정합니다. 만약 서버에 해당 이름의 DB가 없다면, 자동으로 생성됩니다.
PORT
포트 번호는 3000으로 설정합니다.