"Real MySQL" 책을 정리한 포스팅 입니다.
1. MySQL 설치
2. MySQL 서버의 시작과 종료
실행
mysqld --defaults-file=/usr/local/etc/my.cnf --initialize-insecure
--defaults-file
- mysql 서버를 기동하는데 사용되는 기본 옵션을 파일로 전달할 때 사용합니다.
- 보통의 상황에 공통적으로 쓰이는 옵션이 주로 사용됩니다.
--initialize-insecure
- mysql 서버를 실행하는데 필요한 초기설정 관련 파일들을 자동 생성하는 옵션입니다.
- 초기 데이터 파일
- 로그파일
- root 계정 (비밀번호 없음)
설정
my.cnf
- 기본 옵션이 작성된 설정 파일입니다.
- 서버에서 경로들을 확인하여 순서대로 해당 파일을 찾습니다.
- /etc/my.cnf -> /usr/local/etc/my.cnf -> ~/.my.cnf
- 여러 경로를 확인하지만, 실제 적용되는 설정 파일은 단 하나입니다.
시스템 변수
SHOW VARIABLES;
- 서버를 기동할 때 사용되는 설정을 시스템 변수로 저장하여 적용할 수 있습니다.
속성
- Cmd-Line : 명령행 인자로 설정될 수 있는지 여부
- Option file : 설정파일인 my.cnf로 제어할 수 있는지 여부
- System Var : 시스템 변수인지 아닌지 여부
- Var Scope : 적용 범위
- Dynamic : 시스템 변수가 정적인지 동적인지 여부
Var Scope
show global variables;
- Global
- 시스템 전체에 영향을 미칩니다.
- 주로 서버 설정에 사용됩니다.
- innodb_buffer_pool_size, key_buffer_size
show session variables;
- Session
- 클라이언트의 필요에 따른 커넥션 단위별 값을설정할 수 있습니다.
- autocommit, sql_mode
- 클라이언트의 필요에 따른 커넥션 단위별 값을설정할 수 있습니다.
Dynamic
- 서버 기동중에 수정이 가능한지 여부에 따라 나뉩니다.
set global max_connections=5000;
set session autocommit=on;
- Dynamic
- 메모리에 접근하여 값을 수정합니다.
- 현재 기동중인 서버 인스턴스에서만 유효합니다.
- Static
- 기동중에 수정할 수 없는 변수입니다.
- 대부분의 글로벌 변수가 해당됩니다.
SET PERSIST
SET PERSIST max_connections=5000;
- 메모리 값을 수정하고 디스크에도 반영하는 명령어 입니다.
- mysqld-auto.cnf 파일에 기록됩니다.
- global 변수에만 사용 가능합니다.
SET PERSIST_ONLY
SET PERSIST_ONLY max_connections=5000;
- 디스크에 반영하는 명령어 입니다.
- mysqld-auto.cnf 파일에 기록됩니다.
- 메모리 값에는 반영되지 않습니다.
my.cnf
- 시스템 변수의 기본 설정이 담긴 파일입니다.
[mysqld]
bind-address = 127.0.0.1
mysqlx-bind-address = 127.0.0.1
[mysqld_safe]
malloc-lib = /opt/lib/libtmalloc_minimal.so
[mysql]
default-character-set = utf8mb4
socket = /usr/local/mysql/tmp/mysql.sock
port = 3304
- 설정 그룹
- 여러 개의 설정 그룹을 담을 수 있습니다.
- 그룹명은 실행 프로그램을 주로 사용합니다.
출처
'Database > Mysql' 카테고리의 다른 글
[Real MySQL] 4-4. 아키텍쳐: MySQL 로그 파일 (1) | 2023.11.24 |
---|---|
[Real MySQL] 4-2. 아키텍쳐: InnoDB 스토리지 엔진 아키텍쳐 (0) | 2023.11.24 |
[Real MySQL] 4-1. 아키텍쳐: MySQL 엔진 아키텍쳐 (0) | 2023.11.23 |
[Real MySQL] 3. 사용자 및 권한 (1) | 2023.11.23 |
[Real MySQL] 1. 소개 (0) | 2023.11.22 |