目录

mysql时区介绍

方法一: 临时修改

方法二: 启动时加参数(推荐)


mysql时区介绍

先来校验下数据库是否真的时区不对. 进入MySQL数据库, 运行语句:

SELECT NOW();

会返回类似这样的数据:

mysql> SELECT NOW();
+---------------------+
| NOW()    |
+---------------------+
| 2020-07-04 15:46:46 |
+---------------------+
1 row in set (0.09 sec)

再来查询下当前时区, 输入以下命令:

SHOW VARIABLES LIKE '%time_zone%';

会返回类似这样的数据:

mysql> SHOW VARIABLES LIKE '%time_zone%';
+------------------+--------+
| Variable_name | Value |
+------------------+--------+
| system_time_zone | UTC |
| time_zone  | +00:00 |
+------------------+--------+
2 rows in set (0.12 sec)

如果返回的时间和你的相差多个小时, 并且时区不对(非+08:00)的话, 那么证明你需要向下看了.

方法一: 临时修改

当我们的需求非常急的时候, 我们可以做此临时修改. 运行命令:

SET GLOBAL time_zone = '+8:00';

再次运行以下命令, 校验返回结果是否为当前时间:

SELECT NOW();

返回当前时间则证明修改成功.

之所以本方法称为”临时修改”, 是因为重启MySQL后该修改会失效

方法二: 启动时加参数(推荐)

此方法适用于条件允许我们重新创建运行一个sql容器,

创建运行mysql容器时, 我们需要加上指定时区的命令(东八区是上海, 你可以按需修改为自己的时区):

-e TZ=Asia/Shanghai

所以, 我们的docker完整运行命令应该为(仅供参考, 你的运行命令可能略有差异):

docker run -p 3306:3306 --name mymysql -v $PWD/conf:/etc/mysql/conf.d -v $PWD/logs:/logs -e TZ=Asia/Shanghai -v $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:8.0

方法三: 修改容器内配置

输入以下命令进入mysql容器:

docker exec -it 容器ID bash

修改MySQL配置文件(两种情况):

vim /etc/mysql/mysql.conf.d

或者

vim /etc/mysql/my.cnf

如果以上命令返回bash: vim: command not found, 请先安装

apt-get update
apt-get install vim

进入配置文件后, 点击i进入编辑模式, 添加一行配置文件:

default-time-zone = '+08:00'

如图:

添加配置文件

完成后, 点击ESC, 输入:wq进行保存并退出.

再输入exit退出docker容器.

接下来我们要重启mysql容器, 输入命令:

docker restart 容器ID

至此, 已经成功修改了时区配置.

重启后, 输入以下命令验证是否成功:

SELECT NOW();

如果返回时间和当前时间一致, 则证明修改成功.

docker mysql容器 修改时区相关推荐

  1. 修改docker mysql容器端口的映射

    修改docker mysql容器端口的映射 参考来源地址:https://blog.csdn.net/my_chenjie/article/details/85058032 大家都知道docker r ...

  2. 【MySQL】记录 Navicat连接 docker mysql 容器,备份docker mysql 注意事项

    文章目录 Navicat连接 docker mysql 容器 定时任务备份 docker mysql ,解决 备份数据库为空 问题 Navicat连接 docker mysql 容器 确保 登录 用户 ...

  3. docker mysql容器启动不_Mysql容器启动失败-解决方案

    在看问题之前首先熟悉几个命令 相关命令 1.docker attach 连接到正在运行中的容器: 命令:docker attach --sig-proxy=falsemynginx 2.docker ...

  4. docker mysql容器安装vim

    由于 linux 下 mysql 区分大小写,所以需要修改 mysql 配置文件 在 [mysqld] 下增加一项属性 lower_case_table_names = 1 ,然后重启 mysql 服 ...

  5. MySQL + springboot修改时区的方法小结

    说明:这里总结记录修改mysql时区的三种方法. 方法一:通过mysql命令行模式下动态修改 1.1 查看mysql当前时间,当前时区 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 ...

  6. docker 登陆mysql_启用登录docker mysql容器

    我正在尝试熟悉docker生态系统并尝试设置mysql数据库容器.与docker-compose此类似: version: '2' services: db: image: mysql:5.6.33@ ...

  7. mysql 设置时区,【MySQL】修改时区设置

    实践中遇到的一个问题,开发环境的时间数据一切正常,但正式环境数据库中的时间数据与实际相比差了8个小时.根据以往的PHP时区问题经验,断定问题处在MySQL的时区设定上. 用命令行连上去看一下时间,可以 ...

  8. docker mysql 日志_在docker mysql容器中启用日志记录

    连接到容器并创建3个文件后,将它们切换到mysql并重新启动容器,日志记录按预期工作. 指向主机卷权限问题.当你从一个容器映射到主机时,没有用户标识映射,附加到容器内的uid的名字可能与外部有很大不同 ...

  9. docker mysql 容器无故停止的原因

    如果输入命令docker ps -a,对应的docker退出状态显示为类似下图: 那么一般是由于mysql使用的内存过多,导致系统杀死了对应的进程,具体日志如下: [root@hwsrv-660820 ...

最新文章

  1. ITSM为人服务,还是人为ITSM服务?
  2. 安全预警:勒索软件正成为制马人的新方向
  3. [答疑]-ATF中异常向量表为何没有实现“Current Exception level with SP_ELx, x>0.“
  4. 浙江嘉兴“网事”再添国字招牌 领跑城市智慧转型
  5. 某厂面试:如何优雅使用 SPI 机制
  6. 华为9x升级鸿蒙,荣耀9X升级鸿蒙2.0系统截图曝光:4G内存流畅度照样起飞!
  7. hibernate中延迟加载的设定(懒加载的设定)
  8. Hadoop job任务分配
  9. 螺旋模型、喷泉模型、增量模型的特点
  10. 你不知道的智联招聘网功能?
  11. 泰凌微8258入门教程 环境篇②——Telink IDE开发环境搭建
  12. NVIDIA Jetson TX2简介
  13. win7开机后资源管理器未响应或者停止问题
  14. unik的命令行-解释说明
  15. 一切皆组件的Flutter,安能辨我是雄雌
  16. 《惢客创业日记》2019.09.02(周一) 把习惯变成闹钟
  17. mysqlclient==1.3.7对应mysql版本_MySQL 5.7.30 的安装/升级(所有可能的坑都在这里)...
  18. 软件架构设计与需求分析方法论
  19. 什么是共享办公室,你想知道的都在这
  20. ImportError: DLL load failed while importing _ctypes conda

热门文章

  1. A typical memory leak
  2. 多元有序logistic回归_医学统计与R语言:多分类logistic回归HosmerLemeshow拟合优度检验...
  3. Tungsten Fabric SDN — Service Chain
  4. 架构师之路 — 软件架构 — 软件质量模型
  5. IPv6 — 地址配置方式
  6. C 语言编程 — 运算符
  7. Ceph 的用户管理与认证
  8. Linux_LEMP
  9. 全差分放大器——共模的意义
  10. c语言中结构体的用法