您的位置:首页 > 运维架构 > Linux

mysql时区修改及Linux系统时区修改

2018-04-03 00:00 351 查看
摘要: 昨天系统日期和日志时间都一样,但是数据库时间突然少了十几个小时,找了日志和系统时间,发现都是正常的CST标准时间,那就只有一个可能了,数据库时区问题,那应该如何修改Linux系统时区和Mysql数据库时区呢?

1、查看Linux系统时区

命令

1、date:登录xshell后,输入date,即可看到系统时间及时区;

2、date "%Z %z":登录xshell后,输入date "%Z %z",即可看到系统字符形式时区,数字形式时区;



2、修改Linux系统时区

命令修改时区:

tzselect:

执行tzselect命令-->选择Asia-->选择China-->选择east China - Beijing, Guangdong, Shanghai, etc-->然后输入1。

执行TZ='Asia/Shanghai'; export TZ 并将这行命令添加到.profile中,然后退出并重新登录。

date命令看到的结果,最终时区显示为CST,即中国标准时间。

修改配置文件来修改时区:

1、修改/etc/sysconfig/clock ZONE=Asia/Shanghai

2、rm /etc/localtime

3、链接到上海时区文件

ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

执行完上述过程后,重启机器,即可看到时区已经更改。

3、查看mysql时区

linux登录mysql,命令:mysql -u root -h 127.0.0.1 -p回车然后输入密码password(你的mysql的root用户密码)。

命令:show variables like "%time_zone%";

默认:time_zone说明mysql使用system的时区,system_time_zone说明system使用CST时区

4、修改mysql时区

1、命令修改

set global time_zone = '+8:00'; ##修改mysql全局时区为北京时间,即我们所在的东8区

set time_zone = '+8:00'; ##修改当前会话时区

flush privileges; #立即生效

2、配置文件修改

命令 cd /etc/ 回车进入目录,vim my.cnf 回车,修改my.cnf文件,加入

# vim /etc/my.cnf ##在[mysqld]区域中加上
default-time_zone = '+8:00'
# /etc/init.d/mysqld restart ##重启mysql使新时区生效

重启mysql命令:service mysqld restart
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息