[MySQL] MySQL 설치 및 파라미터 그룹 설정(mysql.cnf)
오늘은 Ubuntu 환경에서 MySQL 설치 및 DB 파라미터 그룹 변경 방법에 대해 정리한다. CLI 명령어로 서버에 MySQL을 설치하고, 외부 접근을 위한 방화벽 설정 방법을 알아본다. 추가로 DB와 관련된 사용자설정값을 지정하는 방법을 공유한다.
1. MySQL 설치 및 외부 접근 허용 설정
DB 설치는 ubuntu apt-get
패키지 관리자로 진행한다. 최신 패키지 소스를 다운받기 위한 업데이트를 진행하고, mysql-server
를 다운로드한다.
# 패키지 관리자 업데이트
sudo apt-get update
# MySQL 설치
sudo apt-get install mysql-server
설치가 완료되면, 로컬 환경에서 DataGrip, Workbench와 같은 DBMS 툴 접근을 열어주기 위해 방화벽을 잡아준다.
# MySQL에 대한 방화벽 설정 (기본 실행 포트 3306)
sudo ufw allow mysql
패키지 설치와 방화벽 설정을 끝냈으니 서버에서의 실행만 남았다. 관리자 권한으로 진행하고, 선택에 따라 서버 재실행 시 MySQL 자동 실행을 아래와 같이 설정할 수 있다.
# MySQL 실행 (기본 실행포트 = 3306)
sudo systemctl start mysql
# (선택) 서버 재실행 시, MySQL 자동 실행을 위한 설정
sudo systemctl enable mysql
2. 파라미터 그룹 설정(mysql.cnf)
실행 애플리케이션에 따라 DB 파라미터 그룹을 수정해야할 경우가 있다. AWS RDS에서는 GUI 환경에서 쉽게 수정할 수 있지만, 서버에 설치한 DB는 직접 설정 파일에 접근해 관련된 값을 넣어주거나 수정해주어야 한다.
아래 코드 블록에 MySQL 설정 파일인 mysql.cnf
의 접근 경로와 설정값 수정에 대한 내용을 담았다. 원하는 설정값이 없다면 vi 편집기로 추가하고, 기존값을 변경하고자 한다면 value를 바꿔주자. 수정을 완료하면 반드시 mysql 재시동을 해줘야 한다.
# MySQL 설정 파일 경로 이동 및 파일 확인
cd /etc/mysql/mysql.conf.d/ || ll
> total 16
drwxr-xr-x 2 root root 4096 May 3 19:21 ./
drwxr-xr-x 4 root root 4096 May 3 17:18 ../
-rw-r--r-- 1 root root 3153 May 3 19:21 mysqld.cnf
-rw-r--r-- 1 root root 21 Aug 20 2021 mysqld_safe_syslog.cnf
# 관리자 권한으로 'mysqld.cnf' 파일을 vi 편집기로 열기
sudo vi mysqld.cnf
> # The MySQL database server configuration file.
#
# You can copy this to one of:
# - "/etc/mysql/my.cnf" to set global options,
# - "~/.my.cnf" to set user-specific options.
#
# ...
#
# 접근 IP 설정 (0.0.0.0 = 모든 IP 허용)
bind 0.0.0.0
# 파라미터 그룹 추가 및 수정
innodb_lock_wait_timeout = 240
transaction-isolation = READ-COMMITTED
lower_case_table_names = 1
# MySQL 재실행
sudo systemctl restart mysql
지금까지 Ubuntu에서 MySQL 설치 및 파라미터 그룹 설정 방법에 대해 알아보았다. 혹시, AWS RDS 환경에서 파라미터 그룹 설정에 대한 내용이 알고 싶다면, 아래 URL에서 확인할 수 있다.
https://log4day.tistory.com/29?category=1038764