CUBRID는 데이터베이스 서버, 브로커, CUBRID 매니저로 구성된다. 각 구성 요소를 수행하기 위한 설정 파일 이름은 다음과 같고, 모두 $CUBRID/conf 디렉터리에 위치한다.
cubrid.conf 파일은 CUBRID 데이터베이스 서버에 대한 시스템 파라미터를 지정하는 설정 파일로 데이터베이스 시스템의 전체적인 성능과 동작을 결정한다. cubrid.conf 파일은 시스템 설치에 필요한 몇 가지 중요한 파라미터가 디폴트로 설정된 상태로 제공된다.
다음은 cubrid.conf 설정 파일에 사용 가능한 데이터베이스 서버 시스템 파라미터이다. 적용 구분의 클라이언트 파라미터, 서버 파라미터의 의미는 데이터베이스 서버 설정이 미치는 범위를 참조한다.
동적으로 설정값 변경이 가능한 파라미터는 SET SYSTEM PARAMETERS 구문이나 CSQL 인터프리터의 세션 명령인 ;set을 통해 동적으로 변경할 수 있다. DB 사용자의 권한이 DBA인 경우 적용 구분에 상관없이 파라미터의 변경이 가능하며, DBA가 아닌 경우 클라이언트 파라미터만 변경할 수 있다.
파라미터 이름 |
적용 구분 |
타입 |
기본값 |
동적 변경 |
---|---|---|---|---|
cubrid_port_id |
클라이언트 파라미터 |
int |
1523 |
|
communication_histogram |
클라이언트 파라미터 |
bool |
no |
가능 |
db_hosts |
클라이언트 파라미터 |
string |
NULL |
가능 |
max_clients |
서버 파라미터 |
int |
100 |
|
ansi_quotes |
클라이언트 파라미터 |
bool |
yes |
|
block_ddl_statement |
클라이언트 파라미터 |
bool |
no |
가능 |
block_nowhere_statement |
클라이언트 파라미터 |
bool |
no |
가능 |
compat_numeric_division_scale |
클라이언트/서버 파라미터 |
bool |
no |
가능 |
intl_mbs_support |
클라이언트 파라미터 |
bool |
no |
|
oracle_style_empty_string |
클라이언트 파라미터 |
bool |
no |
|
only_full_group_by |
클라이언트 파라미터 |
bool |
no |
가능 |
pipes_as_concat |
클라이언트 파라미터 |
bool |
yes |
|
data_buffer_size |
서버 파라미터 |
int |
512M |
|
dont_reuse_heap_file |
서버 파라미터 |
bool |
no |
|
index_scan_oid_buffer_size |
서버 파라미터 |
int |
64K |
|
sort_buffer_size |
서버 파라미터 |
int |
2M |
|
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 |
|
error_log_level |
클라이언트/서버 파라미터 |
string |
SYNTAX |
가능 |
error_log_warning |
클라이언트/서버 파라미터 |
bool |
no |
가능 |
error_log_size |
클라이언트/서버 파라미터 |
int |
8000000 |
가능 |
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 |
가능 |
background_archiving |
서버 파라미터 |
bool |
yes |
가능 |
log_max_archives |
서버 파라미터 |
int |
INT_MAX |
가능 |
force_remove_log_archive |
서버 파라미터 |
bool |
yes |
가능 |
page_flush_interval_in_msecs |
서버 파라미터 |
int |
0 |
가능 |
adaptive_flush_control |
서버 파라미터 |
bool |
yes |
가능 |
max_flush_pages_per_second |
서버 파라미터 |
int |
10000 |
가능 |
sync_on_nflush |
서버 파라미터 |
int |
200 |
가능 |
pthread_scope_process |
서버 파라미터 |
bool |
yes |
|
backup_volume_max_size_bytes |
서버 파라미터 |
int |
-1 |
|
checkpoint_interval_in_mins |
서버 파라미터 |
int |
720 |
가능 |
checkpoint_every_npages |
서버 파라미터 |
int |
10000 |
|
log_buffer_size |
서버 파라미터 |
int |
2M |
|
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 |
|
index_scan_in_oid_order |
클라이언트 파라미터 |
bool |
no |
가능 |
single_byte_compare |
서버 파라미터 |
bool |
no |
|
compactdb_page_reclaim_only |
서버 파라미터 |
int |
0 |
|
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.05 |
|
add_column_update_hard_default |
클라이언트 파라미터 |
bool |
no |
가능 |
plus_as_concat |
클라이언트 파라미터 |
bool |
yes |
|
return_null_on_function_errors |
클라이언트/서버 파라미터 |
bool |
no |
가능 |
no_backslash_escapes |
클라이언트 파라미터 |
bool |
yes |
|
require_like_escape_character |
클라이언트 파라미터 |
bool |
no |
|
alter_table_change_type_strict |
클라이언트/서버 파라미터 |
bool |
no |
가능 |
use_orderby_sort_limit |
서버 파라미터 |
bool |
yes |
가능 |
session_state_timeout |
서버 파라미터 |
int |
21600 |
|
default_week_format |
서버/클라이언트 파라미터 |
int |
0 |
가능 |
group_concat_max_len |
서버 파라미터 |
int |
1024 |
가능 |
multi_range_optimization_limit |
서버 파라미터 |
int |
100 |
가능 |
access_ip_control |
서버 파라미터 |
bool |
no |
|
access_ip_control_file |
서버 파라미터 |
string |
|
|
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=server, broker, manager
# Common section - properties for all databases
# This section will be applied before other database specific sections.
[common]
# Read the manual for detailed description of system parameters
# Manual > Performance Tuning > Database Server Configuration > Default Parameters
# Size of data buffer are using K, M, G, T unit
data_buffer_size=512M
# Size of log buffer are using K, M, G, T unit
log_buffer_size=4M
# Size of sort buffer are using K, M, G, T unit
# The sort buffer should be allocated per thread.
# So, the max size of the sort buffer is sort_buffer_size * max_clients.
sort_buffer_size=2M
# The maximum number of concurrent client connections the server will accept.
# This value also means the total # of concurrent transactions.
max_clients=100
# TCP port id for the CUBRID programs (used by all clients).
cubrid_port_id=1523