[MySQL FAQ]系列 -- 如何跨时区迁移数据
浏览:955次 出处信息
问: 如果数据表中有时间字段,现在要迁移到其他时区的服务器上,该如何处理呢?
答:在高版本的mysqldump中,新增了一个选项:--tz-utc,默认是启用的,来看看它的说明
SET TIME_ZONE='+00:00' at top of dump to allow dumping of TIMESTAMP data when a server has data in different time zones or data is being moved between servers with different time zones.
看明白了吧。
简言之,就是导出时增加一个说明,把当地时间都转换成0时区的时间,然后再导入,就能确保跨时区迁移数据了,来看下例子:
mysql> select * from t1; +----+---------------------+ | id | cur_time | +----+---------------------+ | 1 | 2010-03-14 08:58:18 | +----+---------------------+
现在导出数据:
mysqldump --tz-utc=1 -t test t1 > t1.sql #查看内容 cat t1.sql /*!40103 SET TIME_ZONE='+00:00' */; .... INSERT INTO `t1` VALUES (1,'2010-03-14 00:58:18');
可以看到,增加了设定时区的标志。
mysqldump --tz-utc=0 -t test t1 > t1_1.sql #查看内容 cat t1_1.sql INSERT INTO `t1` VALUES (1,'2010-03-14 08:58:18');
还有更多mysqldump的选项需要去挖掘 :)
QQ技术交流群:445447336,欢迎加入!
扫一扫订阅我的微信号:IT技术博客大学习
扫一扫订阅我的微信号:IT技术博客大学习
<< 前一篇:使用percona的mysql补丁统计Mysql使用情况
后一篇:MySQL不同分支版本的压力测试 >>
文章信息
- 作者:yejr 来源: MySQL 中文网 -
- 标签: 跨时区
- 发布时间:2010-03-15 13:47:45
近3天十大热文
- [56] IOS安全–浅谈关于IOS加固的几种方法
- [55] 图书馆的世界纪录
- [55] 如何拿下简短的域名
- [55] android 开发入门
- [53] Oracle MTS模式下 进程地址与会话信
- [53] Go Reflect 性能
- [50] 【社会化设计】自我(self)部分――欢迎区
- [49] 读书笔记-壹百度:百度十年千倍的29条法则
- [41] 程序员技术练级攻略
- [35] 视觉调整-设计师 vs. 逻辑