mysqldump 根据时间字段导出数据的问题
2016-11-23 21:59
441 查看
mysqldump 有很多有用的参数,根据条件导出数据的选项 -w --where 用的情况并不多。如果不注意还是容易掉进坑里的
mysql server默认的时区跟OS服务器保证一致:
mysql> show variables like '%zone%';
+------------------+--------+
| Variable_name | Value |
+------------------+--------+
| system_time_zone | CST |
| time_zone | SYSTEM |
date -R
Wed, 23 Nov 2016 21:31:32 +0800
比如在中国大陆都统一使用的东八区.不需要在意时区问题,但是如果需要根据时间导数据的话就要注意了:
--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.
(Defaults to on; use --skip-tz-utc to disable.)
不在意这个参数的话,mysqldump -w "raw_add_time>='XXXX-XX-XX '" 直接导出来的数据就不准。根据mysql 客户端能查到的数据mysqldump 时可能就dump不到,因为时区少了8个小时!!!
靠谱的做法是mysqldump 时加上--skip-tz-utc 禁用该时区选项:mysqldump -w "raw_add_time>='XXXX-XX-XX '" --skip-tz-utc 这样 mysql 能查到的记录mysqldump也能导出来。
Ps:如果涉及到跨时区数据迁移的话就要当心了
mysql server默认的时区跟OS服务器保证一致:
mysql> show variables like '%zone%';
+------------------+--------+
| Variable_name | Value |
+------------------+--------+
| system_time_zone | CST |
| time_zone | SYSTEM |
date -R
Wed, 23 Nov 2016 21:31:32 +0800
比如在中国大陆都统一使用的东八区.不需要在意时区问题,但是如果需要根据时间导数据的话就要注意了:
--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.
(Defaults to on; use --skip-tz-utc to disable.)
不在意这个参数的话,mysqldump -w "raw_add_time>='XXXX-XX-XX '" 直接导出来的数据就不准。根据mysql 客户端能查到的数据mysqldump 时可能就dump不到,因为时区少了8个小时!!!
靠谱的做法是mysqldump 时加上--skip-tz-utc 禁用该时区选项:mysqldump -w "raw_add_time>='XXXX-XX-XX '" --skip-tz-utc 这样 mysql 能查到的记录mysqldump也能导出来。
Ps:如果涉及到跨时区数据迁移的话就要当心了
相关文章推荐
- mysql创建存储过程(根据时间字段来更新数据)
- 根据表中的时间戳字段统计每天数据的数量
- 使用mysqldump导出数据后导入错误的问题
- 插入数据时,保存的date类型时间字段的数据只有年月日,没有时分秒的问题
- PLSQL数据导入导出问题解决(空表、大字段表、表空间错误等)
- mysqldump导出的数据导入时特别慢的问题解决
- mysql导入导出数据中文乱码解决方法小结(1、navicat导入问题已解决,创建连接后修改连接属性,选择高级->将使用Mysql字符集复选框去掉,下拉框选择GBK->导入sql文件OK;2、phpmyadmin显示乱码的问题也解决,两步:1.将sql文件以utf8的字符集编码另存,2.将文件中sql语句中的字段字符集编码改成utf8,导入OK)
- oracle导出含有Clob大数据字段类型的问题
- mysqldump导出CSV格式及where导出时间范围问题解决
- mysql包含二进制字段的数据导出导入及可能遇到的问题
- 从数据库导出数据时,有的字段是时间,不同的时间向在窗口中去掉时用正则表达式匹配找到不同的时间
- Magento ver. 1.5.1.0—根据系统当天时间,Order导出最近俩天的ERP需求数据SQL语句
- PLSQL数据导入导出问题解决(空表、大字段表、表空间错误等)
- Mysql使用mysqldump按时间导出时,结果数据与预期不同
- mysqldump导出数据不带时区信息的问题
- 使用mysqldump导出数据时对字段中包含的单引号的处理
- 庭审管理中动态显示今天起7日内的数据,动态查询,并根据已有数据判断新增和修改时的时间冲突问题(2)
- bootstrap-datepicker限定可选时间范围 一、应用场景 实际应用中可能会根据日期字段查询某个日期范围内的数据,则需要对日期选择器可选时间进行限制, 如:开始时间不能大于结束时间,
- 【EXP】根据字段导出数据query
- 根据时间字段,查询某一时间以前的数据