Mysql 在 Docker 中的時區(qū)問題記錄
一、前言
- 國內(nèi)通常使用的時區(qū)是中國標(biāo)準(zhǔn)時間(China Standard Time,簡稱 CST),其標(biāo)識為 “Asia/Shanghai”。 CST 的 UTC 偏移為 UTC+8,表示比協(xié)調(diào)世界時(UTC)提前8小時。中國標(biāo)準(zhǔn)時間是中國國內(nèi)的官方時間,覆蓋整個國家的時區(qū)。
- Mysql 時區(qū)一般是跟著系統(tǒng)走的,而在 Docker 中安裝 Mysql 默認(rèn)時區(qū)是 UTC。
下面介紹,創(chuàng)建Docker容器前、后,分別如何設(shè)置 Mysql 時區(qū)。
二、在 Docker 中設(shè)置 Mysql 時區(qū)
2.1 創(chuàng)建容器前
# 在創(chuàng)建容器時指定時區(qū) docker run .... -e TZ=Asia/Shanghai ....
2.2 創(chuàng)建容器后
1、查看 Mysql 時區(qū):
mysql> show variables like "%time_zone%"; +------------------+--------+ | Variable_name | Value | +------------------+--------+ | system_time_zone | UTC | | time_zone | SYSTEM | +------------------+--------+ mysql> select now(); +---------------------+ | now() | +---------------------+ | 2023-12-26 09:23:11 | +---------------------+ 1 row in set (0.00 sec)
2、查看 Docker 容器時區(qū):
date -R # 執(zhí)行結(jié)果如下: Tue, 26 Dec 2023 09:24:47 +0000 # 在 mysql配置文件加上以下配置,并重啟 mysql容器后依然無效~ [mysqld] default-time-zone='Asia/Shanghai'
3、修改 Docker 容器時區(qū):
1)進入容器,執(zhí)行 tzselect 命令
# 進入容器 docker exec -it mysql1 /bin/bash # 執(zhí)行 tzselect 命令,按下圖順序依次輸入:4、10、1、1 tzselect



2)找到 /etc/profile 文件,在文件中添加如下內(nèi)容:
TZ='Asia/Shanghai'; export TZ
3)使 /etc/profile 修改生效
source /etc/profile
4)再次查看容器時區(qū)
date -R # 執(zhí)行結(jié)果如下,修改已生效: Tue, 26 Dec 2023 18:46:19 +0800
5)重啟 mysql 容器
docker restart [docker_name]
# 查看 Mysql 時區(qū),修改已生效 mysql> show variables like "%time_zone%"; +------------------+--------+ | Variable_name | Value | +------------------+--------+ | system_time_zone | CST | | time_zone | SYSTEM | +------------------+--------+ 2 rows in set (0.01 sec) mysql> select now(); +---------------------+ | now() | +---------------------+ | 2023-12-26 18:50:09 | +---------------------+ 1 row in set (0.00 sec)
到此這篇關(guān)于Mysql 在 Docker 中的時區(qū)問題的文章就介紹到這了,更多相關(guān)Mysql Docker 時區(qū)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Docker容器訪問宿主機Ollama服務(wù)配置詳細(xì)操作步驟
Ollama現(xiàn)在已經(jīng)支持Docker安裝,極大的簡化了服務(wù)器用戶部署難度,這篇文章主要介紹了Docker容器訪問宿主機Ollama服務(wù)配置詳細(xì)操作步驟,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下2025-12-12
Dockerfile與.gitlab-ci.yml的關(guān)系以及構(gòu)建自動化鏡像方式
GitLabCI/CDPipeline中構(gòu)建Docker鏡像的步驟如下:1.了解Dockerfile和.gitlab-ci.yml之間的關(guān)系;2.定義構(gòu)建Docker鏡像的階段;3.在階段中調(diào)用Dockerfile來構(gòu)建鏡像2024-11-11
Docker部署Java應(yīng)用程序的實現(xiàn)步驟
本文主要介紹了Docker部署Java應(yīng)用程序的實現(xiàn)步驟,通過將Java應(yīng)用程序打包成一個Docker鏡像,可以實現(xiàn)快速部署、資源隔離和靈活擴展,感興趣的可以了解一下2024-03-03
Docker Registry升級部署Harbor的實現(xiàn)步驟
本文詳細(xì)介紹了如何從單機Docker Registry遷移到企業(yè)級Harbor倉庫的完整流程,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2026-04-04

