데이터베이스 관리에 있어서, PostgreSQL 은 전반적으로 가장 널리 사용되는 오픈 소스 프로그램 중 하나입니다. CloudSigma PaaS를 사용하면 애플리케이션을 위해 단독형 또는 클러스터형 PostgreSQL 데이터베이스를 설치할 수 있습니다. 또한, CloudSigma PaaS는 연결 구성 및 확장을 매우 간편하게 만들어 줍니다.
그렇다면 어떻게 사용자의 Node.js 애플리케이션을 PostgreSQL 서버에 연결할 수 있을까요? 이 가이드에서는 이러한 연결을 쉽게 설정하는 방법을 단계별 튜토리얼로 안내합니다.
시작해 보겠습니다!
CloudSigma PaaS에서 Node.js 애플리케이션을 PostgreSQL에 연결하기
1단계. 먼저 CloudSigma 계정에 로그인하고 PaaS 대시보드로 이동합니다. 새 환경을 PostgreSQL 데이터베이스와 함께 생성합니다. 그런 다음, Node.js 컴퓨팅 노드를 추가하고 필요에 따라 각 서버의 확장 제한을 설정합니다:

2단계. 다음 Web SSH 아이콘을 클릭하여 SSH를 통해 Node.js 서버에 접속합니다:

3단계. SSH 클라이언트를 통해 연결되면, 다음을 설치합니다: node-postgres. 이는 PostgreSQL 데이터베이스와 인터페이스하는 데 필요한 Node.js 모듈 그룹입니다. 다음 명령어를 사용하여 모듈을 설치할 수 있습니다:
|
1 |
npm install pg |
다음 node-postgres 설치가 완료될 때까지 기다립니다:

4단계. 다음으로, 데이터베이스와 애플리케이션 간의 연결을 확인하기 위해 Node.js 스크립트를 작성해야 합니다.
With node-postgres를 사용하면 클라이언트(client) 뿐만 아니라 풀(pool) 연결도 사용할 수 있습니다. 클라이언트(Client) 연결은 정적 연결인 반면, 풀(pools)은 자동으로 재연결할 수 있는 클라이언트 객체의 동적 목록을 가집니다. 이 예제에서는 여러 요청을 동시에 수용할 수 있도록 풀(pool) 연결을 생성해 보겠습니다.
먼저, 아무 텍스트 에디터에서 .js 확장자를 가진 파일을 만듭니다. 파일에 다음 코드를 붙여넣어 데이터베이스와의 연결을 생성하고 쿼리를 수행합니다:
|
1 2 3 4 5 6 7 8 9 10 11 12 |
const { Pool } = require('pg') const pool = new Pool({ user: '{user}', host: '{host}', database: '{database}', password: '{password}', port: {port}, }) pool.query('SELECT NOW()', (err, res) => { console.log(err, res) pool.end() }) |
이 코드의 플레이스홀더를 실제 연결 데이터로 교체해야 합니다. 매개변수는 다음과 같습니다:
- {user}
데이터베이스에 로그인하는 데 사용하는 사용자 이름입니다.
- {password}
위에서 언급한 사용자의 비밀번호입니다.
- {host}
PostgreSQL 컨테이너로 연결되는 링크입니다.
- {database}
액세스하려는 데이터베이스입니다. 이 경우 기본 데이터베이스는 PostgreSQL입니다.
- {port}
데이터베이스 서버가 수신 대기하는 포트 번호입니다. PostgreSQL의 기본 포트는 5432.
PostgreSQL을 설치한 후 이메일로 이 연결 정보를 받게 됩니다. 이메일은 다음과 같은 형태입니다:
스크립트는 다음과 같은 모습이 됩니다:

스크립트를 입력한 후, Ctrl+X를 눌러 저장합니다. 시스템에서 변경 사항을 저장할지 묻는 메시지가 나타나면 Ctrl+Y를 눌러 저장하고 진행합니다.
스크립트 본문에서 node-postgres는 자격 증명 대신 연결을 위한 환경 변수를 사용할 수 있습니다. 환경 변수는 다음과 같습니다:
- GUSER={user}
- PGHOST={host}
- PGPASSWORD={password}
- PGDATABASE={database}
- PGPORT={port}
5단계. 특정 명령어와 함께 이 스크립트를 사용하여 애플리케이션 서버에서 데이터베이스로의 연결을 확인할 수 있습니다. 또한 데이터베이스 서버 노드에서 현재 로컬 시간 값을 요청할 수도 있습니다. 이를 위해 다음 명령어를 사용합니다:
|
1 |
node script.js |
연결에 성공하면 다음과 같이 PostgreSQL 서버 노드 시간이 표시됩니다:

이는 Node.js 애플리케이션에서 데이터베이스 컨테이너에 액세스할 수 있음을 의미합니다!
다음과 같은 오픈 소스 솔루션은 PostgreSQL 앱 개발 및 데이터베이스 관리 측면에서 많은 유용성을 제공합니다. 이러한 솔루션은 또한 복제 및 자동 클러스터링.
CloudSigma PaaS 은 Node.js 기반 애플리케이션의 프로세스를 훨씬 더 간단하게 만들고자 합니다. CloudSigma PaaS를 통해 무엇을 달성할 수 있는지 자세히 알아보고 싶으시다면, 여기를 방문해 보세요. 저희의 7일 무료 평가판을 이용해 보시거나, 문의하기를 통해 더 자세한 정보와 플랫폼 데모를 요청해 보세요..

댓글
아직 댓글이 없습니다. 첫 번째로 작성해 보세요.