当前位置: 首页 > news >正文

论述营销型网站的评价标准建立网络的流程

论述营销型网站的评价标准,建立网络的流程,如何编辑网页,如何做平台推广赚钱你还在被以下问题困扰吗#xff1a; MySQL 的安装规范中应该设置什么时区#xff1f; JAVA 应用读取到的时间和北京时间差了 14 个小时#xff0c;为什么#xff1f;怎么解决#xff1f; 已经运行一段时间的业务#xff0c;修改 MySQL 的时区会影响已经存储的时间类型数据…你还在被以下问题困扰吗 MySQL 的安装规范中应该设置什么时区 JAVA 应用读取到的时间和北京时间差了 14 个小时为什么怎么解决 已经运行一段时间的业务修改 MySQL 的时区会影响已经存储的时间类型数据吗 迁移数据时会有导致时间类型数据时区错误的可能吗 … 看完这篇文章你能解决上面所有的疑惑。 启动参数系统变量 如果要在 MySQL 启动时就指定时区则应该使用启动参数default-time-zone示例 ##方法 1在启动命令中添加 mysqld --default-time-zone08:00 ##方法 2在配置文件中添加 [mysqld] default-time-zone08:00启动后我们可以看到控制时区的系统变量其中 time_zone 变量控制时区在 MySQL 运行时可以通过 set命令修改注意不可以写在 my.cnf 中 #查看 mysql show global variables like %time%zone%; -------------------------- | Variable_name | Value | -------------------------- | system_time_zone | CST | | time_zone | 08:00 | -------------------------- 2 rows in set (0.00 sec)#修改全局时区所有新创建的 session 都会被修改 set global time_zone00:00;#修改当前 session 的时区 set session time_zone00:00;启动参数和系统变量的可用值遵循相同的格式 SYSTEM 表明使用系统时间相对于 UTC 时间的偏移比如 08:00 或者 -6:00某个时区的名字比如 ‘Europe/Helsinki’‘‘Asia/Shanghai’’ 或 ‘UTC’前提是已经把时区信息导入到了 mysql 库否则会报错。导入方法mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -S /tmp/mysqld.sock mys system_time_zone 变量只有全局值没有会话值不能动态修改MySQL 启动时将尝试自动确定服务器的时区并使用它来设置 system_time_zone 系统变量 此后该值不变。当 time_zonesystem 时就是使用的这个时区示例中 time_zone 就是 mysql show global variables like %time%zone%; -------------------------- | Variable_name | Value | -------------------------- | system_time_zone | CST | | time_zone | SYSTEM | -------------------------- 2 rows in set (0.00 sec)#可以看到在当前操作系统上 CST 就是 08:00 时区 [rootlocalhost ~]# date -R Mon, 30 Dec 2024 14:44:48 0800 [rootlocalhost ~]# date 2024年 12月 30日 星期一 14:44:56 CST时区影响了什么 概括一下就两点 1. NOW() 和 CURTIME() 系统函数的返回值受当前 session 的时区影响 不仅是 select now()包括 insert .. values(now())、以及字段的 DEFAULT CURRENT_TIMESTAMP 属性也受此影响 mysql set time_zone00:00; Query OK, 0 rows affected (0.00 sec)mysql select now(),CURTIME(); -------------------------------- | now() | CURTIME() | -------------------------------- | 2024-12-30 06:53:42 | 06:53:42 | -------------------------------- 1 row in set (0.00 sec)mysql set time_zone08:00; Query OK, 0 rows affected (0.00 sec)mysql select now(),CURTIME(); -------------------------------- | now() | CURTIME() | -------------------------------- | 2024-12-30 14:53:59 | 14:53:59 | -------------------------------- 1 row in set (0.00 sec)2. timestamp 数据类型字段存储的数据受时区影响 timestamp 数据类型会存储当时 session 的时区信息读取时会根据当前 session 的时区进行转换而datetime 数据类型插入的是什么值再读取就是什么值不受时区影响。也可以理解为已经存储的数据是不会变的只是 timestamp 类型数据在读取时会根据时区转换 mysql set time_zone08:00; Query OK, 0 rows affected (0.00 sec)mysql create table c(ts timestamp, dt datetime); Query OK, 0 rows affected (0.02 sec)mysql insert into c values(2024-12-30 14:59:39,2024-12-30 14:58:39); Query OK, 1 row affected (0.00 sec)mysql select * from c; ------------------------------------------ | ts | dt | ------------------------------------------ | 2024-12-30 14:59:39 | 2024-12-30 14:58:39 | ------------------------------------------ 1 row in set (0.00 sec)mysql set time_zone00:00; Query OK, 0 rows affected (0.00 sec)mysql select * from c; ------------------------------------------ | ts | dt | ------------------------------------------ | 2024-12-30 06:59:39 | 2024-12-30 14:58:39 | ------------------------------------------ 1 row in set (0.00 sec)结论 关于时区所有明面上的东西都在上面了下面来是几个常见的问题。 1. MySQL 的安装规范中应该设置什么时区 对于国内的业务了在 my.cnf 写入 default-time-zone‘08:00’ 其他地区和开发确认取对应时区即可。 为什么不设置为 system 呢使用系统时间看起来也是个不错的选择比较省事。不建议的原因有两点 操作系统的设置可能不归 DBA 管万一别人没有设置正确的系统时区呢只做自己有把握的事更稳妥多了一层系统调用性能有损耗。 2. JAVA 应用读取到的时间和北京时间差了 14 个小时为什么怎么解决 这通常是 JDBC 参数中没有为连接设置时区属性用 serverTimezone 参数指定并且 MySQL 中没有设置全局时区这样 MySQL 默认使用的是系统时区即 CST。这样一来应用与 MySQL 建立的连接的session time_zone 为 CST前面我们提到 CST 在 RedHat 上是 08:00 时区但其实它一共能代表 4 个时区 Central Standard Time (USA) UT-6:00 美国标准时间Central Standard Time (Australia) UT9:30 澳大利亚标准时间China Standard Time UT8:00 中国标准时间Cuba Standard Time UT-4:00 古巴标准时间 JDBC 在解析 CST 时使用了美国标准时间这就会导致时区错误。要解决也简单一是遵守上面刚说到的规范对 MySQL 显示地设置’08:00’时区二是 JDBC 设置正确的 serverTimezone 。 3. 已经运行一段时间的业务修改 MySQL 的时区会影响已经存储的时间类型数据吗 完全不会只会影响对 timestamp 数据类型的读取。这里不得不提一句为啥要用 timestamp用 datetime 不香吗范围更大存储空间其实差别很小赶紧加到开发规范中吧。 4. 迁移数据时会有导致时间类型数据时区错误的可能吗 这个还真有还是针对 timestamp 数据类型比如使用 mysqldump 导出 csv 格式的数据默认这种导出方式会使用 UTC 时区读取 timestamp 类型数据这意味导入时必须手工设置 session.time_zone00:00’才能保证时间准确 # test.t 导出成 csv mysqldump -S /data/mysql/data/3306/mysqld.sock --single-transaction \ --master-data2 -t -T /data/backup/test3 --fields-terminated-by, test t#查看导出数据 cat /data/backup/test3/t.txt 2024-12-30 06:59:39 2024-12-30 14:58:39如何避免mysqldump 也提供了一个参数 --skip-tz-utc意思就是导出数据的那个连接不设置 UTC 时区使用 MySQL 的 global time_zone 系统变量值 其实 mysqldump 导出 sql 文件时默认也是使用 UTC 时区并且会在导出的 sql 文件头部带有 session time_zone 信息这样可以保证导 SQL 文件导入和导出时使用相同的时区从而保证数据的时区正确 而导出的 csv 文件显然不可以携带此信息。需要注意的是 --compact 参数会去掉 sql 文件的所有头信息所以一定要记得--compact 参数得和 --skip-tz-utc 一起使用 以上就是全部内容了如果对大家有帮助请点个赞创作不易谢谢
http://www.hkea.cn/news/14379734/

