> 데이터 베이스 > MySQL 튜토리얼 > MySQL에서 시간대를 효과적으로 관리하려면 어떻게 해야 합니까?

MySQL에서 시간대를 효과적으로 관리하려면 어떻게 해야 합니까?

Barbara Streisand
풀어 주다: 2024-12-15 14:33:11
원래의
173명이 탐색했습니다.

How Can I Effectively Manage Time Zones in MySQL?

MySQL 시간대 설정

MySQL의 시간대 설정을 이해하는 것은 정확한 날짜 및 시간 표현을 보장하는 데 중요합니다. 이 가이드는 MySQL에서 시간대를 설정하는 위치와 방법에 대한 포괄적인 개요를 제공하여 개발자가 시간에 민감한 데이터를 효과적으로 관리할 수 있도록 해줍니다.

MySQL의 시간대 구성

MySQL을 사용하면 세 가지 개별 위치에서 시간대를 구성할 수 있습니다.

  1. my.cnf 구성 파일: [mysqld] 섹션 내에서 default-time-zone 매개변수는 모든 MySQL 연결에 대한 전역 기본 시간대를 지정합니다.
  2. @@global.time_zone 변수: 이 전역 변수는 모든 시스템 수준 작업에 사용되는 시간대를 나타냅니다. SET GLOBAL time_zone 명령을 사용하여 설정할 수 있습니다.
  3. @@session.time_zone 변수: 각 MySQL 세션은 SET time_zone 명령으로 관리되는 자체 시간대 설정을 가질 수 있습니다. 기본적으로 세션 시간대는 @@global.time_zone에서 상속됩니다.

시간대 정보 테이블 채우기

이름이 지정된 시간대를 활성화하려면 시간대 정보 테이블을 채워야 합니다. 이는 MySQL 설명서에 제공된 지침을 따르거나 타사 도구를 통해 수행할 수 있습니다.

시간대 보기 및 수정

현재 시간대 설정을 확인하려면, 다음 쿼리를 실행합니다:

  • SELECT @@global.time_zone;
  • SELECT @@session.time_zone;

시간대를 설정하려면 다음 명령 중 하나를 사용하세요.

  • SET GLOBAL 시간대 = ' 00:00';
  • SET 시간대 = 'Europe/Helsinki';

추가 시간대 기능

MySQL은 시간대와 타임스탬프를 효과적으로 관리할 수 있는 다양한 기능을 제공합니다. 여기에는 다음이 포함됩니다:

  • TIMEDIFF(NOW(), UTC_TIMESTAMP); 현재 시간대 오프셋을 반환합니다.
  • SELECT UNIX_TIMESTAMP(); 현재 UNIX 타임스탬프를 검색합니다.
  • SELECT UNIX_TIMESTAMP(CONVERT_TZ(utc_datetime, ' 00:00', @@session.time_zone)) FROM table_name; UTC 날짜/시간 열을 현재 세션 시간대의 UNIX 타임스탬프로 변환합니다.

참고: 시간대를 변경해도 기본으로 저장된 날짜/시간 또는 타임스탬프에는 영향을 주지 않습니다. 그러나 기존 타임스탬프 열은 내부적으로는 UTC 타임스탬프로 저장되고 외부적으로는 현재 MySQL 시간대로 표시되므로 다르게 표시됩니다.

위 내용은 MySQL에서 시간대를 효과적으로 관리하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