Azure Database for MySQL - 유연한 서버의 오류 로그(미리 보기)
사용자는 Azure Database for MySQL - 유연한 서버에서 오류 로그를 구성하고 이에 액세스할 수 있습니다. MySQL의 오류 로그는 서버 시작 및 종료 중에 진단 메시지를 수집하며, 서버가 실행되는 동안 사전 예방적으로 문제를 해결하는 데 도움이 되는 정보를 수집합니다. MySQL 오류 로그에 대한 자세한 내용은 MySQL 설명서의 오류 로그 섹션을 참조하세요.
미리 보기 단계에서 오류 로그는 서버 로그에서만 사용할 수 있으며 오류 로그를 Azure 진단 로그로 내보낼 수 없습니다.
Azure Database for MySQL - 유연한 서버에서 Azure Portal의 서버 로그 아래 오류 로그를 활성화하면 mysql-error-servername-timestamp.log 구문을 사용하여 명명된 여러 파일의 세부 정보가 기록됩니다. 파일 이름에 파일이 생성된 시기와 연결된 타임스탬프(GMT/UTC)가 추가되어 로그 항목이 기록된 특정 시간을 나타냅니다. 자세한 내용은 서버 로그 보존을 참조하세요.
오류 로그 사용(미리 보기)
사용자는 Azure Portal 또는 List를 사용하여 사용하도록 설정할 수 있는 서버 로그 기능을 통해 Azure Database for MySQL – 유연한 서버에서 오류 로그에 액세스하고 구성할 수 있으며, Azure CLI를 사용하여 Azure Database for MySQL - 유연한 서버 로그를 다운로드할 수 있습니다.
기능을 활성화하면 MySQL 유연한 서버가 이벤트 캡처를 시작하고 활동이 발생할 때 저장된 파일에 기록합니다.
오류 로그를 활성화하려면 다음 단계를 수행합니다.
Azure Portal에서 유연한 서버로 이동한 다음 모니터링에서 서버 로그를 선택합니다.
서버 로그 아래에서 서버 로그 기능을 활성화하는 사용 확인란을 선택합니다.
사용할 로그를 선택하는 섹션에서 오류 로그 확인란을 선택합니다.
저장을 선택하여 배포를 진행합니다.
서버 매개 변수 창을 통해 또는 Azure CLI를 사용하여 Azure Database for MySQL - 유연한 서버에서 서버 매개 변수 구성을 통해 "error_server_log_file"이라는 서버 매개 변수를 사용하도록 설정하여 Azure Database for MySQL 유연한 서버에서 오류 로그를 사용하도록 설정할 수도 있습니다.
서버 로그 창에서 사용 확인란을 선택하여 서버 로그 기능을 활성화해야 합니다. 아니면 서버 매개 변수 "log_output"을 FILE로 설정하여 서버 로그를 활성화합니다. 이 두 작업 중 하나를 수행하지 않으면 Azure Database for MySQL 유연한 서버에서 FILE 로깅이 활성화되지 않습니다.
액세스 오류 로그
Azure Database for MySQL 유연한 서버를 더 자세히 분석하기 위해 오류 로그를 다운로드할 수 있습니다. 로그를 다운로드하려면 Azure Portal에서 서버 로그 섹션으로 이동한 후 다음과 같이 오류 로그 탭을 선택합니다.
이름 아래에서 다운로드할 로그 파일을 선택한 다음, 작업에서 다운로드를 선택합니다.
여러 로그 파일을 한 번에 다운로드하려면 이름 아래에서 다운로드할 파일을 선택하고 다운로드를 선택합니다.
Azure CLI를 사용하여 오류 로그 액세스
다음 명령을 사용하여 유연한 서버의 서버 로그를 나열할 수 있습니다.
az mysql flexible-server server-logs list --resource-group <myresourcegroup> --server-name <server_name> --out table
언급된 서버 로그를 현재 디렉터리에 다운로드하려면 다음 명령을 사용하세요.
az mysql flexible-server server-logs download --resource-group <myresourcegroup> --server-name <server_name> --name <mysql-error-<server_name>-<timestamp>.log>
자세한 내용은 Azure Portal 또는 Azure CLI를 통해 서버 로그 파일을 다운로드하는 방법을 참조하세요.
서버 로그 보존 중 오류 로그
Azure Database for MySQL - 유연한 서버에 대해 로깅을 사용하도록 설정하면 로그를 만든 후 최대 7일까지 사용할 수 있습니다. 사용 가능한 로그의 전체 크기가 7GB를 초과하면 여유 공간이 생길 때까지 가장 오래된 파일이 삭제됩니다. 서버 로그에 대한 7GB 스토리지 제한은 무료로 사용할 수 있으며 확장할 수 없습니다. 로그는 24시간마다 또는 500MB마다 순환됩니다(먼저 도달하는 쪽이 적용됨).
중요한 것은 순환 전에 로그를 다운로드하여 보존 기간 내의 어느 시점에서든 중요한 서버 로그에 액세스할 수 있다는 점입니다.
다양한 로그 유형의 로그 순환 일정 및 스토리지 한도에 대한 자세한 내용은 서버 로그 보존에 대한 설명서를 참조하세요.
PII(개인 식별 정보) 및 중요한 데이터 처리
Azure MySQL 유연한 서버에서는 데이터 보안의 우선 순위를 지정합니다. 따라서 PII(개인 식별 정보) 또는 오류 로그의 호스트 이름, IP 주소, 사용자 이름 및 데이터베이스 이름과 같은 중요한 데이터는 보안상의 이유로 해시됩니다. 즉, 오류 로그에서 서버의 작동 상태 및 잠재적인 문제에 대한 인사이트를 얻을 수 있지만 서버 보안을 손상시킬 수 있는 특정 세부 정보는 직접 액세스할 수 없습니다. 그러나 사용자 이름이 일반적으로 인쇄되는 "액세스 거부" 오류와 같은 오류에 대한 자세한 정보가 필요한 경우 Azure MySQL 유연한 서버의 감사 로그에서 이 정보를 찾을 수 있습니다. 감사 로그는 서버의 활동 및 트랜잭션에 대한 보다 세부적인 보기를 제공하므로 문제를 보다 효과적으로 해결하고 해결할 수 있습니다.
감사 로그에 액세스하고 해석하는 방법에 대한 자세한 내용은 공식 설명서를 참조하세요.
자주 묻는 질문
질문: 오류 로그에 다음과 같은 내용이 포함되어 있습니다. 무슨 의미인가요?
[Note] [Server] Access denied for user ''@'xx.xx.xx.X' (using password: NO).
답변: 이는 잘못되었거나 누락된 인증 세부 정보로 인해 MySQL 서버에 연결하지 못했음을 나타냅니다. 특히 제공된 사용자 이름이 비어 있고(''@'xx.xx.xx.X') 암호가 입력되지 않았습니다(using password: NO). 이는 데이터베이스에 대한 무단 액세스 시도를 나타낼 수 있습니다. 공개적으로 액세스 가능한 서버인 경우 인터넷에 계속 노출되어 무단 액세스 시도의 표적이 될 수 있습니다. Azure Database for MySQL 유연한 서버의 보안을 강화하려면 공용 액세스를 비활성화하거나 방화벽 규칙을사용하여 액세스를 제한하세요.