CUBRID는 데이터베이스 서버, 브로커, CUBRID 매니저로 구성된다. 각 구성 요소를 수행하기 위한 설정 파일 이름은 다음과 같고, 모두 $CUBRID/conf 디렉터리에 위치한다.
cubrid.conf 파일은 CUBRID 데이터베이스 서버에 대한 시스템 파라미터를 지정하는 설정 파일로 데이터베이스 시스템의 전체적인 성능과 동작을 결정한다. cubrid.conf 파일은 시스템 설치에 필요한 몇 가지 중요한 파라미터가 디폴트로 설정된 상태로 제공된다.
다음은 cubrid.conf 설정 파일에 사용 가능한 데이터베이스 서버 시스템 파라미터이다. 적용 구분의 클라이언트 파라미터, 서버 파라미터의 의미는 데이터베이스 서버 설정이 미치는 범위를 참조한다.
|
파라미터 이름 |
적용 구분 |
타입 |
디폴트 값 |
|---|---|---|---|
|
cubrid_port_id |
클라이언트 파라미터 |
int |
1523 |
|
db_hosts |
클라이언트 파라미터 |
string |
NULL |
|
max_clients |
서버 파라미터 |
int |
50 |
|
block_ddl_statement |
클라이언트 파라미터 |
bool |
no |
|
block_nowhere_statement |
클라이언트 파라미터 |
bool |
no |
|
intl_mbs_support |
클라이언트 파라미터 |
bool |
no |
|
oracle_style_empty_string |
클라이언트 파라미터 |
bool |
no |
|
data_buffer_pages |
서버 파라미터 |
int |
25000 |
|
dont_reuse_heap_file |
서버 파라미터 |
bool |
no |
|
index_scan_oid_buffer_pages |
서버 파라미터 |
int |
4 |
|
sort_buffer_pages |
서버 파라미터 |
int |
16 |
|
temp_file_memory_size_in_pages |
서버 파라미터 |
int |
4 |
|
thread_stack_size |
서버 파라미터 |
int |
102400 |
|
garbage_collection |
클라이언트 파라미터 |
bool |
no |
|
temp_file_max_size_in_pages |
서버 파라미터 |
int |
-1 |
|
temp_volume_path |
서버 파라미터 |
string |
NULL |
|
unfill_factor |
서버 파라미터 |
float |
0.1 |
|
volume_extension_path |
서버 파라미터 |
string |
NULL |
|
call_stack_dump_activation_list |
클라이언트/서버 파라미터 |
string |
NULL |
|
call_stack_dump_deactivation_list |
클라이언트/서버 파라미터 |
string |
NULL |
|
call_stack_dump_on_error |
클라이언트/서버 파라미터 |
bool |
no |
|
error_log |
클라이언트/서버 파라미터 |
string |
cub_client.err, cub_server.err |
|
auto_restart_server |
서버 파라미터 |
bool |
yes |
|
deadlock_detection_interval_in_secs |
서버 파라미터 |
int |
1 |
|
file_lock |
서버 파라미터 |
bool |
yes |
|
isolation_level |
서버 파라미터 |
int |
3 |
|
lock_escalation |
서버 파라미터 |
int |
100000 |
|
lock_timeout_in_secs |
서버 파라미터 |
int |
-1 |
|
lock_timeout_message_type |
서버 파라미터 |
int |
0 |
|
pthread_scope_process |
서버 파라미터 |
bool |
yes |
|
backup_volume_max_size_bytes |
서버 파라미터 |
int |
-1 |
|
checkpoint_interval_in_mins |
서버 파라미터 |
int |
720 |
|
log_buffer_pages |
서버 파라미터 |
int |
50 |
|
media_failure_support |
서버 파라미터 |
bool |
yes |
|
insert_execution_mode |
클라이언트 파라미터 |
int |
1 |
|
max_plan_cache_entries |
클라이언트/서버 파라미터 |
int |
1000 |
|
max_query_cache_entries |
서버 파라미터 |
int |
-1 |
|
query_cache_mode |
서버 파라미터 |
int |
0 |
|
query_cache_size_in_pages |
서버 파라미터 |
int |
-1 |
|
replication |
서버 파라미터 |
bool |
no |
|
index scan_in_oid_order |
클라이언트 파라미터 |
bool |
no |
|
single_byte_compare |
서버 파라미터 |
bool |
no |
|
compactdb_page_reclaim_only |
서버 파라미터 |
int |
0 |
|
compat_numeric_division_scale |
클라이언트/서버 파라미터 |
bool |
no |
|
csql_history_num |
클라이언트 파라미터 |
int |
50 |
|
java_stored_procedure |
서버 파라미터 |
bool |
no |
|
async_commit |
서버 파라미터 |
bool |
no |
|
group_commit_interval_in_msecs |
서버 파라미터 |
int |
0 |
|
index_unfill_factor |
서버 파라미터 |
float |
0.20 |
cubrid.conf에 지정된 파라미터는 다음과 같이 세 가지 섹션으로 제공된다.
여기서 <database>는 파라미터를 개별적으로 적용할 데이터베이스 이름이며, [common]에 설정된 파라미터가 [@<database>]에 설정된 파라미터와 동일한 경우 [@<database>]에 설정된 파라미터가 최종 적용된다.
CUBRID 설치 시 생성되는 기본 데이터베이스 환경 설정 파일(cubrid.conf)에는 데이터베이스 서버 파라미터 중 반드시 변경해야 할 일부 파라미터가 기본적으로 포함된다. 디폴트로 포함되지 않는 파라미터의 설정값을 변경하기 원할 경우 직접 추가/편집해서 사용하면 된다.
다음은 cubrid.conf 파일 내용이다.
# Copyright (C) 2008 Search Solution Corporation. All rights reserved by Search Solution.
#
# $Id$
#
# cubrid.conf#
# For complete information on parameters, see the CUBRID
# Database Administration Guide chapter on System Parameters
# Service section - a section for 'cubrid service' command
[service]
# The list of processes to be started automatically by 'cubrid service start' command
# Any combinations are available with server, broker and manager.
service=server,broker,manager
# The list of database servers in all by 'cubrid service start' command.
# This property is effective only when the above 'service' property contains 'server' keyword.
#server=foo,bar
# Common section - properties for all databases
# This section will be applied before other database specific sections.
[common]
# Number of data buffer pages
# data_buffer_pages (25,000 pages) * DB page size (4KB) = 100M
data_buffer_pages=25000
# Number of sort buffer pages
# sort_buffer_pages (16 pages) * DB page size (4KB) * number of threads
sort_buffer_pages=16
# Number of log buffer pages.
# log_buffer_pages (50 pages) * DB page size (4KB) = 200KB
log_buffer_pages=50
# Maximum number of locks acquired on individual instances of a
# class before the locks on the instances are escalated to a class lock
lock_escalation=100000
# Minimal amount of time to wait for a lock (seconds).
# A negative value, indicates to wait indefinitely until the lock is
# granted or until the transaction is rolled back as a result of a deadlock.
# A value of 0, indicates not to wait for a lock.
lock_timeout_in_secs=-1
# Interval between attempts at deadlock detection (seconds).
# An approximate interval to attempt to run the deadlock detector.
deadlock_detection_interval_in_secs=1
# Checkpoint when the specified time has passed (minutes).
# Checkpoint will be done also when log has grown by specified pages.
checkpoint_interval_in_mins=720
# Transaction isolation level.
# Six levels of isolation are provided, represented by:
# "TRAN_SERIALIZABLE"
# "TRAN_REP_CLASS_REP_INSTANCE"
# "TRAN_REP_CLASS_COMMIT_INSTANCE"
# "TRAN_REP_CLASS_UNCOMMIT_INSTANCE"
# "TRAN_COMMIT_CLASS_COMMIT_INSTANCE"
# "TRAN_COMMIT_CLASS_UNCOMMIT_INSTANCE"
# For other aliases, or for more information on the levels, see the
# System Parameters chapter in the Database Administration Guide.
isolation_level="TRAN_REP_CLASS_UNCOMMIT_INSTANCE"
# TCP port id for the CUBRID programs (used by all clients).
cubrid_port_id=1523
# The maximum number of concurrent client connections the server will accept.
# This value also means the total # of concurrent transactions.
max_clients=50
# Restart the server process automatically
auto_restart_server=yes
# Become a master server for replication.
replication=no
# Enable Java Stored Procedure
java_stored_procedure=no