일반적인 MySQL 설정 파일 위치
/etc/mysql/my.cnf
보통 리눅스 운영체제에 mysql을 설치하고 나면 설정 파일이 my.cnf라는 곳에 위치하기 마련인데
우분투는 디렉토리가 2개의 디렉토리를 include 하여서 사용합니다.
참고로 /etc/mysql/conf.d/는 사용자 정의 설정을 위한 디렉터리이고,
/etc/mysql/mysql.conf.d/는 MySQL의 주요 구성을 위한 디렉터리입니다.
MySQL 주요 구성 설정
/etc/mysql/mysql.conf.d/mysqld.cnf
- user = mysql: MySQL 프로세스가 실행될 때 사용할 사용자를 지정합니다. 기본적으로 MySQL은 mysql 사용자로 실행됩니다.
- # pid-file = /var/run/mysqld/mysqld.pid: MySQL 서버 프로세스의 PID 파일의 경로를 지정합니다. 주석 처리되어 있으므로 기본값을 사용합니다.
- # socket = /var/run/mysqld/mysqld.sock: MySQL 클라이언트가 MySQL 서버와 통신할 때 사용하는 UNIX 소켓 파일의 경로를 지정합니다. 주석 처리되어 있으므로 기본값을 사용합니다.
- # port = 3306: MySQL 서버가 수신 대기하는 포트를 지정합니다. 주석 처리되어 있으므로 기본값을 사용합니다(3306 포트).
- # datadir = /var/lib/mysql: MySQL 데이터 디렉토리의 경로를 지정합니다. 주석 처리되어 있으므로 기본값을 사용합니다(/var/lib/mysql). 이 디렉토리에는 MySQL 데이터베이스 파일이 저장됩니다.
- # tmpdir = /tmp: MySQL이 생성하는 임시 파일이 저장될 디렉토리를 지정합니다. 기본적으로 /tmp로 설정되어 있습니다. 만약 MySQL이 복제 슬레이브로 작동 중이라면 이 값을 변경해야 할 수 있습니다.
- bind-address = 127.0.0.1: MySQL 서버가 연결을 수락할 IP 주소를 지정합니다. 현제는 로컬 호스토로만 접속이 허용되어 있습니다.
- mysqlx-bind-address = 127.0.0.1: MySQL X 프로토콜에 사용할 IP 주소를 지정합니다. 현제는 로컬 호스토로만 접속이 허용 되어 있습니다.
★ MySQL X 프로토콜은 MySQL 서버와 다양한 프로그래밍 언어 또는 플랫폼 간의 통신을 가능하게 합니다.
(예 MySQL Connector/X를 사용하여 Python, Java, C++ 등의 언어로 MySQL 서버와 통신)
- key_buffer_size = 16M: MyISAM 테이블 인덱스 및 내부 캐시를 위한 버퍼 크기를 지정합니다. 이 설정은 MyISAM 엔진에만 적용됩니다.
★ MyISAM : MySQL에서 사용되는 데이터베이스 엔진 중 하나입니다.
데이터베이스 엔진은 데이터를 저장하고 관리하는 데 사용되는 내부 소프트웨어입니다
- # max_allowed_packet = 64M: 클라이언트와 서버 간에 전송할 수 있는 최대 패킷 크기를 지정합니다. 주석 처리되어 있어서 기본값이 사용됩니다(64MB).
- # thread_stack = 256K: 스레드의 스택 크기를 지정합니다. 주석 처리되어 있어서 기본값이 사용됩니다(256KB).
- # thread_cache_size = -1: 스레드 캐시 크기를 지정합니다. 이 값을 -1로 설정하면 MySQL이 스레드 캐시를 자동으로 관리합니다.
- myisam-recover-options = BACKUP: MyISAM 테이블이 손상되었을 때 MySQL이 복구할 때 사용할 옵션을 지정합니다. 여기서는 "BACKUP"으로 설정되어 있으며, 손상된 테이블을 복구하기 위해 백업을 사용합니다.
- # max_connections = 151: 서버에 동시에 연결할 수 있는 최대 클라이언트 수를 지정합니다. 주석 처리되어 있어서 기본값이 사용됩니다(151).
- # table_open_cache = 4000: 테이블 캐시의 크기를 지정합니다. 이 캐시는 테이블을 열고 닫는 데 사용됩니다. 주석 처리되어 있어서 기본값이 사용됩니다(4000)
- # general_log_file = /var/log/mysql/query.log 및 # general_log = 1: 모든 쿼리를 로그 하는 옵션입니다. 성능에 부담을 주기 때문에 주석 처리되어 있습니다.
- log_error = /var/log/mysql/error.log: 에러 로그 파일의 경로를 지정합니다. MySQL 서버에서 발생하는 오류와 경고 메시지가 이 파일에 기록됩니다.
- # slow_query_log = 1 및 # slow_query_log_file = /var/log/mysql/mysql-slow.log: 실행 시간이 오래 걸리는 쿼리를 로그하는 옵션입니다. 주석 처리되어 있으며, 주석을 제거하여 활성화할 수 있습니다.
- # long_query_time = 2: 실행 시간이 특정 임계값(여기서는 2초) 이상인 쿼리를 지정합니다. 이 값보다 오래 걸리는 쿼리가 로그에 기록됩니다.
- # log-queries-not-using-indexes: 인덱스를 사용하지 않는 쿼리도 로그에 기록하는 옵션입니다. 주석 처리되어 있습니다.
- # server-id = 1: MySQL 서버의 고유 ID를 설정합니다. 주석 처리되어 있으며, MySQL 복제 환경에서 사용됩니다.
- # log_bin = /var/log/mysql/mysql-bin.log: 이진 로그 파일의 경로를 지정합니다. MySQL 복제나 복구를 위해 이진 로그가 필요한 경우 사용됩니다.
- max_binlog_size = 100M: 이진 로그 파일의 최대 크기를 지정합니다. 이 크기를 초과하면 새로운 이진 로그 파일이 생성됩니다.
반응형
'Server > Sql' 카테고리의 다른 글
[Mariadb] 우분투 Mariadb 설치 및 기본 설정 (0) | 2024.04.26 |
---|---|
[Mysql] 우분투 Mysql 설치 및 기본설정 (0) | 2024.04.25 |
댓글