Background Image

FORUM

조회 수 15693 추천 수 0 댓글 5
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
리눅스에서 대량의 데이터를 큐브리드 DB로 넣으려는 작업을 하고 있습니다.

쉘 스크립트로 자동화 시키려고 하는데요 

$CSQL = csql

$DBNAME = demodb

$CSQL -c "CREATE TABLE ex_table(
  no INT,
  name VARCHAR(1024),
  dep VARCHAR(1024),
  INDEX (name),
  INDEX (dep)
)" $DBNAME

이 구문에서

Unable to access system message catalog.
(null)

이런 에러메시지가 출력이 됩니다.

그냥 명령입력창에서 # csql -c "create 뭐뭐뭐" demodb하면 잘 되는데 말이죠

더불어 인덱스 거는 법도 궁금합니다.

고수님들의 조언 기다리겠습니다.
  • ?
    janus 2009.05.14 04:22
    안녕하세요.!!

    create table문에 unique index, PK, FK이외에는 인덱스를 넣을 수 없습니다.
    아래와 같이 인덱스 생성문을 추가해야 합니다.
    CREATE index idx_name_ex_table on ex_table(name);
    CREATE index idx_dep_ex_table on ex_table(dep);
    인덱스생성 관련 사항은 메뉴얼에 create로 검색하시면 쉽게 찾으실 수 있고,
    대량의 데이터입력을 하신다면 인덱스생성을 나중에 하는 것이 성능에 좋습니다.
    5,000이나 10,000건 단위로 commit주기를 주시는 것이 좋고 CUBRID파라미터 group_commit_interval_in_msecs를 설정하는 것이 좋습니다.

     
  • ?
    공기청정기 2009.05.14 19:36
    친절하고 자세한 답변 감사드립니다. :)

    허나 본문에 적은 인덱스 구문 빼고 단순히 속성만 있는 구문도 sh파일에 넣어서 실행시키니 같은 에러 메시지가 출력되네요 ㅠ_ㅠ
    Unable to access system message catalog.
    (null)

    서...설마 문법오류...는 아니겠죠;
  • ?
    남재우 2009.05.14 20:42
    안녕하세요. 제가 간단히 테스트 해보니 동일한 에러가 발생하지는 않습니다. 제가 테스트한 버젼은 1.4인데요. 버젼확인좀 부탁드립니다. 그리고 no는 예약어라 "로 감싸주셔야 합니다.
    csql -c "create table ex_table ( "no" INT, name varchar(1024), dep varchar(1024) )" <데이터베이스이름>
    처럼 하셔야 합니다...
  • ?
    공기청정기 2009.05.15 02:49
    다른 업무때문에 댓글 확인이 늦었네요. 저도 1.4로 확인되는데요...
    $ cubrid --version
    cubrid (cubrid 유틸리티) R1.4
    Copyright (C) 2008 Search Solution Corporation. All rights reserved by Search Solution.

    남재우님께서 말씀하신데로 콘솔에서 하면 테이블이 생성되든지, 이미 있으면 있다고 얘기가 나오는데요...

    혹시 sh에서 테이블 명이나 DB명을 변수로 인식하도록 했거든요
    예를 들면 a.sh 안에는
    $DBNAME = demodb
    $tblname = ex_table
    $CSQL = home1/usr/local/CUBRID

    로 변수가 지정되어 있고

    $CSQL -c "CREATE TABLE $tblname (number INT, name VARCHAR(1024),..)" $DBNAME 로 실행하도록 하였습니다.....
    ------------

    변수를 사용하지 않고 직접

    csql -c "CREATE TABLE ex_table (number INT, name VARCHAR(1024),..)" testdb 로 작성한 후

    a.sh를 실행시켜도 같은 문제내요... 물론 같은 명령어를 리눅스 명령어로 직접 입력하면 잘 되는데요..ㅠ_ㅠ

    ----

    앗, 혼자 노는것 같은대요,,

    사실 그 명령엉가 다른 작업들과 함께 있는 건데 저 명령어만 따로 a.sh로 만들어서 하니 잘 됩니다.

    다른 작업들과 함께 이뤄지다가 문제가 생긴것 같은아 보이는데요 조금 더 노력(?) 해 보겠습니다.

    감사합니다.
  • ?
    공기청정기 2009.05.15 03:15
    해당 쿼리문이 함수 안에 있는데요 그것이 의심 스러워 a.sh에 (이 쿼리만 동작하게 하도록)함수 안에 넣고 함수를 불러보는 것과 따로 하는것도 해 보았는데요 모두 잘 됩니다......
    결국 제가 기존에 하려던 작업과 이 쿼리문이 함께 있으면 이런 문제가 생긴다는... 걸로 해석되는데요..ㅠ_ㅠ
    가여운 이 초보를 어쩌면 좋을까요 ㅠ_ㅠ 도저히 이해가 되지 않습니다.ㅠ_ㅠ

