[MYSQL] 정적, 동적 Parameter 적용

반응형
Directory 확인
mysql> SHOW VARIABLES WHERE Variable_Name LIKE "%dir";
+-----------------------------+----------------------------------+
| Variable_name               | Value                            |
+-----------------------------+----------------------------------+
| basedir                     | /usr/local/mysql/                |
| character_sets_dir          | /usr/local/mysql/share/charsets/ |
| datadir                     | /data/mysql/                     |
| innodb_data_home_dir        |                                  |
| innodb_doublewrite_dir      |                                  |
| innodb_log_group_home_dir   | ./                               |
| innodb_temp_tablespaces_dir | ./#innodb_temp/                  |
| innodb_tmpdir               |                                  |
| lc_messages_dir             | /usr/local/mysql/share/          |
| plugin_dir                  | /usr/local/mysql/lib/plugin/     |
| replica_load_tmpdir         | /tmp                             |
| slave_load_tmpdir           | /tmp                             |
| tmpdir                      | /tmp                             |
+-----------------------------+----------------------------------+
13 rows in set (0.00 sec)

 

1. 정적 변수 적용

- my.cnf 에 적용 후, 재시작

 

2. 동적 변수 적용

- 재기동은 필요 없지만 재기동 시 원래 값으로 돌아옴
#세션 레벨에서 시스템 변수 값 변경 
  mysql> set session sql_mode  = 'STRICT_TRANS_TABLES' ;  
  Query  OK, 0 rows affected (0.00 sec)
   
  글로벌 변수를 변경하려면 
  mysql> set global sql_mode = 'STRICT_TRANS_TABLES' ;
   
  #show 명령을 이용하여 시스템 변수 값 확인
  mysql>  show global variables like 'sql_mode' ;
  +---------------+----------------------------------------+
  |  Variable_name | Value                                  |
  +---------------+----------------------------------------+
  |  sql_mode      |  ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES |
  +---------------+----------------------------------------+
  1  row in set (0.00 sec)
   
  mysql>  show session variables like 'sql_mode'  ;
  +---------------+---------------------+
  | Variable_name | Value                |
  +---------------+---------------------+  |
  sql_mode      | STRICT_TRANS_TABLES |
  +---------------+---------------------+
  1  row in set (0.00 sec)
   
  mysql>  show variables like 'sql_mode' ;
  +---------------+---------------------+
  | Variable_name | Value                |
  +---------------+---------------------+
  |  sql_mode      | STRICT_TRANS_TABLES |
  +---------------+---------------------+
  1  row in set (0.00 sec)
   
  #@@를 이용하여 변수 값 확인
  mysql>  select @@global.sql_mode ;
  +----------------------------------------+
  | @@global.sql_mode                      |
  +----------------------------------------+
  |  ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES |
  +---------------------------------------+
  1  row in set (0.00 sec)
   
  mysql>  select @@local.sql_mode ;
  +---------------------+
  |  @@local.sql_mode    |
  +---------------------+
  |  STRICT_TRANS_TABLES |
  +---------------------+
  1  row in set (0.00 sec)
   
  mysql>  select @@session.sql_mode ;
  +---------------------+
  |  @@session.sql_mode  |
  +---------------------+
  |  STRICT_TRANS_TABLES |
  +---------------------+
  1  row in set (0.00 sec)
   
  mysql>  select @@sql_mode ;
  +---------------------+
  |  @@sql_mode          |
  +---------------------+
  |  STRICT_TRANS_TABLES |
  +---------------------+
  1  row in set (0.00 sec)

 

3. 기본으로 알아야하는 파라미터

 

https://github.com/myacelink/MySQL

- 기본적으로 알아야 하는 Variable 다음과 같습니다. 가장 기본적인 설정으로 거의 필수 옵션이라 할 수 있습니다.

Variable 설명
autocommit autocommit 모드 설정, 1 경우 autocommit설정, 0 경우 disable
binlog_cache_size 트랜잭션 실행동안 바이너리 로그를 저장하기 위한 캐쉬 사이즈
binlog-format 바이너리 로그의 format 설정함.
datadir data directory 설정
key_buffer_size key_buffer_size 설정
log_bin 바이너리 로그를 생성할지의 여부를 설정함.
log-slow-queries long_query_time보다 오래 실행되는 쿼리를 로그로 남기는 작업을 설정함.
long_query_time slow query 기준이 되는 ()
max_allowed_packet 가장 크게 생성될 있는 packet사이즈를 설정함.
max_binlog_size 바이너리 로그 파일의 최대 크기 설정값
max_connections 동시에 접근 가능한 커넥션 갯수 설정
open-files-limit 최대 오픈 파일 수 설정
port 접속시 사용할 port 설정
read_buffer_size 읽기 버퍼 크기 설정
read_only 데이터를 수정할 없게 설정함.
server-id 서버의 유니크한 id 설정
slow-query-log log-slow-queries 같음
slow_query_log_files slow-query-log 파일 이름을 설정함.
socket 사용할 소켓 파일 설정
sort_buffer_size 정렬 버퍼 설정
storage_engine 기본적으로 사용할 스토리지 엔진 값을 설정
tmpdir temporary table 생성하는 디렉토리 설정
wait_timeout 대기 시간 초과시 접속 종료 설정

 

반응형