❝开头还是介绍一下群,如果感兴趣PolarDB ,MongoDB ,MySQL ,PostgreSQL ,Redis, OceanBase, Sql Server等有问题,有需求都可以加群群内有各大数据库行业大咖,可以解决你的问题。加群请联系 liuaustin3 ,(共3300人左右 1 + 2 + 3 + 4 +5 + 6 + 7 + 8 +9)(1 2 3 4 5 6 7群均已爆满,开8群近400 9群 200+,开10群PolarDB专业学习群100+)
相关服务:马来西亚站群服务器
上期说数据库出海的文章,在群里有同学讨论这个问题。最近也在一直负责类似的事情,上期是从合规的角度来说这个问题,本期将从数据库本身出海适不适合来去讨论这个问题。
第一个问题出海本身对数据库选择有需求吗? 这个问题的回答是肯定的,yes。出海的数据库产品是需要有选择的。
在这里我把我遇到的实际的问题梳理一下和大家讨论一下,出海的企业的数据库选择和使用中的思考必选项。
1 数据库表中的数据时间的表达的存储的问题。
从业务的角度,企业出海后,业务表中的时间存储是一个关键问题,比如日本,菲律宾,越南,新加坡,马来西亚等这些国家的时区是不同,不同的客户在不同的时间区域产生的数据记录的时间如何进行处理是一个大的业务逻辑问题。
这里牵扯第一个问题,数据库本身支持部支持UTC的时间存储,这是一个国际企业选择数据库的要求之一。
这里首先提到的就是MySQL,众所周知的一个问题,MySQL的存储时间的类型Datetime,他不支持时区的概念,也就是存储的是当时服务器所在时区的时间。这是非常,非常糟糕的。你在中国是OK的,我们可以以北京,上海时间作为时间的存储时间基准。但是如果你出国了,你的服务器在新加坡,他和北京的时间一样都是+8:00,可你的客户在日本和越南的情况下,他们一个时区是+9:00,一个是+7:00,他们使用一张表,MySQL的表记录的时间是+8:00的时区,这就导致展示给日本和越南的客户的时间是+8:00的时间。
业务不出大事才怪,所以出海的企业在数据库选择上第一个关键就是数据库对于时区的支持。有人说MySQL也支持时区的存储,timestamp但他只能存储到2038年所以在市区这个部分的支持性上,MySQL数据库不是一个好的选择。
同时PostgreSQL,ORACLE,MSSQL,MongoDB等数据库对于时区本身都有自己的支持性,也就是都有自己的特有的带有时区属性的字段类型可以支持这类出海企业对于时间存储的要求。这里典型的事MongoDB作为一个设计之初就为全球部署的数据库,他的时间类型 isodate 本身就支持UTC,所以在企业出海的时候,这类数据库在时间上就完全不存在问题。
上图中我们给出了一个业务表的设计,与我们普通的业务表中不同的是多个一个字段,这个字段叫时区字段,这里存储的是数据所在客户端的时区,比如从日本来的我们就在这个字段里面写9,如果是越来来的写7,新加坡的写8,而时间字段本身存储的是UTC的时间,我们这里以PG作为一个例子来说明。
当你向一个 TIMESTAMP WITH TIME ZONE 字段插入数据时,PostgreSQL 会执行以下操作: 解析输入时间:PostgreSQL 会首先解析你提供的时间字符串,并根据你当前会话的时区设置,确定这是一个具体的时刻(Instant)。转换为 UTC:然后,它会把这个时刻转换为 UTC 时间。
存储 UTC 值:最终,它只会在数据库中存储这个 UTC 时间戳。它并不会把时区信息(比如 +08 或 +09)存储在字段里。
举个例子:假设你当前会话的时区是 UTC+8(比如新加坡或北京时间)。
你执行 INSERT INTO my_table (event_time) VALUES ('2025-08-13 10:00:00 +08');PostgreSQL 会将 2025-08-13 10:00:00 这个时间点,转换为 UTC 时间,也就是 2025-08-13 02:00:00。数据库中实际存储的就是 2025-08-13 02:00:00 这个 UTC 值。
数据读取 当你从 TIMESTAMP WITH TIME ZONE 字段中查询数据时,PostgreSQL 会执行相反的操作:读取 UTC 值:它从数据库中读取存储的 UTC 时间。
转换为会话时区:然后,它会根据你当前查询会话的时区设置,将这个 UTC 时间转换为相应的本地时间。返回转换后的时间:最后,它返回转换后的时间。
继续上面的例子:
假设你是一个在中国(UTC+8)的 DBA,执行 SELECT event_time FROM my_table;PostgreSQL 读取存储的 UTC 值 2025-08-13 02:00:00。
它发现你的会话时区是 UTC+8,于是将 UTC 时间加上8小时,返回 2025-08-13 10:00:00。假设你是一个在日本(UTC+9)的 DBA,执行 SELECT event_time FROM my_table;PostgreSQL 同样读取 UTC 值 2025-08-13 02:00:00。它发现你的会话时区是 UTC+9,于是将 UTC 时间加上9小时,返回 2025-08-13 11:00:00。
那么这样设计有什么好处
1 数据的一致性:你的服务器在哪里不重要,重要的是在哪里你的日期数据都是统一的。
2 方便查询和排序:因为时间是统一的UTC的时间,这给一些数据的统计和计算给予了方便性
3 展示的灵活性:如果是中国老板的企业开到了日本,那么他最终想获得的一些报表的数据可能是想用中国时间展示,那么UTC+上老板所在的时区就可以灵活展示数据。
我这一看字数,2500多字了,本来还想写一写审计与访问控制,多区域部署,以及数据库的部署方式的选择等,算了吧,等下期有时间咱们继续聊。
在企业出海时选择数据库尽量选择全球性的数据库产品,选可以在全球部署的,如AWS的产品,阿里云的产品,以及国内可以通用的产品。
另这里不得不提一句,OceanBase 兼容MySQL的版本已经解决了 2038年的限制,很符合全球数据库在时间上的条件。如果选择了OceanBase这样的产品,可以直接使用timestamp来在MySQL上使用UTC时间,这样就避免了后续很多由于时区变动产生的问题。
全球数据库的定义
全球数据库是一类能够 跨区域部署 的数据库架构,目标是:
跨区域一致性:保证全球用户的数据写入、查询在不同地区保持一致或可控一致性。
合规性:满足不同国家/地区(中国、欧洲、美国)的数据安全和隐私法规。
高可用性:跨区域容灾与多活,避免单一数据中心宕机带来的全球性风险。
中欧美政策与合规差异
地区 | 法律/政策 | 要求 | 对数据库的影响 |
|---|---|---|---|
| 中国 | 《数据安全法》《个人信息保护法》 | 重要数据和个人信息必须境内存储,跨境传输需审批 | 必须有 中国境内部署,敏感数据不得直接跨境 |
| 欧洲 | GDPR | 数据必须存储在欧盟境内,跨境传输需 SCCs 或等效保护 | 欧洲本地集群 必须独立,传输需加密/脱敏 |
| 美国 | HIPAA/CCPA 等行业法 | 无全国统一隐私法,要求相对宽松 | 更关注性能、低延迟和高可用,多采用云厂商全球数据库 |
全球数据库典型产品对比
数据库 | 技术特点 | 全球化能力 | 合规适应性 | 适用场景 |
|---|---|---|---|---|
| Google Spanner | 原生分布式,全局一致事务(TrueTime) | 全球多活 | 合规需额外分区隔离 | 全球 SaaS、金融级一致性 |
| AWS Aurora Global | 主写 + 多区域只读副本,秒级同步 | 全球复制,低延迟 | 需客户侧数据分区治理 | 跨境读多写少业务 |
| Azure Cosmos DB | 多模型,多区域多活,5 种一致性级别 | 灵活一致性选项 | 合规需额外隔离策略 | IoT、全球分布式应用 |
| PolarDB(阿里云) | 云原生分布式,兼容 MySQL/PostgreSQL/Oracle | 支持多地域部署,但以阿里云为主 | 中国市场合规最佳,跨境需脱敏 | 中国企业出海,云原生场景 |
| OceanBase | 金融级分布式数据库,Paxos 强一致,HTAP 能力 | 可在多国际云(AWS、Azure、GCP、阿里云等)上部署 ,支持多租户+分区 | 中国境内合规最佳,欧洲可本地化,跨境可脱敏复制 | 全球金融、电信、电商,合规+高一致 |
置顶
微软动手了,联合OpenAI + Azure 云争夺AI服务市场
“当复杂的SQL不再需要特别的优化”,邪修研究PolarDB for PG 列式索引加速复杂SQL运行
“合体吧兄弟们!”——从浪浪山小妖怪看OceanBase国产芯片优化《OceanBase “重如尘埃”之歌》
未知黑客通过SQL SERVER 窃取企业SAP核心数据,影响企业运营
那个MySQL大事务比你稳定,主从延迟低,为什么? Look my eyes! 因为宋利兵宋老师
非“厂商广告”的PolarDB课程:用户共创的新式学习范本--7位同学获奖PolarDB学习之星
说我PG Freezing Boom 讲的一般的那个同学,专帖给你,看看这次可满意
这个 PostgreSQL 让我有资本找老板要 鸡腿 鸭腿 !!
OceanBase Hybrid search 能力测试,平换MySQL的好选择
HyBrid Search 实现价值落地,从真实企业的需求角度分析 !不只谈技术!
OceanBase 光速快递 OB Cloud “MySQL” 给我,Thanks a lot
从“小偷”开始,不会从“强盗”结束 -- IvorySQL 2025 PostgreSQL 生态大会
被骂后的文字--技术人不脱离思维困局,终局是个 “死” ? ! ......
个群2025上半年总结,OB、PolarDB, DBdoctor、爱可生、pigsty、osyun、工作岗位等
从MySQL不行了,到乙方DBA 给狗,狗都不干? 我干呀!
SQL SERVER 2025发布了, China幸亏有信创!
MongoDB 麻烦专业点,不懂可以问,别这么用行吗 ! --TTL
PostgreSQL 新版本就一定好--由培训现象让我做的实验
删除数据“八扇屏” 之 锦门英豪 --我去-BigData!
写了3750万字的我,在2000字的OB白皮书上了一课--记 《OceanBase 社区版在泛互场景的应用案例研究》
疯狂老DBA 和 年轻“网红” 程序员 --火星撞地球-- 谁也不是怂货
和架构师沟通那种“一坨”的系统,推荐只能是OceanBase,Why ?
OceanBase 相关文章
写了3750万字的我,在2000字的OB白皮书上了一课--记 《OceanBase 社区版在泛互场景的应用案例研究》
OceanBase 6大学习法--OBCA视频学习总结第六章
OceanBase 6大学习法--OBCA视频学习总结第五章--索引与表设计
OceanBase 6大学习法--OBCA视频学习总结第五章--开发与库表设计
OceanBase 6大学习法--OBCA视频学习总结第四章 --数据库安装
OceanBase 6大学习法--OBCA视频学习总结第三章--数据库引擎
OceanBase 架构学习--OB上手视频学习总结第二章 (OBCA)
OceanBase 6大学习法--OB上手视频学习总结第一章
没有谁是垮掉的一代--记 第四届 OceanBase 数据库大赛
跟我学OceanBase4.0 --阅读白皮书 (OB分布式优化哪里了提高了速度)
跟我学OceanBase4.0 --阅读白皮书 (4.0优化的核心点是什么)
跟我学OceanBase4.0 --阅读白皮书 (0.5-4.0的架构与之前架构特点)
跟我学OceanBase4.0 --阅读白皮书 (旧的概念害死人呀,更新知识和理念)
OceanBase 学习记录-- 建立MySQL租户,像用MySQL一样使用OB
MongoDB 相关文章
MongoDB “升级项目” 大型连续剧(4)-- 与开发和架构沟通与扫尾
MongoDB “升级项目” 大型连续剧(3)-- 自动校对代码与注意事项
MongoDB “升级项目” 大型连续剧(2)-- 到底谁是"der"
MongoDB “升级项目” 大型连续剧(1)-- 可“生”可不升
MongoDB 大俗大雅,上来问分片真三俗 -- 4 分什么分
MongoDB 大俗大雅,高端知识讲“庸俗” --3 奇葩数据更新方法
MongoDB 大俗大雅,高端的知识讲“通俗” -- 2 嵌套和引用
MongoDB 大俗大雅,高端的知识讲“低俗” -- 1 什么叫多模
MongoDB 合作考试报销活动 贴附属,MongoDB基础知识速通
MongoDB 使用网上妙招,直接DOWN机---清理表碎片导致的灾祸 (送书活动结束)
MongoDB 2023年度纽约 MongoDB 年度大会话题 -- MongoDB 数据模式与建模
MongoDB 双机热备那篇文章是 “毒”
MongoDB 会丢数据吗?在次补刀MongoDB 双机热备
MONGODB ---- Austindatabases 历年文章合集
PolarDB 已经开放的课程
PolarDB 非官方课程第八节--数据库弹性弹出一片未来--结课
PolarDB 非官方课程第七节--数据备份还原瞬间完成是怎么做到的--答题领奖品
PolarDB 非官方课程第六节--数据库归档还能这么玩--答题领奖品
PolarDB 非官方课程第五节--PolarDB代理很重要吗?--答题领奖品
PolarDB 非官方课程第四节--PG实时物化视图与行列数据整合处理--答题领奖品
PolarDB 非官方课程第三节--MySQL+IMCI=性能怪兽--答题领奖品
PolarDB 非官方课程第二节--云原生架构与特有功能---答题领奖品
PolarDB 非官方课程第一节-- 用户角度怎么看PolarDB --答题领奖品
免费PolarDB云原生课程,听课“争”礼品,重塑云上知识,提高专业能力
PolarDB 相关文章
数据压缩60%让“PostgreSQL” SQL运行更快,这不科学呀?
这个 PostgreSQL 让我有资本找老板要 鸡腿 鸭腿 !!
用MySQL 分区表脑子有水!从实例,业务,开发角度分析 PolarDB 使用不会像MySQL那么Low
MySQL 和 PostgreSQL 可以一起快速发展,提供更多的功能?
“PostgreSQL” 高性能主从强一致读写分离,我行,你没戏!
POLARDB 添加字段 “卡” 住---这锅Polar不背
PolarDB 版本差异分析--外人不知道的秘密(谁是绵羊,谁是怪兽)
PolarDB 答题拿-- 飞刀总的书、同款卫衣、T恤,来自杭州的Package(活动结束了)
PolarDB for MySQL 三大核心之一POLARFS 今天扒开它--- 嘛是火
PostgreSQL 相关文章
说我PG Freezing Boom 讲的一般的那个同学专帖给你看这次可满意
PostgreSQL Hybrid能力岂非“小趴菜”数据库可比 ?
PostgreSQL 新版本就一定好--由培训现象让我做的实验
PostgreSQL 无服务 Neon and Aurora 新技术下的新经济模式 (翻译)
“PostgreSQL” 高性能主从强一致读写分离,我行,你没戏!
PostgreSQL 添加索引导致崩溃,参数调整需谨慎--文档未必完全覆盖场景
PostgreSQL SQL优化用兵法,优化后提高 140倍速度
PostgreSQL 运维的难与“难” --上海PG大会主题记录
PostgreSQL 什么都能存,什么都能塞 --- 你能成熟一点吗?
全世界都在“搞” PostgreSQL ,从Oracle 得到一个“馊主意”开始
PostgreSQL 加索引系统OOM 怨我了--- 不怨你怨谁
PostgreSQL “我怎么就连个数据库都不会建?” --- 你还真不会!
病毒攻击PostgreSQL暴力破解系统,防范加固系统方案(内附分析日志脚本)
PostgreSQL 远程管理越来越简单,6个自动化脚本开胃菜
PostgreSQL 稳定性平台 PG中文社区大会--杭州来去匆匆
PostgreSQL 分组查询可以不进行全表扫描吗?速度提高上千倍?
POSTGRESQL --Austindatabaes 历年文章整理
PostgreSQL 查询语句开发写不好是必然,不是PG的锅
PostgreSQL 字符集乌龙导致数据查询排序的问题,与 MySQL 稳定 "PG不稳定"
PostgreSQL Patroni 3.0 新功能规划 2023年 纽约PG 大会 (音译)
PostgreSQL 玩PG我们是认真的,vacuum 稳定性平台我们有了
PostgreSQL DBA硬扛 垃圾 “开发”,“架构师”,滥用PG 你们滚出 !(附送定期清理连接脚本)
MySQL相关文章
MySQL 的SQL引擎很差吗?由一个同学提出问题引出的实验
用MySql不是MySQL, 不用MySQL都是MySQL 横批 哼哼哈哈啊啊
MYSQL --Austindatabases 历年文章合集
临时工访谈系列
没有谁是垮掉的一代--记 第四届 OceanBase 数据库大赛
SQL SERVER 系列
SQL SERVER 如何实现UNDO REDO 和PostgreSQL 有近亲关系吗