List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 CUBRID 사용자를 위한 DBeaver 도구 출시 안내 admin 2024.04.23 48
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 4458
1134 [깜짝이벤트] CUBRID 열심 사용자들께 2013년 메모지 셋트를 드립니다 3 file CUBRID_DEV 2013.02.05 15063
1133 [긴급요청] .net 에서 데이터 insert 시 cubrid manager에서 한글 깨짐 현상 문의 4 minimin0516 2016.01.28 6865
1132 [긴급]서비스 시작이 안되는데 확인 부탁드립니다. 9 머천다이 2018.06.29 825
1131 [긴급] 캐릭터셋 관련 문의드립니다.. (답글 확인요망) 4 드팬디 2014.11.08 6416
1130 [긴급] 성능 문의 드립니다.... 8 secret 스마트 2011.01.05 31
1129 [긴급] 삭제되지 않는 테이블은 어떻게 처리해야하나요.. 4 스마트 2010.09.25 12056
1128 [긴급] odbc utf8 입력이 안됩니다.. 11 스마트 2010.12.23 12409
1127 [긴급] Java VM can not be started 메세지 원인?? 13 이석희 2009.07.07 19551
1126 [긴급] CMT 오류 문의 드립니다. 7 스마트 2010.12.29 6490
1125 [긴급] CLOB 인서트 에러 입니다. 1 secret 사이어스 2015.11.20 15
1124 [긴급] .net c#에서 utf8 연결 어떻게 해야하는지요... 9 스마트 2010.09.26 14367
1123 [급]Cubrid메니저에서 Unlod 후 load시 오류 3 file 별솔아범 2011.07.15 23907
1122 [개선요청] 데이터베이스 복구 문제 개선이 필요할 것 같습니다.. 5 secret 스마트 2011.01.04 49
1121 [replication] 성능에 대한 질문입니다. 2 kkckc 2009.02.10 16669
1120 [mac os] cubrid manager 오류 문의 4 file 망고라떼 2022.08.01 215
1119 [java]supportsGetGeneratedKeys 함수 이상 동작 문의 2 큐브리드하자 2013.07.19 7879
1118 [java] 두개의 PreparedStatement 할당후 close 시 문제 2 cuins 2011.07.27 10828
1117 [emerg] 629#0 큐브리드 서비스 시작안됨 3 secret chocob 2014.10.13 7
1116 [cubrid backup or restore] 질문 사항 1 완이예염 2013.06.14 10842
1115 [cubrid 9.3] database에 설정된 timezone을 얻어오는법 질문입니다. 2 smoh 2020.05.11 146
Board Pagination Prev 1 ... 139 140 141 142 143 144 145 146 147 148 ... 200 Next
/ 200

Contact Cubrid

대표전화 070-4077-2110 / 기술문의 070-4077-2113 / 영업문의 070-4077-2112 / Email. contact_at_cubrid.com
Contact Sales