ODBC를 이용해서 node.js와 sybase 연동하기

CodeLog·2021년 9월 1일
0
post-thumbnail

PC환경 : windows 10

시스템종류 : 64비트 운영체제, x64 기반 프로세서

node version : v16.6.2

sybase version : Adaptive Server Enterprise 15.5

sybase 란 ?

사이베이스라는 회사의 관계형 데이터베이스 제품이다. 최신제품은 sybase ASE이다.

sybase 다운로드 링크

무료 30일 사용 가능하다는 것을 참조하기 바랍니다.

다운로드: https://sybase-ase.software.informer.com/download/

ODBC드라이브 없이 연결할 수 있는 라이브러리도 첨부 합니다.

OpenClient++: C++ wrapper for Sybase Open Client library

다운로드 : OpenClient++: C++ wrapper for Sybase Open Client library

다운완료 후 install

sybase가 설치되면 sybase central이라는 프로그램이 생성된다.

server open 확인

sybase install 시 portnumber가 5000으로 설정되어 있었기 때문에 해당 port를 조회한다.

조회시 열린 포트가 없다면 server를 start해 주어야 한다.

$ netstat -ano | findstr 5000

server start 하기

검색창 > "서비스" 입력 > sybase SQLServer _ DESKTOPPUHV1241을 실행해 준다.

실행이 완료되고 프롬프트에서 위에 port 확인 명령어를 수행해서 Port의 open 상태를 확인한다.

sysbase central에서 좌측 section 위 Connection를 클릭

  • User name : sa (관리자 모드)
  • password : 없음
  • Server name : DESKTOPPUHV1241 (sysbase install 시 자동으로 생성됨)

정상적으로 connection 된다면 아래와 같이 데이터베이스 및 테이블 정보를 확인 할 수 있다.

간단한 sybase 터미널 명령어

sybase login (관리자 권한)

$ isql -Usa -P 

sybase 버전 확인

1> sp_version
2> go
Script
         Version
         Status
 -----------------
         ---------------------------------------------------------------------------------------------------
         --------
 ODBC MDA Scripts
         15.5.0.1012.1000/Tue 04-06-2010 20:23:52.35
         Complete
 OLEDB MDA Scripts
         15.5.0.1012.1000/Tue 04-06-2010 20:23:52.35
         Complete
 installcommit
         15.5/EBF 18157 SMP ESD#2/P/NT (IX86)/Windows 2003/asear155/2514/32-bit/
         OPT/Wed Aug 25 05:45:22 2010
         Complete
 installjdbc
         jConnect (TM) for JDBC(TM)/7.00(Build 26502)/P/EBF17821/JDK16/Tue Apr
         6 11:59:33 2010
         Complete
 installmaster
         15.5/EBF 18157 SMP ESD#2/P/NT (IX86)/Windows 2003/asear155/2514/32-bit/
         OPT/Wed Aug 25 05:45:22 2010
         Complete
 installmodel
         15.5/EBF 18157 SMP ESD#2/P/NT (IX86)/Windows 2003/asear155/2514/32-bit/
         OPT/Wed Aug 25 05:45:22 2010
         Complete
 montables
         15.5/18157/P/NT (IX86)/Windows 2003/asear155/2514/32-bit/OPT/Wed Aug 25
          05:22:07 2010
         Complete

(7 rows affected)
(return status = 0)

현재 사용중인 프로세서 정보확인

1> sp_who
2> go

생성된 계정 확인

1> sp_helpuser
2> go
Users_name ID_in_db Group_name Login_name
 ---------- -------- ---------- ----------
 dbo               1 public     sa
 guest             2 public     NULL
 probe             3 public     probe

데이터 베이스 상황보기

1> sp_helpdb
2> go
name           db_size       owner dbid  created      durability
         status
 -------------- ------------- ----- ----- ------------ -----------
         --------------------------------------------------------------------
 master               26.0 MB sa        1 Aug 23, 2021 full
         mixed log and data
 model                 6.0 MB sa        3 Aug 23, 2021 full
         mixed log and data
 sybsystemdb          12.0 MB sa    31513 Aug 23, 2021 full
         trunc log on chkpt, mixed log and data
 sybsystemprocs      152.0 MB sa    31514 Aug 23, 2021 full
         trunc log on chkpt, mixed log and data
 tempdb              106.0 MB sa        2 Aug 23, 2021 no_recovery
         select into/bulkcopy/pllsort, trunc log on chkpt, mixed log and data

데이터 베이스 생성하기

1> create database 'name'
2> go

데이터 베이스 삭제하기

1> drop database 'name'
2> go

테이블 삭제

1> drop table 'name'
2> go

ODBC 란?

어떤 DBMS(응용 프로그램)을 사용하는지 관계없이, DBMS 간에 호환될 수 있도록 마이크로소프트에서 만든 표준이다.

MySQL, MariaDB, MS-SQL, ORACLE, Postgres 등 많은 DBMS에 데이터가 저장되어 있는데, 특정 조건의 데이터를 가져오기 위해 각 DBMS의 Syntax에 맞춰 쿼리문을 작성하는것은 너무 번거롭다.

ODBC를 사용하면 하나의 쿼리문만 작성해도 다양한 DBMS에 저장된 데이터를 가져올 수 있다.

*단 ODBC로 연계하려는 DBMS의 드라이버리들은 설치해야함

참고 : https://mentha2.tistory.com/112

ODBC 설치

ODBC Driver for ASE 3.1 EXE 설치

다운로드 : https://www.devart.com/odbc/ase/download.html

탐색기 > ODBC 데이터 원본(64비트) 실행

DSN 추가버튼을 눌러서 설치한 ODBC Driver를 선택하고 마침을 한다.

마침을 누르면 아래 팝업창이 활성화되는데 필요한 정보를 입력 해 준다.

Data Source name : sybase

Server : DESKTOP-UHV1241

Database : 접속 할 데이터 베이스 이름

User Id : sa (관리자)

설정을 마치고 test Connection하여 정상적으로 연결이 되는지 확인한다.

node.js에서 DB 연결 확인

ODBC에 연결 할 수있는 라이브러리를 설치한다.

$ npm install odbc

Test Connection 옆 ... 버튼 내용을 접속할 DB 정보로서 활용한다.

추가사항

  1. windows OS에서는 32bit, 64bit의 드라이버가 나뉜 제품이 있어 설치에 유념해야한다.
  2. 드라이버 설치 후 client -> server로 쿼리를 진행할때 한글 깨짐 현상이 발생 할 수도있다. 여러 조치 방법이 존재하지만 이번에 경험으로는 설치된 DB에 맞는 드라이버가 여러개 존재 하는데 그중에 정상적으로 한글 입력이 되는 프로그램이 존재했다.
profile
개발로그

0개의 댓글