리눅스 AgensGraph 설치

1 개요[ | ]

리눅스 AgensGraph 설치

2 소스 다운로드[ | ]

$ mkdir $HOME/tmp
$ cd $HOME/tmp
$ git clone https://github.com/bitnine-oss/agensgraph.git
Cloning into 'agensgraph'...
remote: Counting objects: 20075, done.
remote: Compressing objects: 100% (146/146), done.
remote: Total 20075 (delta 136), reused 108 (delta 85), pack-reused 19844
Receiving objects: 100% (20075/20075), 38.47 MiB | 4.47 MiB/s, done.
Resolving deltas: 100% (13262/13262), done.
Checking connectivity... done.
Checking out files: 100% (5353/5353), done.

3 라이브러리, 의존성 설치[ | ]

CentOS/RedHat
$ yum install gcc glibc glib-common readline readline-devel zlib zlib-devel
Fedora
$ dnf install gcc glibc bison flex readline readline-devel zlib zlib-devel
Ubuntu
$ sudo apt-get install build-essential libreadline-dev zlib1g-dev flex bison
macOS (Xcode 이용)
$ xcode-select --install

4 소스 빌드[ | ]

$ cd $HOME/tmp/agensgraph
$ ./configure --prefix=$HOME/agensgraph
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking which template to use... linux
checking whether NLS is wanted... no
checking for default port number... 5432
checking for block size... 8kB
checking for segment size... 1GB
checking for WAL block size... 8kB
checking for WAL segment size... 16MB
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
(생략)
config.status: linking src/backend/port/posix_sema.c to src/backend/port/pg_sema.c
config.status: linking src/backend/port/sysv_shmem.c to src/backend/port/pg_shmem.c
config.status: linking src/backend/port/dynloader/linux.h to src/include/dynloader.h
config.status: linking src/include/port/linux.h to src/include/pg_config_os.h
config.status: linking src/makefiles/Makefile.linux to src/Makefile.port
$ make install -j$(expr `nproc` + 1)
(생략)
make[1]: Leaving directory '/home/user/tmp/agensgraph/src'
PostgreSQL installation complete.

5 환경 적용[ | ]

$ echo "export AGPATH=\$HOME/agensgraph">>$HOME/.bash_profile
$ echo "export AGDATA=\$HOME/agensgraph/data">>$HOME/.bash_profile
$ echo "export PATH=\$AGPATH/bin:\$PATH">>$HOME/.bash_profile
$ echo "export LD_LIBRARY_PATH=\$AGPATH/lib:\$LD_LIBRARY_PATH">>$HOME/.bash_profile
$ . $HOME/.bash_profile

6 DB 초기화[ | ]

이 작업은 보통 처음에 한 번만 해 주면 된다.

$ initdb
$ createdb

위의 두 명령을 사용하면

  • 데이터베이스를 초기화하되, 데이터베이스 위치는 $AGDATA에서 가져온다.
  • 현재 사용자 이름으로 DB 이름을 지정하여 DB를 생성한다.

만일 이 환경 변수를 사용하지 않고 직접 DB 데이터 위치를 지정하려면 다음과 같이 입력한다.

$ initdb -D [경로]

DB 이름을 지정하려면 다음과 같이 입력한다.

$ createdb [DB명]

7 DB 서버 기동과 중단[ | ]

7.1 기동[ | ]

$ ag_ctl start
waiting for server to start.... done
server started

7.2 중단[ | ]

$ ag_ctl stop
waiting for server to shut down.... done
server stopped

8 CLI 셸 들어가기[ | ]

CLI 셸에 들어가려면 agens라고 입력한다.

$ agens

이미 생성한 DB의 이름을 인지하고 있고, 이를 직접 지정하려면 다음과 같이 입력한다.

$ agens [DB명]

그 이후 SQL 등의 자세한 도움말은 help를 입력하여 확인할 수 있다. 아래는 GRAPH를 CREATE, DROP하는 예제이다.

$ agens
user=# CREATE GRAPH test;
CREATE GRAPH
user=# DROP GRAPH test CASCADE; # DROP
NOTICE:  drop cascades to 3 other objects
DETAIL:  drop cascades to sequence test.ag_label_seq
drop cascades to vlabel ag_vertex
drop cascades to elabel ag_edge
DROP GRAPH

9 포트[ | ]

서버가 사용하는 기본 포트는 5432이다.

10 같이 보기[ | ]

11 참고[ | ]

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}