ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • MySQL 파라미터 변경
    데이터베이스/MySQL 2021. 4. 27. 17:57
    728x90

     

    • 파라미터들은 MySQL 접속 후 설정하면 재기동 시 초기화 된다. 
    • 따라서 설정을 영구적으로 적용하려면 /etc/my.cnf (혹은 자신이 만든 my.cnf파일)에서 변경해 주어야 한다. 

     


    • 바이너리 로그 보관 기간 5일로 설정
    #확인
    sql> show variables like '%expire%logs%days' ;
    
    #설정
    [mysql] vi /etc/my.cnf
    expire_logs_days=5 #추가

     

    • 바이너리 로그 형식은 MIXED로 설정
    #확인
    sql> show variables like '%binlog%format%' ;
    
    #설정
    [mysql] vi /etc/my.cnf
    binlog_format=MIXED

     

    • InnoDB 버퍼풀 사이즈는 서버 메모리의 50% 할당
    #서버 메모리 확인
    [mysql] cat /proc/meminfo | grep MemTotal
    MemTotal:        1882624 kB
    
    #확인
    sql> show variables like '%innodb%buffer%pool%size%' ; #실제 바이트 값으로 나옴
    
    #설정
    [mysql] vi /etc/my.cnf
    innodb_buffer_pool_size=941312000 ; #1882624 kB /2 = 941.31200 mB

     

    • Temporary 테이블 스페이스 사이즈 자동 증가 사이즈 제한 1G로 설정 
    #확인
    sql> show variables like '%innodb%temp%data%file%path%' ;
    
    #설정
    [mysql] vi /etc/my.cnf
    innodb_temp_data_file_path=ibtmp1:12M:autoextend:max:1G #추가
    #ibtmp 테이블 스페이스는 기본으로 12M가 할당이 되고, 최대 사이즈 1G 까지만 늘어날 수 있다. 
    #만약 이 사이즈 제한을 주지 않으면 큰 쿼리(영구X 처리를 위한 일시적인 쿼리)를 돌린 후 데이터 버퍼사이즈가 늘어난 그대로 있기 때문에, 재기동하기 전까지는 사이즈를 줄일 수 없다. 

    > 참고사이트 : dev.mysql.com/doc/refman/5.7/en/innodb-parameters.html#sysvar_innodb_temp_data_file_path

     

    MySQL :: MySQL 5.7 Reference Manual :: 14.15 InnoDB Startup Options and System Variables

     

    dev.mysql.com

     

    • 디폴트 캐릭터셋은 utf8mb4로 설정
    #확인
    sql> show variables like '%character%set%server%' ;
    sql> show variables like '%character%set%database%' ;
    
    #설정
    [mysql] vi /etc/my.cnf
    character_set_server=utf8mb4
    sql> set global character_set_database='utf8mb4'     #얘는 my.cnf에 박으면 디비 재기동 안됨 .. 
    #만약 하고 싶으면 default-character-set=utf8mb4 으로 박아주어야 함
    

     

    • 디폴트 collation을 utf8mb4_bin로 설정
    #확인
    sql> show variables like '%collation%server%' ;
    sql> show variables like '%collation%database%' ;
    
    #설정
    sql> set global collation_server='utf8mb4_bin' ;
    sql> set global collation_database='utf8mb4_bin' ; 

     

    728x90

    댓글

Designed by Tistory.