MySQL 시간대
MySQL의 시간대 지원에 대해 궁금하십니까? 다음은 MySQL 시간대를 효과적으로 이해하고 사용하는 데 도움이 되는 포괄적인 가이드입니다.
MySQL 시간대 전체 목록
기본적으로 MySQL에는 시간대 정보가 포함되지 않습니다. 시간대 데이터를 MySQL에 로드하려면 다음 명령을 실행하십시오.
mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root -p mysql
로드된 후에는 다음을 실행하여 사용 가능한 시간대 목록을 볼 수 있습니다.
USE mysql; SELECT * FROM `time_zone_name`;
사용 시간대
타임스탬프 값에 대한 시간대를 지정하려면 CONVERT_TZ() 함수를 사용하세요.
CONVERT_TZ('2012-06-07 12:00:00', 'GMT', 'America/New_York')
이렇게 하면 타임스탬프가 캘거리 현지 시간으로 변환됩니다.
자동으로 시간대 데이터 로드
시스템 시간대가 변경될 때 MySQL 시간대를 자동으로 업데이트하려면 비밀번호 없이 루트 로그인을 허용하도록 MySQL을 구성하십시오.
MySQL >= 5.6.6
mysql_config_editor set --login-path=client --host=localhost --user=root --password
MySQL < 5.6.6
~/.my.cnf 파일 만들기:
user=root password=yourMysqlRootPW
업데이트 스크립트
다음 스크립트를 추가합니다. 매일 시간대를 업데이트하는 crontab:
#!/bin/bash
if [ `find /usr/share/zoneinfo -mtime -1 | grep -v '\.tab' | wc -l` -gt 0 ]; then
echo "Updating MySQL timezone info"
mysql_tzinfo_to_sql /usr/share/zoneinfo 2>/dev/null | mysql -u root mysql
echo "Done!\n"
fi추가 팁
- MySQL에서 시간대 정보는 약 5MB를 차지합니다.
- 시간대 테이블을 삭제하지 마세요. 대신 TRUNCATE를 사용하세요.
위 내용은 MySQL에서 시간대를 효과적으로 사용하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!