FREEDOM. FRIENDS. FEATURES. FIRST.
페도라 한국 사용자 모임

apache php cubrid 연동(phpcubadmin까지 풀설치)

게시판 Tech/Tip apache php cubrid 연동(phpcubadmin까지 풀설치)

  • This topic has 2개 답변, 3명 참여, and was last updated 10 years, 9 months 전에 by ELem. This post has been viewed 15 times
  • 만든이
    게시글
  • #12004
    태랑
    키 마스터
    • 게시글209
    • 댓글879
    • 총합1088
    • ★★
    @admin

    설치 환경 및 버전

    OS

    Fedora12

    Apache2.2

    httpd-2.2.13-4.fc12.i686

    php 5.2.12

    소스설치

    cubrid

    CUBRID 2008 R2.1

     

    fedora12에서 php 버전이 포스팅하는 시점에서 5.3 RPM버전으로 설치가 되고

    그에 따라 zend optimizer PHP5.3버전용이 없기에 apache RPM으로 php는 소스설치 되어있는

    일반적인 연동 상태에서 cubrid mysql 대신 연동하는 부분을 기술되어있습니다

     

     

    APM설치글 https://www.fedoralinux.or.kr/forums/topic/12171

     

     

    ** 호스팅서버 필터링에 의해서 w get 이라고 표기하지만

         w 와 get은 붙였쓰는 명령어 입니다

     

     

    오라클이나 mysql 처럼 설치할 그룹과 유저를 생성합니다

    # useradd cubrid

     

    페도라나 centos는 유저 추가시 유저명으로 그룹이 생성되고 지정되지만

    그렇지 않은 OS인경우 그룹추가후 useradd -g  옵션으로 지정해주시면 됩니다

     

    계정 비밀번호 지정

    # passwd cubrid 

     

    cubrid 계정으로 변경후 큐브리드 설치파일을 다운받습니다

    # su - cubrid

    # w get http://dev.naver.com/frs/download.php/702/CUBRID-8.2.1.0215-linux.i386.sh

     

    실행권한을 부여

    # chmod u+x CUBRID-8.2.1.0215-linux.i386.sh

     

    실행

    # ./CUBRID-8.2.1.0215-linux.i386.sh

     

    실행하면

     

    Copyright (C) 2008 Search Solution Corporation. All rights reserved by Search Solution.

    CUBRID is registered trademark of Search Solution Corporation.

     

    This Software is released under GNU GPL v2 or BSD according to its components.

    For more information, please refer to the CUBRID home page(http://www.cubrid.com).

     

    중략

     

    The GNU General Public License (GPL)

    Version 2, June 1991

     

    Copyright (C) 1989, 1991 Free Software Foundation, Inc.

    --More--

     

    GPL등 라이센스에 대한 설명이 나옵니다

    라이센스동의 물음에 yes 로 응답합니다

    Do you agree to the above license terms? (yes or no) : yes

     

    큐브리드 설치 디렉토리를 물어봅니다

    Do you want to install this software(CUBRID) to the default(/home/cubrid/CUBRID) directory? (yes or no) [Default: yes] :

     

    기본값은 인스톨 실행유저 홈디렉토리로 지정됩니다 필자는 기본 디렉토리에 설치 하겠습니다

     

     

    여기도 yes

    In case a different version of the CUBRID product is being used in other machines, please note that the CUBRID 2008 R2.1 servers are only compatible with the CUBRID 2008 R2.1 clients and vice versa.

    Do you want to continue? (yes or no) [Default: yes] :

     

     

     

    yes를 해주고 좀 기다리면 아래와 같은 메시지를 띄우면 끝나는걸 볼수있습니다

     

     

    CUBRID has been successfully installed.

     

    demodb has been successfully created.

     

    If you want to use CUBRID, run the following commands

      % . /home/cubrid/.cubrid.sh

      % cubrid service start

     

    밑에 2줄대로 합니다

    # . /home/cubrid/.cubrid.sh

    # cubrid service start

     

    프로세스가 잘떠있는지 확인해보면

    [cubrid@fedora12]$ ps -ef | grep cub_

    cubrid    2872     1  0 12:31 ?        00:00:00 cub_master

    cubrid    2875     1  0 12:31 ?        00:00:00 cub_broker

    cubrid    2876     1  0 12:31 ?        00:00:00 query_editor_cub_cas_1

    cubrid    2877     1  0 12:31 ?        00:00:00 query_editor_cub_cas_2

    cubrid    2878     1  0 12:31 ?        00:00:00 query_editor_cub_cas_3

    cubrid    2879     1  0 12:31 ?        00:00:00 query_editor_cub_cas_4

    cubrid    2880     1  0 12:31 ?        00:00:00 query_editor_cub_cas_5

    cubrid    2885     1  0 12:31 ?        00:00:00 cub_broker

    cubrid    2886     1  0 12:31 ?        00:00:00 broker1_cub_cas_1

    cubrid    2887     1  0 12:31 ?        00:00:00 broker1_cub_cas_2

    cubrid    2888     1  0 12:31 ?        00:00:00 broker1_cub_cas_3

    cubrid    2889     1  0 12:31 ?        00:00:00 broker1_cub_cas_4

    cubrid    2890     1  0 12:31 ?        00:00:00 broker1_cub_cas_5

    cubrid    2898     1  0 12:31 ?        00:00:00 cub_auto start

    cubrid    2901     1  0 12:31 ?        00:00:00 cub_js start

    cubrid    2912  2677  0 12:33 pts/0    00:00:00 grep cub_

     

     

     

    연동을 위해서 모듈을 php cubrid 모듈을 다운받습니다

    중요한건 모듈이 64bit로 컴파일이 되어있기 때문에 시스템이 64비트 / 큐브리도 64비트로

    설치했다면 올라와 있는 것 그대로 사용하면 되고 32비트 라면 소스를 받아서

    모듈을 컴파일 해야 합니다(32비트인데 이런.._)

     

    64비트)

    w get http://dev.naver.com/frs/download.php/987/cubrid.so

    w get http://dev.naver.com/frs/download.php/988/cubrid_err.msg

     

    root 유저로 변경한후 파일을 옴깁니다

    그전에 cubrid로 모듈을 다운받았다면 소유주와 그룹 변경합니다

    # chown root:root cubrid.so

    # chown root:root cubrid_err.msg

     

    php.ini 에 기록된 extension_dir  경로에 2개의 파일을 옴겨놓고

    php.ini파일에 아래 2줄 추가 합니다

    extension=cubrid.so

    cubrid.err_path="/usr/lib/php/modules"

     

    그리고 php.ini 의 내용중  session.auto_start 의 값이 0으로 세팅 되어 있으면 1로 변경합니다

     

     

    32비트)

    모듈 소스를 받고 압축을 풉니다

    # w get http://dev.naver.com/frs/download.php/690/CUBRID-PHP-8.2.1.0215.src.tar.gz

    # tar zxvf CUBRID-PHP-8.2.1.0215.src.tar.gz

     

     

    src 디렉토리에 보면 config.m4 파일이 있습니다.

    이 파일을 열어서 PHP_ADD_LIBRARY_WITH_PATH 매크로에서

    "$CUBRID/lib64" 부분을 "$CUBRID/lib" 으로 변경

     

    src 디렉토리 안에서 phpize 실행

    # phpize

    phpize 가 없다면 검색을 통해 설치 혹은 path가 안잡혀있을수 있으니 확인

     

    아래 작업 실시

    # ./configure

    # make

     

    정상적으로 빌드가 되었다면 modules 디렉토리안에 cubrid.so 파일이 생성이 되었기에

    php.ini 에 기록된 extension_dir 경로에 옴겨놓습니다

    src 디렉토리에 cubrid_err.msg 도 옴겨놓습니다

     

    php.ini 에 아래2줄을 추가합니다

    extension=cubrid.so

    cubrid.err_path="/usr/lib/php/modules"

     

    그리고 php.ini 의 내용중  session.auto_start 의 값이 0으로 세팅 되어 있으면 1로 변경합니다

     

    아파치를 재시작후에 웹서버 홈디렉토리에 phpinfo.php 파일을 만들고

     <?php phpinfo(); ?>

    내용을 넣고 저장한후 접속해봅니다

    출력되는 내용중 php 모듈연결을 확인할수 있습니다

     

     

    ※ 출력되는 Version 은 설치되어 있는 CUBRID 2008의 버전이 아닌 CUBRID PHP 모듈의 버전입니다.

     

     

     

    간단하게 데이터베이스와 유저를 생성한후에 XE를 설치해보겠습니다

    오라클의 sqlplus 와 비슷한 csql를 지원하지만 윈도우상에서 큐브리드 메니저를

    이용하여 하겠습니다

     

    X윈도우를 띄운후 터미널에서

    # cd /home/cubrid/CUBRID/cubridmanager

    로 이동

     

    큐브리드 메니저 실행

    # ./cubridmanager 

     

    참고로 JRE JDK 1.6이상 설치되어 있어야 합니다

     

     

    윈도우에서 클라이언트로 접속해서 작업하고 싶다면

    컴퓨터에 CUBRID CLIENT_ONLY로 설치합니다.
    CLIENT_ONLY
    로 설치 하는 방법은 CUBRID 데이터베이스 설치 를 참고 하시기 바랍니다.

    리눅스에서 8001,8002,30000,33000 포트 를 방화벽에서 풀어줘야 합니다

     

     

     

     

     

    큐브리드 메니저를 실행하고 접속을 하면 아래와같이 나옵니다

    매니저 서버 기본 관리자 아이디는 admin 비밀번호는 admin입니다

    기본비밀번호 admin를 입력하면 비밀번호 변경 화면이 뜹니다

     

     

     

     

     

    새비밀번호 지정 합니다

     

     

     

     

    새비밀번호 지정한후 아래 스샷과 같이 아이콘을 이용하여 데이터베이스를 생성합니다

     

     

     

     

     

    저는 데이터베이스 이름음 xe로 하고 볼륨크기를 100M 로 하겠습니다

     

     

     

     

     

    다음을 누릅니다

     

     

     

     

     

     

    다음을 누릅니다

     

     

     

     

    다음

     

     

     

     

    해당 데이터베이스 DBA(관리자) 비밀번호를 지정

     

     

     

     

     

    완료

     

     

     

     

     

     

    db생성완료

     

     

     

     

     

     

    생성한 xe 데이터베이스를 더블클릭하면 관리자 로그인창이 나옵니다

    생성시 입력한 비밀번호를 입력해서 로그인합니다

     

     

     

     

     

     

     

    로그인후 사용자에서 마우스 우클릭후 "사용자 추가" 를 누릅니다

     

     

     

     

     

     

     

    아이디와  비밀번호를 지정하고 확인

     

     

     

     

     

     

     

    저는 xe 라고 생성하였고 정상적으로 생성됬음을 확인할수 있습니다

     

     

     

     

     

     

    큐브리드 서버 구동시 xe 데이터베이스가 구동될수있도록 설정합니다

    # vi  /home/cubrid/CUBRID/conf/cubrid.conf

    열어보면 아래와 같이 29-38줄사이에 볼수 있는데

     

     

    37줄에 #server=foo.bar 밑에 server=xe <- 이런식으로 주석없이 데이터베이스명을 기술합니다

     

     

     

     

     

    준비가 됬으니 xe를 설치를 해보겠습니다 포스팅시점에서 1.4.0.10 버전이 최신버전임으로

    1.4.0.10버전으로 설치 하겠습니다

     

     

     

    XE 세부 설치방법은 워낙 많은 정보가 나오니 패스 하겠습니다

     

     

     

     

    db선택에서 cubrid 를 선택

     

     

     

     

     

     

     

    db 아이디 db비밀번호  db데이터베이스 을 기술합니다  나머지 작성후 확인

     

     

     

     

     

     

    설치가 완료후에 정상적으로 xe 제어판으로 접속되네요

     

     

     

     

     

     

    큐브리드 메니저로 보니 테이블도 생성된걸 확인할수 있었습니다

     

     

     

     

     

     

     

     

     

    mysql에 웹관리 클라이언트인 phpmyadmin 과 유사한

    큐브리드용 phpcubadmin 을 설치 하겠습니다

     

    w get http://dev.naver.com/projects/cubrid/forum/3103/1198/phpCub8Admin-1.3.zip

     

     

    php 설치시 --enable-sockets \  옵션이 안들어가게 되면 안됩니다

    위옵션없이 php 컴파일되어있다면 재 컴파일이 필요할 듯 합니다

     

    다운을 받고 압축을 풉니다 저는 /var/www/phpCubAdmin

    으로 디렉토리를 옴겨놨습니다 그리고 아파치에서 alias 를 걸어 놓았습니다

     

    Alias /phpcubadmin "/var/www/phpCubAdmin"

    <Directory "/var/www/phpCubAdmin">

    AllowOverride None

    Options FollowSymLinks MultiViews

    DirectoryIndex index.php

    order deny,allow

    Allow from all

    </Directory>

     

     

    디렉토리내에 tokens 디렉토리는 아파치 유저가 쓰기 권한이 있어야 합니다

    간단하게 chmod 777 tokens  으로 해줍니다

     

    설정해준 alias로 접속 합니다

    저는 phpcubadmin 으로 해줘서

    http://주소/phpcubadmin  으로 접속했습니다

     

    접속후 "CUBRID" 를 선택하면 로그인창이 나옵니다

    큐브리드 메니저 에서 아이디 admin 과 지정해준 비밀번호를 넣습니다

     

     

     

     

     

    로그인후 화면입니다 XE설치하려고 만든 xe 데이터베이스도 보이네요

     

     

     

    큐브리드 매니저보다는 조금부족할수 있지만 kldp 프로젝트로 등록되어있어 계속 개발중이니

    조만간 phpmyadmin 만큼 발전될거라 생각 됩니다

     

    mysql만큼 기대되는 국산 오픈소스 DB인 큐브리드에게

    많은 기대와 응원해주세요

     

     

    이상 입니다

    오픈소스를 응원합니다 Blog https://hoing.io
    Senior Database Administrator(Mysql, Oracle)

    사이트 이용 문의 사항은 댓글이나 admin@fedoralinux.or.kr 로 메일주세요

1 답변 글타래를 보이고 있습니다
  • 글쓴이
    답변
    • #12546
      인베인
      참가자
      • 게시글141
      • 댓글379
      • 총합520
      • ★★
      @leemgs

      국산에서 만든 오픈소스 기반의 데이타베이스이니만큼 빠른기간안에 세계 도처에 퍼지기를 개인적으로 기원합니다. 대한민국 화이팅~~

      * 오픈소스는 Open Innovationa & 윈윈전략을 도모할 지언정 절대 공짜(무료)임을 뜻하지 않는다.치

    • #12547
      ELem
      참가자
      • 게시글67
      • 댓글672
      • 총합739
      • ★★
      @Bardisch

      전에 큐브리드 깔아봤다가 관리 UI가 약간 불편해서 집어던졌는데[!]
      웹 UI도 있군요...
      다시 한번 도전해봐야겠습니다 ㅎ

1 답변 글타래를 보이고 있습니다
  • 답변은 로그인 후 가능합니다.