相关文章:

  • 重庆建设招标网站aspcms网站打不开
  • 网站被黑客入侵怎么办沈阳行业网站建设
  • 网站建设费计入什么科目网站布局框架
  • 网站开发和软件租用服务器网站
  • 企业网站的常见类型有什么网站专题报道页面怎么做的
  • 网站建设策划范文做微信商城设计网站
  • 免费网站建设自带后台管理程序河北省建设网
  • 男女生做内个的网站微商怎么做推广加好友
  • 烟台专业的网站建站公司建设银行租房平台网站6
  • 企业被网站收录微舍 微网站 怎么做
  • 莘县建设局网站上海网站建设优势
  • 济南网站优化seo微软的网站开发软件
  • 白名单网站有哪些深圳网站制作公司咨询
  • 网站顶部素材怎样申请个人网站
  • 深圳网站建设费用大概做跨境电商的人才网站
  • 有手机网站怎样做微信小程序asp.net做网站系统
  • 甘肃张掖网站建设网站接单
  • 中升乙源建设公司网站淘宝上买的网站模板怎么建设网站
  • 网站被墙编程入门先学什么视频
  • 网站的首页面设计wordpress 标签 取消
  • 做网站的开题报告怎么写科技英语
  • wordpress wp shop主题北仑seo排名优化技术
  • 2023设计院裁员惨烈程度aso关键词优化计划
  • 刚做的win7系统连上网站没网网站建设论文答辩题目
  • 网站网站制作服务专业自适应网站建设极速建站
  • 网站标题作弊网站上怎么做企业推广
  • 上海网页建站品牌建设公司网站
  • 网站建设与管理题如今做哪些网站能致富
  • 珠海企业建站网站开发文件上传到服务器
  • 海外设计网站建设珠海市网站建设哪家好