怎么在mysql中查看时区

  介绍

这篇文章给大家介绍怎么在mysql中查看时区,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

一。查看数据库时区

show  variables 像# 39;% time_zone& # 39;;   mysql>, show  variables  like “% time_zone";   + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +   | |,Variable_name 还以为;Value  |   + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +   | |,system_time_zone  CEST  |   |,time_zone ,,, |, SYSTEM  |   + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +

1。全局参数system_time_zone

系统时区,在MySQL启动时会检查当前系统的时区并根据系统时区设置全局参数system_time_zone的值。

system_time_zone的值根据当前系统的不同会有所不同,此处测试时系统时间为c时间,所以值为c
查看当前的操作系统的时区

# #,使用日期命令   date  +“% Z  % z"//查看当前操作系统的时区   date  - r (vagrant@localhost  ~),美元date  - r   结婚,,17,Jun  2020年,10:48:14  + 0200   (vagrant@localhost  ~),美元date  +“% Z  % z"   CEST  + 0200

c表示在mysql启动时,系统的时间为c

c为欧洲中部夏令时间,英文全名:欧洲中部夏令时间

欧洲中部夏令时间所属时区:UTC/GMT + 2

2。全局参数time_zone

用来设置每个连接会话的时区,默认为系统时,使用全局参数system_time_zone的值。我们需要修改的就是time_zone的值

系统表示time_zone默认使用system_time_zone的时区,此处即c

个人思路
因中为my . cnf中所做默认没有设置default-time_zone,所以time_zone默认为系统,即system_time_zone的值,
而system_time_zone的值为mysql启动时的操作系统的时区,所以个人认为可以通过提前设置操作系统的时区来决定mysql的时区

二。设置数据库时区

1。通过mysql命令行模式下动态修改,这种修改只在当前的mysql启动状态生效,如果mysql重启,则恢复到my.ini的设置状态

set  global  time_zone =, & # 39; + 8 # 39;;   FLUSH 特权;

再查看mysql的时区设置如下(需要退出mysql后,再重新登陆mysql,否则time_zone的结果可能不变,仍为系统)

mysql>, show  variables  like “% time_zone";   + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +   | |,Variable_name 还以为;Value  |   + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +   | |,system_time_zone  CEST  |   |,time_zone ,,, | + 08:00  |   + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +

2。通过修改配置文件来修改时区,这种修改永久生效,即使mysql重启也一样有效

windows系统中配置文件为my.ini.linux系统中配置文件为

/etc/my . cnf中所做

在(mysqld)的下面添加或者修改如下内容

default-time_zone =, & # 39; + 8 # 39;

修改完配置文件后需要重启mysql服务器,

linux系统中服务器重启命令如下

systemctl  restart  mysqld.service 的

my . cnf中所做修改后的内容如下所示

#,For  advice 提醒请;用change  settings  please 请参阅   #,http://dev.mysql.com/doc/refman/5.6/en/server-configuration-defaults.html      (mysqld)   #   # #,Remove  leading 以及set 用,amount  of  RAM  for 从而most  important 数据   #,cache  MySQL只拷贝Start  at  70%, of  total  RAM  for  dedicated 服务器,else  10%。   #,innodb_buffer_pool_size =128   #   # #,Remove  leading 用turn 提醒a 非常important  data  integrity 选择:日志记录   #,changes 用,binary  log 结构、备份。   #,log_bin   #   # #,Remove  leading 用set  options  mainly  useful  for  reporting 服务器。   #,从而server  defaults 断开连接;faster  for  transactions 以及fast 选择。   #,Adjust  sizes  as 需要,experiment 用find 从而optimal 价值。   #,join_buffer_size =128   #,sort_buffer_size =2 m   #,read_rnd_buffer_size =2 m   datadir=/var/lib/mysql   套接字=/var/lib/mysql/mysql.sock   时间=default-time_zone  & # 39; + 9 # 39;      #,Disabling  symbolic-links  is  recommended 用prevent  assorted  security 风险   符号链接=0      #,Recommended  standard 拷贝;MySQL 设置   sql_mode=NO_ENGINE_SUBSTITUTION STRICT_TRANS_TABLES      (mysqld_safe)   日志错误=/var/log/mysqld.log   pid文件=/var/运行/mysqld/mysqld。pid

怎么在mysql中查看时区