오류 로그 위치 변경

LinuxBeginner
지금 연습하기

소개

이 프로젝트에서는 MySQL 데이터베이스 서버의 기본 오류 로그 위치를 변경하는 방법을 배우게 됩니다. 이 프로젝트를 완료하면 다음을 수행할 수 있습니다.

  • MySQL 오류 로그를 저장하기 위한 전용 디렉토리를 생성합니다.
  • 로그 디렉토리 및 파일에 적절한 권한과 소유권을 설정합니다.
  • MySQL 구성 파일을 수정하여 기본 오류 로그 위치를 변경합니다.

👀 미리보기

MySQL error log setup preview

🎯 작업

이 프로젝트에서는 다음을 배우게 됩니다.

  • MySQL 오류 로그를 저장하기 위한 새로운 디렉토리를 만드는 방법
  • 로그 디렉토리 및 파일의 사용자, 그룹 및 권한을 변경하는 방법
  • 새로운 오류 로그 위치를 설정하기 위해 MySQL 구성 파일을 수정하는 방법

🏆 성과

이 프로젝트를 완료하면 다음을 수행할 수 있습니다.

  • MySQL 오류 로그의 위치를 더 편리한 디렉토리로 사용자 정의할 수 있습니다.
  • MySQL 오류 로그 파일에 대한 적절한 권한과 소유권을 보장합니다.
  • 필요에 따라 MySQL 구성 파일을 자신 있게 탐색하고 수정할 수 있습니다.

MySQL 로그 디렉토리 생성 및 권한 설정

이 단계에서는 MySQL 로그 디렉토리를 생성하고 적절한 권한을 설정합니다.

  1. ~/project 디렉토리 아래에 mysql 디렉토리를 생성하고 my.log 파일을 이 디렉토리로 이동합니다.

    mkdir ~/project/mysql
    touch ~/project/mysql/my.log
    
  2. sudo 명령을 사용하여 ~/project/mysql/my.log 파일과 ~/project/mysql 디렉토리의 사용자, 사용자 그룹 및 모드를 변경합니다.

    sudo chown mysql:mysql ~/project/mysql/my.log
    sudo chown mysql:mysql ~/project/mysql
    sudo chmod 755 /home/labex
    

이 명령은 my.log 파일과 mysql 디렉토리의 소유자와 그룹을 mysql:mysql로 설정하고, 홈 디렉토리 (/home/labex) 에 대한 권한을 755 (소유자에 대한 읽기, 쓰기 및 실행, 그룹 및 기타 사용자에 대한 읽기 및 실행) 로 설정합니다.

MySQL 설정 파일 수정

이 단계에서는 MySQL 구성 파일을 수정하여 기본 오류 로그 위치를 변경합니다.

  1. /etc/mysql/mariadb.conf.d 디렉토리로 이동합니다.

    cd /etc/mysql/mariadb.conf.d
    
  2. 텍스트 편집기를 사용하여 50-server.cnf 파일을 엽니다.

    sudo vim 50-server.cnf
    
  3. [mysqld] 섹션에서 log_error 옵션의 주석 처리를 해제하고 경로를 "/home/labex/project/mysql/my.log"로 설정합니다.

    [mysqld]
    log_error = /home/labex/project/mysql/my.log
    

    Editing MySQL log error path

  4. 텍스트 편집기를 사용하여 50-mysqld_safe.cnf 파일을 엽니다.

    sudo vim 50-mysqld_safe.cnf
    
  5. [mysqld_safe] 섹션에서 skip_log_error 옵션에 주석 처리합니다.

    [mysqld_safe]
    #skip_log_error
    

    Config file skip log error commented

이러한 변경 사항은 MySQL 오류 로그가 ~/project/mysql 디렉토리의 my.log 파일에 기록되도록 하고, skip_log_error 옵션이 주석 처리되도록 합니다.

MySQL 서비스 재시작 및 변경 사항 확인

이 단계에서는 MySQL 서비스를 재시작하고 변경 사항이 올바르게 적용되었는지 확인합니다.

  1. MySQL 서비스를 시작합니다.

    sudo service mysql start
    
  2. MySQL 명령줄 인터페이스에 연결합니다.

    mysql -uroot
    
  3. SQL 문을 사용하여 log_error 변수의 값을 확인합니다.

    SHOW VARIABLES LIKE 'log_error';
    
    MariaDB [(none)]> SHOW VARIABLES LIKE 'log_error';
    +---------------+----------------------------------+
    | Variable_name | Value                            |
    +---------------+----------------------------------+
    | log_error     | /home/labex/project/mysql/my.log |
    +---------------+----------------------------------+
    1 row in set (0.001 sec)
    

출력 결과는 log_error 변수가 올바른 경로인 /home/labex/project/mysql/my.log로 설정되었음을 보여줍니다.

축하합니다! MySQL 오류 로그 위치를 ~/project/mysql 디렉토리의 my.log 파일로 성공적으로 변경했습니다.

요약

축하합니다! 이 프로젝트를 완료했습니다. LabEx 에서 더 많은 랩을 연습하여 기술을 향상시킬 수 있습니다.

✨ 솔루션 확인 및 연습✨ 솔루션 확인 및 연습✨ 솔루션 확인 및 연습