<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>OceanBase on 吾爱主机</title><link>https://blog.waihost.com/tags/oceanbase/</link><description>Recent content in OceanBase on 吾爱主机</description><generator>Hugo -- gohugo.io</generator><language>zh-cn</language><lastBuildDate>Fri, 17 Jul 2026 01:00:00 +0800</lastBuildDate><atom:link href="https://blog.waihost.com/tags/oceanbase/index.xml" rel="self" type="application/rss+xml"/><item><title>OceanBase 从零开始：核心概念、上手路径，以及和 MySQL 的关键差异</title><link>https://blog.waihost.com/posts/oceanbase-beginner-mysql-comparison/</link><pubDate>Fri, 17 Jul 2026 01:00:00 +0800</pubDate><guid>https://blog.waihost.com/posts/oceanbase-beginner-mysql-comparison/</guid><description>&lt;img src="https://blog.waihost.com/images/covers/oceanbase-beginner-mysql-comparison.svg" alt="Featured image of post OceanBase 从零开始：核心概念、上手路径，以及和 MySQL 的关键差异" /&gt;&lt;p&gt;如果你已经会 MySQL，第一次接触 OceanBase 时，最容易卡住的不是“SQL 怎么写”，而是：&lt;/p&gt;

 &lt;blockquote&gt;
 &lt;p&gt;&lt;strong&gt;它看起来很像 MySQL，为什么连接方式、资源模型、高可用和运维概念完全不是一回事？&lt;/strong&gt;&lt;/p&gt;

 &lt;/blockquote&gt;
&lt;p&gt;本文面向零基础到 MySQL 初中级同学，用一条从概念到上手的路径讲清楚：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;OceanBase 是什么&lt;/li&gt;
&lt;li&gt;和 MySQL 在架构、租户、连接、兼容性上的核心差异&lt;/li&gt;
&lt;li&gt;从连接、建库建表到基础 SQL 的最小实践&lt;/li&gt;
&lt;li&gt;什么场景该把 OceanBase 当“更强的 MySQL”，什么场景不能这么想&lt;/li&gt;
&lt;/ol&gt;

 &lt;blockquote&gt;
 &lt;p&gt;说明：本文以 &lt;strong&gt;OceanBase 社区版（MySQL 模式）&lt;/strong&gt; 为主。官方文档明确：&lt;strong&gt;社区版仅提供 MySQL 模式&lt;/strong&gt;；企业版还支持 Oracle 模式。&lt;/p&gt;

 &lt;/blockquote&gt;
&lt;h2 id="一先建立正确心智模型"&gt;&lt;a href="#%e4%b8%80%e5%85%88%e5%bb%ba%e7%ab%8b%e6%ad%a3%e7%a1%ae%e5%bf%83%e6%99%ba%e6%a8%a1%e5%9e%8b" class="header-anchor"&gt;&lt;/a&gt;一、先建立正确心智模型
&lt;/h2&gt;&lt;h3 id="1-mysql-的常见心智模型"&gt;&lt;a href="#1-mysql-%e7%9a%84%e5%b8%b8%e8%a7%81%e5%bf%83%e6%99%ba%e6%a8%a1%e5%9e%8b" class="header-anchor"&gt;&lt;/a&gt;1. MySQL 的常见心智模型
&lt;/h3&gt;&lt;p&gt;很多人对 MySQL 的默认理解是：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-text" data-lang="text"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;一台机器 / 一个 mysqld 实例
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; └── 多个 database
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; └── 多个 table
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;连接通常很直接：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;mysql -h127.0.0.1 -P3306 -uroot -p
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;你连上的，基本就是“这个实例本身”。&lt;/p&gt;
&lt;h3 id="2-oceanbase-的心智模型"&gt;&lt;a href="#2-oceanbase-%e7%9a%84%e5%bf%83%e6%99%ba%e6%a8%a1%e5%9e%8b" class="header-anchor"&gt;&lt;/a&gt;2. OceanBase 的心智模型
&lt;/h3&gt;&lt;p&gt;OceanBase 更接近：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-text" data-lang="text"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;一个集群（Cluster）
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; └── 多个节点（OBServer）
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; └── 多个可用区（Zone）
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; └── 多个租户（Tenant） ← 应用视角下更像“数据库实例”
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; └── 多个 database
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; └── 多个 table / 分区
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;关键变化只有一句话：&lt;/p&gt;

 &lt;blockquote&gt;
 &lt;p&gt;&lt;strong&gt;在 OceanBase 里，应用通常不是“连一台 MySQL 机器”，而是“连某个租户”。&lt;/strong&gt;&lt;/p&gt;

 &lt;/blockquote&gt;
&lt;p&gt;官方文档把租户定义为：集群内互相隔离的数据库“实例”。对应用来说，一个租户近似一个独立数据库实例；租户之间数据、权限、资源隔离。&lt;/p&gt;
&lt;h2 id="二oceanbase-是什么"&gt;&lt;a href="#%e4%ba%8coceanbase-%e6%98%af%e4%bb%80%e4%b9%88" class="header-anchor"&gt;&lt;/a&gt;二、OceanBase 是什么
&lt;/h2&gt;&lt;p&gt;OceanBase 是蚂蚁集团开源的&lt;strong&gt;分布式关系型数据库&lt;/strong&gt;，基于 Paxos 类共识协议与分布式架构，提供高可用和水平扩展能力，可运行在普通服务器集群上。&lt;/p&gt;
&lt;p&gt;官方强调的关键能力包括：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;水平扩展&lt;/li&gt;
&lt;li&gt;高可用（RPO=0、RTO 秒级恢复目标）&lt;/li&gt;
&lt;li&gt;MySQL 兼容，便于迁移&lt;/li&gt;
&lt;li&gt;HTAP（同一套系统同时服务事务与分析负载）&lt;/li&gt;
&lt;li&gt;多租户资源隔离&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;你可以把“上手阶段”理解成两层：&lt;/p&gt;
&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;层&lt;/th&gt;
					&lt;th&gt;你感受到的&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;SQL 层&lt;/td&gt;
					&lt;td&gt;很像 MySQL：&lt;code&gt;CREATE DATABASE&lt;/code&gt; / &lt;code&gt;CREATE TABLE&lt;/code&gt; / &lt;code&gt;SELECT&lt;/code&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;系统层&lt;/td&gt;
					&lt;td&gt;更像分布式数据库：集群、Zone、租户、Unit、副本、OBProxy&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="三和-mysql-的核心差异总览"&gt;&lt;a href="#%e4%b8%89%e5%92%8c-mysql-%e7%9a%84%e6%a0%b8%e5%bf%83%e5%b7%ae%e5%bc%82%e6%80%bb%e8%a7%88" class="header-anchor"&gt;&lt;/a&gt;三、和 MySQL 的核心差异总览
&lt;/h2&gt;&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;维度&lt;/th&gt;
					&lt;th&gt;MySQL（常见单机/主从）&lt;/th&gt;
					&lt;th&gt;OceanBase&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;基本部署单元&lt;/td&gt;
					&lt;td&gt;实例（mysqld）&lt;/td&gt;
					&lt;td&gt;集群 + 租户&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;应用连接对象&lt;/td&gt;
					&lt;td&gt;实例&lt;/td&gt;
					&lt;td&gt;租户（经直连或 OBProxy）&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;默认端口（常见）&lt;/td&gt;
					&lt;td&gt;&lt;code&gt;3306&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;直连 &lt;code&gt;2881&lt;/code&gt;，经 ODP/OBProxy 常见 &lt;code&gt;2883&lt;/code&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;用户写法&lt;/td&gt;
					&lt;td&gt;&lt;code&gt;root&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;&lt;code&gt;root@tenant&lt;/code&gt; 或 &lt;code&gt;user@tenant#cluster&lt;/code&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;扩展方式&lt;/td&gt;
					&lt;td&gt;垂直扩容 / 读写分离 / 分库分表&lt;/td&gt;
					&lt;td&gt;原生分区、多节点、副本扩展&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;高可用机制&lt;/td&gt;
					&lt;td&gt;主从复制、MGR 等&lt;/td&gt;
					&lt;td&gt;基于 Multi-Paxos 的多副本日志流&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;多业务隔离&lt;/td&gt;
					&lt;td&gt;多实例 / 多库 + 权限&lt;/td&gt;
					&lt;td&gt;原生多租户 + 资源池&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;存储引擎模型&lt;/td&gt;
					&lt;td&gt;InnoDB 等可插拔引擎&lt;/td&gt;
					&lt;td&gt;自研分布式存储与事务体系&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;SQL 兼容&lt;/td&gt;
					&lt;td&gt;原生 MySQL&lt;/td&gt;
					&lt;td&gt;MySQL 模式兼容 5.7/8.0 大部分能力，但非 100%&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;社区版模式&lt;/td&gt;
					&lt;td&gt;MySQL&lt;/td&gt;
					&lt;td&gt;仅 MySQL 模式&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;一句话：&lt;/p&gt;

 &lt;blockquote&gt;
 &lt;p&gt;&lt;strong&gt;MySQL 更像“一台关系库”；OceanBase 更像“一个可多租户的分布式数据库平台”。&lt;/strong&gt;&lt;/p&gt;

 &lt;/blockquote&gt;
&lt;h2 id="四架构差异为什么它不像单机-mysql"&gt;&lt;a href="#%e5%9b%9b%e6%9e%b6%e6%9e%84%e5%b7%ae%e5%bc%82%e4%b8%ba%e4%bb%80%e4%b9%88%e5%ae%83%e4%b8%8d%e5%83%8f%e5%8d%95%e6%9c%ba-mysql" class="header-anchor"&gt;&lt;/a&gt;四、架构差异：为什么它不像单机 MySQL
&lt;/h2&gt;&lt;h3 id="1-shared-nothing-集群"&gt;&lt;a href="#1-shared-nothing-%e9%9b%86%e7%be%a4" class="header-anchor"&gt;&lt;/a&gt;1. Shared-Nothing 集群
&lt;/h3&gt;&lt;p&gt;官方系统架构文档指出，OceanBase 常用无共享（Shared-Nothing）模式：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;节点对等&lt;/li&gt;
&lt;li&gt;每个节点都有自己的 SQL / 存储 / 事务能力&lt;/li&gt;
&lt;li&gt;表可水平拆分为多个分区（Partition）&lt;/li&gt;
&lt;li&gt;分区数据落在 Tablet，修改通过日志流（Log Stream）持久化&lt;/li&gt;
&lt;li&gt;主从副本通过 Multi-Paxos 保持一致性&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;这意味着：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;数据天然可分布到多节点&lt;/li&gt;
&lt;li&gt;故障切换依赖副本选举，而不是简单“切到另一台 mysqld”&lt;/li&gt;
&lt;li&gt;建表时的分区设计，会直接影响数据分布与扩展性&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id="2-多租户最容易被-mysql-同学忽略的概念"&gt;&lt;a href="#2-%e5%a4%9a%e7%a7%9f%e6%88%b7%e6%9c%80%e5%ae%b9%e6%98%93%e8%a2%ab-mysql-%e5%90%8c%e5%ad%a6%e5%bf%bd%e7%95%a5%e7%9a%84%e6%a6%82%e5%bf%b5" class="header-anchor"&gt;&lt;/a&gt;2. 多租户：最容易被 MySQL 同学忽略的概念
&lt;/h3&gt;&lt;p&gt;在 OceanBase 中：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;集群初始化后会有系统租户 &lt;strong&gt;&lt;code&gt;sys&lt;/code&gt;&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;sys&lt;/code&gt; 保存集群元数据，本身也是 MySQL 兼容模式租户&lt;/li&gt;
&lt;li&gt;业务一般应在&lt;strong&gt;普通租户&lt;/strong&gt;里建库建表，而不是把所有业务都堆在 &lt;code&gt;sys&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;创建业务租户的典型顺序是：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-text" data-lang="text"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;Unit Config（资源规格）
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; → Resource Pool（资源池）
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; → Tenant（租户）
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;这和 MySQL 里“直接 &lt;code&gt;CREATE DATABASE&lt;/code&gt;”完全不同。&lt;br&gt;
MySQL 的 database 更像命名空间；OceanBase 的 tenant 更像独立实例边界。&lt;/p&gt;
&lt;h3 id="3-obproxy--odp应用如何像访问单机库一样访问分布式库"&gt;&lt;a href="#3-obproxy--odp%e5%ba%94%e7%94%a8%e5%a6%82%e4%bd%95%e5%83%8f%e8%ae%bf%e9%97%ae%e5%8d%95%e6%9c%ba%e5%ba%93%e4%b8%80%e6%a0%b7%e8%ae%bf%e9%97%ae%e5%88%86%e5%b8%83%e5%bc%8f%e5%ba%93" class="header-anchor"&gt;&lt;/a&gt;3. OBProxy / ODP：应用如何“像访问单机库一样”访问分布式库
&lt;/h3&gt;&lt;p&gt;为了让应用尽量少感知分区和副本分布，OceanBase 提供 &lt;strong&gt;ODP（OceanBase Database Proxy，又称 OBProxy）&lt;/strong&gt;：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;应用通常连代理&lt;/li&gt;
&lt;li&gt;代理把 SQL 路由到合适节点&lt;/li&gt;
&lt;li&gt;对应用更接近“连一个入口地址”&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;这对应 MySQL 生态里的 proxy / 中间件角色，但在 OceanBase 里它更常作为标准访问路径出现。&lt;/p&gt;
&lt;h2 id="五连接差异最容易踩坑的地方"&gt;&lt;a href="#%e4%ba%94%e8%bf%9e%e6%8e%a5%e5%b7%ae%e5%bc%82%e6%9c%80%e5%ae%b9%e6%98%93%e8%b8%a9%e5%9d%91%e7%9a%84%e5%9c%b0%e6%96%b9" class="header-anchor"&gt;&lt;/a&gt;五、连接差异：最容易踩坑的地方
&lt;/h2&gt;&lt;h3 id="1-docker-体验环境最简单"&gt;&lt;a href="#1-docker-%e4%bd%93%e9%aa%8c%e7%8e%af%e5%a2%83%e6%9c%80%e7%ae%80%e5%8d%95" class="header-anchor"&gt;&lt;/a&gt;1. Docker 体验环境（最简单）
&lt;/h3&gt;&lt;p&gt;快速体验可用官方镜像：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;docker run -p 2881:2881 --name oceanbase-ce -e &lt;span class="nv"&gt;MODE&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;mini -d oceanbase/oceanbase-ce
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;docker logs oceanbase-ce &lt;span class="p"&gt;|&lt;/span&gt; tail -1 &lt;span class="c1"&gt;# 期望 boot success!&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;连接示例：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# 系统租户 root&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;docker &lt;span class="nb"&gt;exec&lt;/span&gt; -it oceanbase-ce obclient -h127.0.0.1 -P2881 -uroot
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# 或宿主机 mysql 客户端&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;mysql -h127.0.0.1 -P2881 -uroot
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;mysql -h127.0.0.1 -P2881 -uroot@test
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="2-正式连接写法用户名里有租户"&gt;&lt;a href="#2-%e6%ad%a3%e5%bc%8f%e8%bf%9e%e6%8e%a5%e5%86%99%e6%b3%95%e7%94%a8%e6%88%b7%e5%90%8d%e9%87%8c%e6%9c%89%e7%a7%9f%e6%88%b7" class="header-anchor"&gt;&lt;/a&gt;2. 正式连接写法：用户名里有租户
&lt;/h3&gt;&lt;p&gt;官方文档给出两类常见连接：&lt;/p&gt;
&lt;h4 id="直连-observer默认端口常为-2881"&gt;&lt;a href="#%e7%9b%b4%e8%bf%9e-observer%e9%bb%98%e8%ae%a4%e7%ab%af%e5%8f%a3%e5%b8%b8%e4%b8%ba-2881" class="header-anchor"&gt;&lt;/a&gt;直连 OBServer（默认端口常为 2881）
&lt;/h4&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;mysql -h&amp;lt;observer_ip&amp;gt; -P2881 -u用户名@租户名 -p
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;注意：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;直连时 &lt;code&gt;-u&lt;/code&gt; 应是 &lt;code&gt;用户名@租户名&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;不要在直连用户名里带集群名&lt;/strong&gt;，否则可能报错&lt;/li&gt;
&lt;li&gt;普通租户直连时，目标节点上需要有该租户资源&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="通过-odpobproxy默认端口常为-2883"&gt;&lt;a href="#%e9%80%9a%e8%bf%87-odpobproxy%e9%bb%98%e8%ae%a4%e7%ab%af%e5%8f%a3%e5%b8%b8%e4%b8%ba-2883" class="header-anchor"&gt;&lt;/a&gt;通过 ODP/OBProxy（默认端口常为 2883）
&lt;/h4&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;mysql -h&amp;lt;odp_ip&amp;gt; -P2883 -u用户名@租户名#集群名 -p
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;用户名还可能写成：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;集群名:租户名:用户名&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;集群名-租户名-用户名&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;集群名.租户名.用户名&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;这和 MySQL 的 &lt;code&gt;root@'%'&lt;/code&gt; 完全不是同一套语义。&lt;/p&gt;
&lt;h3 id="3-客户端选择"&gt;&lt;a href="#3-%e5%ae%a2%e6%88%b7%e7%ab%af%e9%80%89%e6%8b%a9" class="header-anchor"&gt;&lt;/a&gt;3. 客户端选择
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;可用 &lt;code&gt;obclient&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;也可用 MySQL 客户端连接 MySQL 模式租户&lt;br&gt;
官方文档提到当前支持的 MySQL 客户端版本包括 5.5 / 5.6 / 5.7（以你使用版本的文档为准）&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="六从零上手mysql-同学-10-分钟路径"&gt;&lt;a href="#%e5%85%ad%e4%bb%8e%e9%9b%b6%e4%b8%8a%e6%89%8bmysql-%e5%90%8c%e5%ad%a6-10-%e5%88%86%e9%92%9f%e8%b7%af%e5%be%84" class="header-anchor"&gt;&lt;/a&gt;六、从零上手：MySQL 同学 10 分钟路径
&lt;/h2&gt;&lt;p&gt;下面假设你已经能连上一个 MySQL 模式租户。&lt;/p&gt;
&lt;h3 id="1-看有哪些库"&gt;&lt;a href="#1-%e7%9c%8b%e6%9c%89%e5%93%aa%e4%ba%9b%e5%ba%93" class="header-anchor"&gt;&lt;/a&gt;1. 看有哪些库
&lt;/h3&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-sql" data-lang="sql"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="k"&gt;SHOW&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;DATABASES&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;体验环境里常见会看到 &lt;code&gt;oceanbase&lt;/code&gt;、&lt;code&gt;test&lt;/code&gt;、&lt;code&gt;information_schema&lt;/code&gt;、&lt;code&gt;mysql&lt;/code&gt; 等。&lt;/p&gt;
&lt;h3 id="2-创建业务库"&gt;&lt;a href="#2-%e5%88%9b%e5%bb%ba%e4%b8%9a%e5%8a%a1%e5%ba%93" class="header-anchor"&gt;&lt;/a&gt;2. 创建业务库
&lt;/h3&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-sql" data-lang="sql"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="k"&gt;CREATE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;DATABASE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;demo&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;DEFAULT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;CHARACTER&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;SET&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;utf8mb4&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;READ&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;WRITE&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="n"&gt;USE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;demo&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;这和 MySQL 非常像。&lt;/p&gt;
&lt;h3 id="3-建表写入查询"&gt;&lt;a href="#3-%e5%bb%ba%e8%a1%a8%e5%86%99%e5%85%a5%e6%9f%a5%e8%af%a2" class="header-anchor"&gt;&lt;/a&gt;3. 建表、写入、查询
&lt;/h3&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-sql" data-lang="sql"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="k"&gt;CREATE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;TABLE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;users&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;INT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;PRIMARY&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;KEY&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;name&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;VARCHAR&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;64&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;NOT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;NULL&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;created_at&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;DATETIME&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;DEFAULT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;CURRENT_TIMESTAMP&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;INTO&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;users&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;name&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;VALUES&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;alice&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;bob&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="k"&gt;SELECT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;name&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;FROM&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;users&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;WHERE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="k"&gt;UPDATE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;users&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;SET&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;name&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;alice2&amp;#39;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;WHERE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="k"&gt;DELETE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;FROM&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;users&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;WHERE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;官方 MySQL 模式基础文档也覆盖了：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;CREATE DATABASE&lt;/code&gt; / &lt;code&gt;SHOW DATABASES&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CREATE TABLE&lt;/code&gt; / &lt;code&gt;SHOW TABLES&lt;/code&gt; / &lt;code&gt;SHOW CREATE TABLE&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ALTER TABLE&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;INSERT&lt;/code&gt; / &lt;code&gt;UPDATE&lt;/code&gt; / &lt;code&gt;DELETE&lt;/code&gt; / &lt;code&gt;TRUNCATE&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;多表查询、聚合、&lt;code&gt;EXPLAIN&lt;/code&gt; 等&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="4-看建表细节时的oceanbase-味道"&gt;&lt;a href="#4-%e7%9c%8b%e5%bb%ba%e8%a1%a8%e7%bb%86%e8%8a%82%e6%97%b6%e7%9a%84oceanbase-%e5%91%b3%e9%81%93" class="header-anchor"&gt;&lt;/a&gt;4. 看建表细节时的“OceanBase 味道”
&lt;/h3&gt;&lt;p&gt;在 OceanBase 里执行：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-sql" data-lang="sql"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="k"&gt;SHOW&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;CREATE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;TABLE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;users&lt;/span&gt;&lt;span class="err"&gt;\&lt;/span&gt;&lt;span class="k"&gt;G&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;你可能会看到比 MySQL 更“重”的表属性，例如副本数、压缩、Tablet 相关参数等。&lt;br&gt;
这说明：&lt;strong&gt;SQL 表面兼容，元数据与存储参数并不等同于 InnoDB。&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="七兼容性像-mysql但不是-100-mysql"&gt;&lt;a href="#%e4%b8%83%e5%85%bc%e5%ae%b9%e6%80%a7%e5%83%8f-mysql%e4%bd%86%e4%b8%8d%e6%98%af-100-mysql" class="header-anchor"&gt;&lt;/a&gt;七、兼容性：像 MySQL，但不是 100% MySQL
&lt;/h2&gt;&lt;p&gt;官方《与 MySQL 兼容性对比》说明：&lt;/p&gt;

 &lt;blockquote&gt;
 &lt;p&gt;OceanBase 的 MySQL 模式兼容 MySQL 5.7/8.0 的&lt;strong&gt;绝大部分&lt;/strong&gt;功能和语法；因架构差异或需求优先级，部分功能未支持。&lt;/p&gt;

 &lt;/blockquote&gt;
&lt;h3 id="1-相似度高的部分"&gt;&lt;a href="#1-%e7%9b%b8%e4%bc%bc%e5%ba%a6%e9%ab%98%e7%9a%84%e9%83%a8%e5%88%86" class="header-anchor"&gt;&lt;/a&gt;1. 相似度高的部分
&lt;/h3&gt;&lt;p&gt;通常对应用最友好的部分：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;常见数值 / 时间 / 字符 / JSON 等数据类型&lt;/li&gt;
&lt;li&gt;&lt;code&gt;SELECT&lt;/code&gt; / &lt;code&gt;INSERT&lt;/code&gt; / &lt;code&gt;UPDATE&lt;/code&gt; / &lt;code&gt;DELETE&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;多表连接、子查询、聚合分组&lt;/li&gt;
&lt;li&gt;存储过程、函数、触发器等大部分 PL 能力&lt;/li&gt;
&lt;li&gt;&lt;code&gt;information_schema&lt;/code&gt;、&lt;code&gt;mysql&lt;/code&gt; 中的大量视图（但不是逐列完全等价）&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;因此：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;很多基于 MySQL 协议的驱动可直接连&lt;/li&gt;
&lt;li&gt;简单 CRUD 业务迁移门槛较低&lt;/li&gt;
&lt;li&gt;你会有“这不就是 MySQL 吗”的错觉&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="2-必须注意的差异"&gt;&lt;a href="#2-%e5%bf%85%e9%a1%bb%e6%b3%a8%e6%84%8f%e7%9a%84%e5%b7%ae%e5%bc%82" class="header-anchor"&gt;&lt;/a&gt;2. 必须注意的差异
&lt;/h3&gt;&lt;p&gt;官方明确提到的差异方向包括：&lt;/p&gt;
&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;类别&lt;/th&gt;
					&lt;th&gt;差异点&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;SQL 语法&lt;/td&gt;
					&lt;td&gt;例如不支持 &lt;code&gt;SELECT ... FOR SHARE ...&lt;/code&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;TRUNCATE&lt;/td&gt;
					&lt;td&gt;不支持在事务处理与表锁定过程中操作&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;系统视图&lt;/td&gt;
					&lt;td&gt;不保证所有视图/列含义都与 MySQL 相同&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;存储引擎&lt;/td&gt;
					&lt;td&gt;不是 InnoDB 插件体系，而是自研分布式存储事务体系&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;优化器&lt;/td&gt;
					&lt;td&gt;执行计划与优化策略不同&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;分区 / 备份恢复&lt;/td&gt;
					&lt;td&gt;能力模型与操作路径不同&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;架构相关功能&lt;/td&gt;
					&lt;td&gt;因分布式架构，部分单机 MySQL 习惯不能照搬&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="3-实战迁移建议"&gt;&lt;a href="#3-%e5%ae%9e%e6%88%98%e8%bf%81%e7%a7%bb%e5%bb%ba%e8%ae%ae" class="header-anchor"&gt;&lt;/a&gt;3. 实战迁移建议
&lt;/h3&gt;&lt;p&gt;从 MySQL 迁到 OceanBase 时，不要只做“能不能连上”：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;先验证协议层&lt;/strong&gt;：驱动、连接池、ORM&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;再验证 SQL 层&lt;/strong&gt;：慢 SQL、锁、事务边界、分页、HINT&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;再验证运维层&lt;/strong&gt;：备份恢复、监控指标、扩缩容、租户资源&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;最后验证边界语法&lt;/strong&gt;：冷门函数、系统表、复制相关特性、特定锁语法&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;一句话：&lt;/p&gt;

 &lt;blockquote&gt;
 &lt;p&gt;&lt;strong&gt;兼容的是“MySQL 使用体验”，不是“MySQL 内核实现”。&lt;/strong&gt;&lt;/p&gt;

 &lt;/blockquote&gt;
&lt;h2 id="八对象模型对比database-相同边界不同"&gt;&lt;a href="#%e5%85%ab%e5%af%b9%e8%b1%a1%e6%a8%a1%e5%9e%8b%e5%af%b9%e6%af%94database-%e7%9b%b8%e5%90%8c%e8%be%b9%e7%95%8c%e4%b8%8d%e5%90%8c" class="header-anchor"&gt;&lt;/a&gt;八、对象模型对比：database 相同，边界不同
&lt;/h2&gt;&lt;h3 id="mysql"&gt;&lt;a href="#mysql" class="header-anchor"&gt;&lt;/a&gt;MySQL
&lt;/h3&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-text" data-lang="text"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;Instance
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; └── Database
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; └── Table / View / Procedure
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;权限、连接、资源，常常都围绕“实例 + 账号”展开。&lt;/p&gt;
&lt;h3 id="oceanbase"&gt;&lt;a href="#oceanbase" class="header-anchor"&gt;&lt;/a&gt;OceanBase
&lt;/h3&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-text" data-lang="text"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;Cluster
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; └── Tenant（资源与权限边界更强）
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; └── Database
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; └── Table / Index / Procedure
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; └── sys 租户（集群元数据）
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;对 MySQL 同学最实用的迁移记忆：&lt;/p&gt;
&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;你在 MySQL 想做的事&lt;/th&gt;
					&lt;th&gt;在 OceanBase 更常见的对应&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;新建一个业务实例&lt;/td&gt;
					&lt;td&gt;新建一个业务租户&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;在实例里建库&lt;/td&gt;
					&lt;td&gt;在租户里 &lt;code&gt;CREATE DATABASE&lt;/code&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;给业务分配 CPU/内存&lt;/td&gt;
					&lt;td&gt;调整 Unit Config / Resource Pool&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;连业务库&lt;/td&gt;
					&lt;td&gt;连 &lt;code&gt;user@tenant&lt;/code&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;做高可用&lt;/td&gt;
					&lt;td&gt;规划 Zone / 副本 / 主备切换，而不是只配主从&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="九一个最小对比实验帮助真正理解差异"&gt;&lt;a href="#%e4%b9%9d%e4%b8%80%e4%b8%aa%e6%9c%80%e5%b0%8f%e5%af%b9%e6%af%94%e5%ae%9e%e9%aa%8c%e5%b8%ae%e5%8a%a9%e7%9c%9f%e6%ad%a3%e7%90%86%e8%a7%a3%e5%b7%ae%e5%bc%82" class="header-anchor"&gt;&lt;/a&gt;九、一个最小对比实验（帮助真正理解差异）
&lt;/h2&gt;&lt;h3 id="实验-a同一套-crud"&gt;&lt;a href="#%e5%ae%9e%e9%aa%8c-a%e5%90%8c%e4%b8%80%e5%a5%97-crud" class="header-anchor"&gt;&lt;/a&gt;实验 A：同一套 CRUD
&lt;/h3&gt;&lt;p&gt;在 OceanBase MySQL 模式租户执行：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-sql" data-lang="sql"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="k"&gt;CREATE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;DATABASE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;shop&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;DEFAULT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;CHARACTER&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;SET&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;utf8mb4&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="n"&gt;USE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;shop&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="k"&gt;CREATE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;TABLE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;orders&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;order_id&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;BIGINT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;PRIMARY&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;KEY&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;user_id&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;BIGINT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;NOT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;NULL&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;amount&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;DECIMAL&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;NOT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;NULL&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;status&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;VARCHAR&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;16&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;NOT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;NULL&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;INTO&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;orders&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;VALUES&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;1001&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;19&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="mi"&gt;90&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;PAID&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;1002&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;39&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="mi"&gt;00&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;CREATED&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="k"&gt;SELECT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;*&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;FROM&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;orders&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;WHERE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;status&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;PAID&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;你会发现：&lt;br&gt;
&lt;strong&gt;如果只看 SQL，这和 MySQL 几乎没区别。&lt;/strong&gt;&lt;/p&gt;
&lt;h3 id="实验-b连接串差异"&gt;&lt;a href="#%e5%ae%9e%e9%aa%8c-b%e8%bf%9e%e6%8e%a5%e4%b8%b2%e5%b7%ae%e5%bc%82" class="header-anchor"&gt;&lt;/a&gt;实验 B：连接串差异
&lt;/h3&gt;&lt;p&gt;MySQL：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;mysql -h127.0.0.1 -P3306 -uroot -p shop
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;OceanBase 直连某租户：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;mysql -h127.0.0.1 -P2881 -uroot@test -p shop
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;OceanBase 经 ODP：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;mysql -h127.0.0.1 -P2883 -uroot@test#cluster_name -p shop
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;你会发现：&lt;br&gt;
&lt;strong&gt;真正拉开差距的，是“你连到了哪里”和“资源边界在哪里”。&lt;/strong&gt;&lt;/p&gt;
&lt;h3 id="实验-c多租户隔离"&gt;&lt;a href="#%e5%ae%9e%e9%aa%8c-c%e5%a4%9a%e7%a7%9f%e6%88%b7%e9%9a%94%e7%a6%bb" class="header-anchor"&gt;&lt;/a&gt;实验 C：多租户隔离
&lt;/h3&gt;&lt;p&gt;在 &lt;code&gt;sys&lt;/code&gt; 中创建两个业务租户后：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;root@tenant1&lt;/code&gt; 里建表&lt;/li&gt;
&lt;li&gt;&lt;code&gt;root@tenant2&lt;/code&gt; 里看不到那张表&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;官方多租户示例正是用这种方式证明：&lt;br&gt;
&lt;strong&gt;租户之间资源、数据、权限隔离。&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;这比 MySQL 里“两个 database 互相授权”要更接近“两个实例”。&lt;/p&gt;
&lt;h2 id="十什么时候适合用-oceanbase什么时候继续-mysql"&gt;&lt;a href="#%e5%8d%81%e4%bb%80%e4%b9%88%e6%97%b6%e5%80%99%e9%80%82%e5%90%88%e7%94%a8-oceanbase%e4%bb%80%e4%b9%88%e6%97%b6%e5%80%99%e7%bb%a7%e7%bb%ad-mysql" class="header-anchor"&gt;&lt;/a&gt;十、什么时候适合用 OceanBase，什么时候继续 MySQL
&lt;/h2&gt;&lt;h3 id="更适合考虑-oceanbase-的场景"&gt;&lt;a href="#%e6%9b%b4%e9%80%82%e5%90%88%e8%80%83%e8%99%91-oceanbase-%e7%9a%84%e5%9c%ba%e6%99%af" class="header-anchor"&gt;&lt;/a&gt;更适合考虑 OceanBase 的场景
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;需要水平扩展，单机 MySQL + 分库分表成本高&lt;/li&gt;
&lt;li&gt;需要更强的金融级高可用与多副本一致性&lt;/li&gt;
&lt;li&gt;希望一套系统兼顾 TP 与部分 AP&lt;/li&gt;
&lt;li&gt;多业务要强隔离，但又想统一运维平台（多租户）&lt;/li&gt;
&lt;li&gt;已有大量 MySQL 协议应用，希望降低改造成本&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="更适合继续-mysql-的场景"&gt;&lt;a href="#%e6%9b%b4%e9%80%82%e5%90%88%e7%bb%a7%e7%bb%ad-mysql-%e7%9a%84%e5%9c%ba%e6%99%af" class="header-anchor"&gt;&lt;/a&gt;更适合继续 MySQL 的场景
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;单机或轻量业务，数据量和可用性要求不高&lt;/li&gt;
&lt;li&gt;团队只熟悉传统 mysqld 运维，短期不想引入分布式复杂度&lt;/li&gt;
&lt;li&gt;深度依赖某些 MySQL 专有行为 / 插件 / 生态工具且未验证兼容&lt;/li&gt;
&lt;li&gt;本地开发只需要极轻量依赖（虽然也可用 OceanBase Docker，但 MySQL 更轻）&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="十一学习路线建议"&gt;&lt;a href="#%e5%8d%81%e4%b8%80%e5%ad%a6%e4%b9%a0%e8%b7%af%e7%ba%bf%e5%bb%ba%e8%ae%ae" class="header-anchor"&gt;&lt;/a&gt;十一、学习路线建议
&lt;/h2&gt;&lt;p&gt;如果你是 MySQL 背景，建议按这个顺序学：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;先跑起来&lt;/strong&gt;：Docker / &lt;code&gt;obd demo&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;先会连&lt;/strong&gt;：&lt;code&gt;user@tenant&lt;/code&gt;、&lt;code&gt;2881&lt;/code&gt; / &lt;code&gt;2883&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;先当 MySQL 用&lt;/strong&gt;：建库建表 CRUD&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;再学租户与资源&lt;/strong&gt;：Unit / Resource Pool / sys 与普通租户&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;再学分布式&lt;/strong&gt;：分区、副本、Zone、OBProxy 路由&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;最后做迁移评估&lt;/strong&gt;：兼容性清单 + 压测 + 备份恢复演练&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;配套阅读：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;本站另一篇：&lt;a class="link" href="https://blog.waihost.com/posts/oceanbase-multi-platform-setup-guide/" &gt;OceanBase 多平台搭建教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;官方 MySQL 兼容性文档&lt;/li&gt;
&lt;li&gt;官方系统架构与多租户文档&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="十二速查对照表"&gt;&lt;a href="#%e5%8d%81%e4%ba%8c%e9%80%9f%e6%9f%a5%e5%af%b9%e7%85%a7%e8%a1%a8" class="header-anchor"&gt;&lt;/a&gt;十二、速查对照表
&lt;/h2&gt;&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;主题&lt;/th&gt;
					&lt;th&gt;MySQL&lt;/th&gt;
					&lt;th&gt;OceanBase&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;默认连接&lt;/td&gt;
					&lt;td&gt;&lt;code&gt;root@host:3306&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;&lt;code&gt;root@tenant@host:2881&lt;/code&gt; 或经 ODP &lt;code&gt;2883&lt;/code&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;业务隔离&lt;/td&gt;
					&lt;td&gt;database / 多实例&lt;/td&gt;
					&lt;td&gt;tenant&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;管理入口&lt;/td&gt;
					&lt;td&gt;实例管理员&lt;/td&gt;
					&lt;td&gt;常先登 &lt;code&gt;sys&lt;/code&gt; 做集群与租户管理&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;扩展&lt;/td&gt;
					&lt;td&gt;加配 / 分库分表&lt;/td&gt;
					&lt;td&gt;分区 + 多节点 + 资源单元&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;高可用&lt;/td&gt;
					&lt;td&gt;复制拓扑&lt;/td&gt;
					&lt;td&gt;Multi-Paxos 多副本&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;SQL 习惯&lt;/td&gt;
					&lt;td&gt;原生 MySQL&lt;/td&gt;
					&lt;td&gt;高度兼容，但要做差异验证&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;社区版模式&lt;/td&gt;
					&lt;td&gt;MySQL&lt;/td&gt;
					&lt;td&gt;仅 MySQL 模式&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="总结"&gt;&lt;a href="#%e6%80%bb%e7%bb%93" class="header-anchor"&gt;&lt;/a&gt;总结
&lt;/h2&gt;&lt;p&gt;OceanBase 对 MySQL 同学并不“难在 SQL”，而难在&lt;strong&gt;换模型&lt;/strong&gt;：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;把“实例”理解升级成“集群 + 租户”&lt;/li&gt;
&lt;li&gt;把“连上 mysqld”升级成“连上正确的租户入口”&lt;/li&gt;
&lt;li&gt;把“兼容 MySQL”理解成“协议与常用 SQL 友好，不等于内核相同”&lt;/li&gt;
&lt;li&gt;先用 CRUD 建立信心，再用租户、分区、副本理解它的分布式能力&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;掌握这四步后，你就不会再把 OceanBase 误当成“换了皮的 MySQL”，也能更准确判断它该用在什么地方。&lt;/p&gt;
&lt;h2 id="参考资料"&gt;&lt;a href="#%e5%8f%82%e8%80%83%e8%b5%84%e6%96%99" class="header-anchor"&gt;&lt;/a&gt;参考资料
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;OceanBase 官方仓库 README（中英文，MySQL 兼容与快速开始）：https://github.com/oceanbase/oceanbase&lt;/li&gt;
&lt;li&gt;OceanBase 官方文档：系统架构（&lt;code&gt;oceanbase-doc&lt;/code&gt; / V4.3.5）&lt;/li&gt;
&lt;li&gt;OceanBase 官方文档：与 MySQL 兼容性对比&lt;/li&gt;
&lt;li&gt;OceanBase 官方文档：SQL 基础操作（MySQL 模式）&lt;/li&gt;
&lt;li&gt;OceanBase 官方文档：体验多租户特性&lt;/li&gt;
&lt;li&gt;OceanBase 官方文档：通过 MySQL 客户端连接 OceanBase 租户&lt;/li&gt;
&lt;li&gt;OceanBase Docker 镜像：https://hub.docker.com/r/oceanbase/oceanbase-ce&lt;/li&gt;
&lt;li&gt;OceanBase 中文文档中心：https://www.oceanbase.com/docs/oceanbase-database-cn&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>OceanBase 多平台搭建教程：Linux / Windows / macOS / Docker 从零到可连接</title><link>https://blog.waihost.com/posts/oceanbase-multi-platform-setup-guide/</link><pubDate>Fri, 17 Jul 2026 00:00:00 +0800</pubDate><guid>https://blog.waihost.com/posts/oceanbase-multi-platform-setup-guide/</guid><description>&lt;img src="https://blog.waihost.com/images/covers/oceanbase-multi-platform-setup-guide.svg" alt="Featured image of post OceanBase 多平台搭建教程：Linux / Windows / macOS / Docker 从零到可连接" /&gt;&lt;p&gt;OceanBase 是蚂蚁集团开源的分布式关系型数据库，兼容 MySQL 协议，适合本地体验、开发联调与集群试验。很多人第一次上手时最困惑的不是“它强在哪”，而是：&lt;/p&gt;

 &lt;blockquote&gt;
 &lt;p&gt;&lt;strong&gt;我在 Linux / Windows / macOS 上，到底该用哪一种方式装？&lt;/strong&gt;&lt;/p&gt;

 &lt;/blockquote&gt;
&lt;p&gt;本文按官方社区推荐路径，整理一套可复用的多平台搭建方法：优先讲&lt;strong&gt;最快跑起来&lt;/strong&gt;，再讲&lt;strong&gt;更接近生产部署&lt;/strong&gt;的方式，并给出连接验证与常见排错。&lt;/p&gt;

 &lt;blockquote&gt;
 &lt;p&gt;说明：本文以 &lt;strong&gt;OceanBase 社区版（CE）&lt;/strong&gt; 的官方开源安装路径为主，面向学习与开发环境。官方 Docker 镜像明确标注&lt;strong&gt;仅供测试，不建议直接用于生产&lt;/strong&gt;。&lt;/p&gt;

 &lt;/blockquote&gt;
&lt;h2 id="一先选对安装路径"&gt;&lt;a href="#%e4%b8%80%e5%85%88%e9%80%89%e5%af%b9%e5%ae%89%e8%a3%85%e8%b7%af%e5%be%84" class="header-anchor"&gt;&lt;/a&gt;一、先选对安装路径
&lt;/h2&gt;&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;平台&lt;/th&gt;
					&lt;th&gt;最推荐方式&lt;/th&gt;
					&lt;th&gt;备选方式&lt;/th&gt;
					&lt;th&gt;说明&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;Linux&lt;/td&gt;
					&lt;td&gt;&lt;code&gt;all-in-one&lt;/code&gt; + &lt;code&gt;obd demo&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;Docker / OBD 自定义集群&lt;/td&gt;
					&lt;td&gt;官方 all-in-one &lt;strong&gt;仅支持 Linux&lt;/strong&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;macOS&lt;/td&gt;
					&lt;td&gt;Docker Desktop + &lt;code&gt;oceanbase-ce&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;远程 Linux 开发机&lt;/td&gt;
					&lt;td&gt;本机不建议硬编译 observer 当第一选择&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;Windows&lt;/td&gt;
					&lt;td&gt;Docker Desktop&lt;/td&gt;
					&lt;td&gt;WSL2 + Linux 方案&lt;/td&gt;
					&lt;td&gt;原生 Windows 不适合当主路径&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;任意平台（快速体验）&lt;/td&gt;
					&lt;td&gt;Docker &lt;code&gt;oceanbase/oceanbase-ce&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;quay.io / ghcr.io 镜像源&lt;/td&gt;
					&lt;td&gt;单实例、端口 &lt;code&gt;2881&lt;/code&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;Kubernetes&lt;/td&gt;
					&lt;td&gt;&lt;code&gt;ob-operator&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;—&lt;/td&gt;
					&lt;td&gt;容器化生产/类生产集群请走 operator&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="资源底线很重要"&gt;&lt;a href="#%e8%b5%84%e6%ba%90%e5%ba%95%e7%ba%bf%e5%be%88%e9%87%8d%e8%a6%81" class="header-anchor"&gt;&lt;/a&gt;资源底线（很重要）
&lt;/h3&gt;&lt;p&gt;不同路径对资源要求不同，至少记住两档：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Docker 官方镜像（测试）&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;主机建议至少 &lt;strong&gt;2 物理核 + 8GB 内存&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;code&gt;obd demo&lt;/code&gt; 本地单节点&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;至少 &lt;strong&gt;2 CPU、6GB 可用内存、54GB 可用磁盘&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;端口 &lt;strong&gt;2881 / 2882&lt;/strong&gt; 未被占用&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;机器太小会导致 bootstrap 卡住、容器反复重启，看起来像“命令写错了”，其实是资源不足。&lt;/p&gt;
&lt;h2 id="二通用概念端口租户客户端"&gt;&lt;a href="#%e4%ba%8c%e9%80%9a%e7%94%a8%e6%a6%82%e5%bf%b5%e7%ab%af%e5%8f%a3%e7%a7%9f%e6%88%b7%e5%ae%a2%e6%88%b7%e7%ab%af" class="header-anchor"&gt;&lt;/a&gt;二、通用概念：端口、租户、客户端
&lt;/h2&gt;&lt;p&gt;搭好后，通常这样连接：&lt;/p&gt;
&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;项目&lt;/th&gt;
					&lt;th&gt;常见值&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;协议&lt;/td&gt;
					&lt;td&gt;MySQL 兼容&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;SQL 端口&lt;/td&gt;
					&lt;td&gt;&lt;code&gt;2881&lt;/code&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;系统租户&lt;/td&gt;
					&lt;td&gt;&lt;code&gt;sys&lt;/code&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;示例业务租户&lt;/td&gt;
					&lt;td&gt;&lt;code&gt;test&lt;/code&gt;（Docker 镜像常见）&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;客户端&lt;/td&gt;
					&lt;td&gt;&lt;code&gt;obclient&lt;/code&gt; 或标准 &lt;code&gt;mysql&lt;/code&gt; 客户端&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;常用连接示例：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# 系统租户 root&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;mysql -h127.0.0.1 -P2881 -uroot
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# 普通租户 root（Docker 文档示例）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;mysql -h127.0.0.1 -P2881 -uroot@test
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;如果你本机没有 &lt;code&gt;mysql&lt;/code&gt; 客户端，可用容器内置客户端：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;docker &lt;span class="nb"&gt;exec&lt;/span&gt; -it oceanbase-ce obclient -h127.0.0.1 -P2881 -uroot
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="三最快路径dockerlinux--windows--macos-通用"&gt;&lt;a href="#%e4%b8%89%e6%9c%80%e5%bf%ab%e8%b7%af%e5%be%84dockerlinux--windows--macos-%e9%80%9a%e7%94%a8" class="header-anchor"&gt;&lt;/a&gt;三、最快路径：Docker（Linux / Windows / macOS 通用）
&lt;/h2&gt;&lt;p&gt;这是跨平台体验 OceanBase &lt;strong&gt;最省事&lt;/strong&gt;的方式。&lt;br&gt;
官方提供镜像：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Docker Hub：&lt;code&gt;oceanbase/oceanbase-ce&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;备选：&lt;code&gt;quay.io/oceanbase/oceanbase-ce&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;备选：&lt;code&gt;ghcr.io/oceanbase/oceanbase-ce&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;官方说明：该镜像用于&lt;strong&gt;快速搭建测试环境&lt;/strong&gt;，只支持&lt;strong&gt;单实例&lt;/strong&gt;；若在 Kubernetes 中运行，请改用 &lt;code&gt;ob-operator&lt;/code&gt;。&lt;/p&gt;
&lt;h3 id="1-前置条件"&gt;&lt;a href="#1-%e5%89%8d%e7%bd%ae%e6%9d%a1%e4%bb%b6" class="header-anchor"&gt;&lt;/a&gt;1. 前置条件
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;已安装并可运行 Docker（Linux Docker Engine / Docker Desktop）&lt;/li&gt;
&lt;li&gt;主机资源满足：约 2 核 + 8GB 内存&lt;/li&gt;
&lt;li&gt;本机 &lt;code&gt;2881&lt;/code&gt; 端口空闲&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="2-启动实例"&gt;&lt;a href="#2-%e5%90%af%e5%8a%a8%e5%ae%9e%e4%be%8b" class="header-anchor"&gt;&lt;/a&gt;2. 启动实例
&lt;/h3&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# mini 模式：适合快速体验（官方 README 推荐写法）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;docker run -p 2881:2881 --name oceanbase-ce -e &lt;span class="nv"&gt;MODE&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;mini -d oceanbase/oceanbase-ce
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Docker Hub 文档还给出了其他模式：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# 使用容器更多资源&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;docker run -p 2881:2881 --name oceanbase-ce -e &lt;span class="nv"&gt;MODE&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;normal -d oceanbase/oceanbase-ce
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# slim / fastboot 模式&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;docker run -p 2881:2881 --name oceanbase-ce -e &lt;span class="nv"&gt;MODE&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;slim -d oceanbase/oceanbase-ce
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;若 Docker Hub 拉取慢，可切换镜像源：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;docker run -p 2881:2881 --name oceanbase-ce -e &lt;span class="nv"&gt;MODE&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;mini -d quay.io/oceanbase/oceanbase-ce
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# 或&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;docker run -p 2881:2881 --name oceanbase-ce -e &lt;span class="nv"&gt;MODE&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;mini -d ghcr.io/oceanbase/oceanbase-ce
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="3-等待-bootstrap-完成"&gt;&lt;a href="#3-%e7%ad%89%e5%be%85-bootstrap-%e5%ae%8c%e6%88%90" class="header-anchor"&gt;&lt;/a&gt;3. 等待 bootstrap 完成
&lt;/h3&gt;&lt;p&gt;首次启动可能需要几分钟。查看日志末尾：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;docker logs oceanbase-ce &lt;span class="p"&gt;|&lt;/span&gt; tail -1
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;期望看到：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-text" data-lang="text"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;boot success!
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="4-连接验证"&gt;&lt;a href="#4-%e8%bf%9e%e6%8e%a5%e9%aa%8c%e8%af%81" class="header-anchor"&gt;&lt;/a&gt;4. 连接验证
&lt;/h3&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# 方式 A：容器内客户端&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;docker &lt;span class="nb"&gt;exec&lt;/span&gt; -it oceanbase-ce obclient -h127.0.0.1 -P2881 -uroot
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# 方式 B：宿主机 mysql 客户端&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;mysql -h127.0.0.1 -P2881 -uroot
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;mysql -h127.0.0.1 -P2881 -uroot@test
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;进入后可执行：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-sql" data-lang="sql"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="k"&gt;SHOW&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;DATABASES&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="k"&gt;SELECT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;version&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="5-常用运维命令"&gt;&lt;a href="#5-%e5%b8%b8%e7%94%a8%e8%bf%90%e7%bb%b4%e5%91%bd%e4%bb%a4" class="header-anchor"&gt;&lt;/a&gt;5. 常用运维命令
&lt;/h3&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;docker ps -a &lt;span class="p"&gt;|&lt;/span&gt; grep oceanbase-ce
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;docker logs -f oceanbase-ce
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;docker restart oceanbase-ce
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;docker stop oceanbase-ce
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;docker rm -f oceanbase-ce
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="6-初始化-sql可选"&gt;&lt;a href="#6-%e5%88%9d%e5%a7%8b%e5%8c%96-sql%e5%8f%af%e9%80%89" class="header-anchor"&gt;&lt;/a&gt;6. 初始化 SQL（可选）
&lt;/h3&gt;&lt;p&gt;官方镜像支持挂载初始化脚本目录：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;docker run -p 2881:2881 --name oceanbase-ce &lt;span class="se"&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; -v /path/to/init-sql:/root/boot/init.d &lt;span class="se"&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; -d oceanbase/oceanbase-ce
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;注意：官方文档提醒，初始化脚本中&lt;strong&gt;不要直接改 root 密码&lt;/strong&gt;；若要改密码，应使用镜像提供的环境变量（如 &lt;code&gt;OB_TENANT_PASSWORD&lt;/code&gt;，以当前镜像说明为准）。&lt;/p&gt;
&lt;h2 id="四linux-原生all-in-one--obd官方推荐体验路径"&gt;&lt;a href="#%e5%9b%9blinux-%e5%8e%9f%e7%94%9fall-in-one--obd%e5%ae%98%e6%96%b9%e6%8e%a8%e8%8d%90%e4%bd%93%e9%aa%8c%e8%b7%af%e5%be%84" class="header-anchor"&gt;&lt;/a&gt;四、Linux 原生：all-in-one + OBD（官方推荐体验路径）
&lt;/h2&gt;&lt;p&gt;如果你有一台 Linux 服务器或虚拟机，想更接近“真集群工具链”，优先用官方 &lt;strong&gt;all-in-one&lt;/strong&gt;。&lt;/p&gt;
&lt;h3 id="1-一键安装-all-in-one"&gt;&lt;a href="#1-%e4%b8%80%e9%94%ae%e5%ae%89%e8%a3%85-all-in-one" class="header-anchor"&gt;&lt;/a&gt;1. 一键安装 all-in-one
&lt;/h3&gt;&lt;p&gt;官方 README 明确：&lt;strong&gt;仅 Linux&lt;/strong&gt;。&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# 需要能访问外网&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;bash -c &lt;span class="s2"&gt;&amp;#34;&lt;/span&gt;&lt;span class="k"&gt;$(&lt;/span&gt;curl -s https://obbusiness-private.oss-cn-shanghai.aliyuncs.com/download-center/opensource/oceanbase-all-in-one/installer.sh&lt;span class="k"&gt;)&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nb"&gt;source&lt;/span&gt; ~/.oceanbase-all-in-one/bin/env.sh
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="2-一键拉起演示实例"&gt;&lt;a href="#2-%e4%b8%80%e9%94%ae%e6%8b%89%e8%b5%b7%e6%bc%94%e7%a4%ba%e5%ae%9e%e4%be%8b" class="header-anchor"&gt;&lt;/a&gt;2. 一键拉起演示实例
&lt;/h3&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;obd demo
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;code&gt;obd demo&lt;/code&gt; 会在本机部署并启动一个 OceanBase 实例。部署完成后：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;obclient -h127.0.0.1 -uroot -P2881
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="3-单独安装-obdcentosrhel-系"&gt;&lt;a href="#3-%e5%8d%95%e7%8b%ac%e5%ae%89%e8%a3%85-obdcentosrhel-%e7%b3%bb" class="header-anchor"&gt;&lt;/a&gt;3. 单独安装 OBD（CentOS/RHEL 系）
&lt;/h3&gt;&lt;p&gt;如果你不走 all-in-one，也可以单独装 OceanBase Deployer：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;sudo yum install -y yum-utils
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;sudo yum-config-manager --add-repo https://mirrors.aliyun.com/oceanbase/OceanBase.repo
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;sudo yum install -y ob-deploy
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nb"&gt;source&lt;/span&gt; /etc/profile.d/obd.sh
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;然后同样可用：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;obd demo
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="4-obd-demo-前自检清单"&gt;&lt;a href="#4-obd-demo-%e5%89%8d%e8%87%aa%e6%a3%80%e6%b8%85%e5%8d%95" class="header-anchor"&gt;&lt;/a&gt;4. &lt;code&gt;obd demo&lt;/code&gt; 前自检清单
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;端口 &lt;code&gt;2881&lt;/code&gt;、&lt;code&gt;2882&lt;/code&gt; 空闲&lt;/li&gt;
&lt;li&gt;可用内存 ≥ 6GB&lt;/li&gt;
&lt;li&gt;CPU ≥ 2&lt;/li&gt;
&lt;li&gt;可用磁盘 ≥ 54GB&lt;/li&gt;
&lt;li&gt;系统时间正常、主机名可解析&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;资源不够时，OBD 往往会在预检阶段失败；先把机器规格补齐再重试，比反复改 YAML 更有效。&lt;/p&gt;
&lt;h2 id="五windows-搭建"&gt;&lt;a href="#%e4%ba%94windows-%e6%90%ad%e5%bb%ba" class="header-anchor"&gt;&lt;/a&gt;五、Windows 搭建
&lt;/h2&gt;&lt;p&gt;Windows 原生不适合作为 OceanBase observer 主部署平台。实操建议两条路：&lt;/p&gt;
&lt;h3 id="方案-adocker-desktop最简单"&gt;&lt;a href="#%e6%96%b9%e6%a1%88-adocker-desktop%e6%9c%80%e7%ae%80%e5%8d%95" class="header-anchor"&gt;&lt;/a&gt;方案 A：Docker Desktop（最简单）
&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;安装 &lt;a class="link" href="https://docs.docker.com/desktop/" target="_blank" rel="noopener"
 &gt;Docker Desktop for Windows&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;确保 WSL2 后端已启用（Docker Desktop 默认推荐）&lt;/li&gt;
&lt;li&gt;在 PowerShell / Windows Terminal 执行：&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="n"&gt;docker&lt;/span&gt; &lt;span class="n"&gt;run&lt;/span&gt; &lt;span class="n"&gt;-p&lt;/span&gt; &lt;span class="mf"&gt;2881&lt;/span&gt;&lt;span class="err"&gt;:&lt;/span&gt;&lt;span class="mf"&gt;2881&lt;/span&gt; &lt;span class="p"&gt;-&lt;/span&gt;&lt;span class="n"&gt;-name&lt;/span&gt; &lt;span class="nb"&gt;oceanbase-ce&lt;/span&gt; &lt;span class="n"&gt;-e&lt;/span&gt; &lt;span class="n"&gt;MODE&lt;/span&gt;&lt;span class="p"&gt;=&lt;/span&gt;&lt;span class="n"&gt;mini&lt;/span&gt; &lt;span class="n"&gt;-d&lt;/span&gt; &lt;span class="n"&gt;oceanbase&lt;/span&gt;&lt;span class="p"&gt;/&lt;/span&gt;&lt;span class="nb"&gt;oceanbase-ce&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="n"&gt;docker&lt;/span&gt; &lt;span class="n"&gt;logs&lt;/span&gt; &lt;span class="nb"&gt;oceanbase-ce&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ol start="4"&gt;
&lt;li&gt;看到 &lt;code&gt;boot success!&lt;/code&gt; 后连接：&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="n"&gt;docker&lt;/span&gt; &lt;span class="n"&gt;exec&lt;/span&gt; &lt;span class="n"&gt;-it&lt;/span&gt; &lt;span class="nb"&gt;oceanbase-ce&lt;/span&gt; &lt;span class="n"&gt;obclient&lt;/span&gt; &lt;span class="n"&gt;-h127&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="py"&gt;0&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="py"&gt;0&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="py"&gt;1&lt;/span&gt; &lt;span class="n"&gt;-P2881&lt;/span&gt; &lt;span class="n"&gt;-uroot&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Windows 上若本机没有 mysql 客户端，优先用容器内 &lt;code&gt;obclient&lt;/code&gt;。&lt;/p&gt;
&lt;h3 id="方案-bwsl2--linux-路径"&gt;&lt;a href="#%e6%96%b9%e6%a1%88-bwsl2--linux-%e8%b7%af%e5%be%84" class="header-anchor"&gt;&lt;/a&gt;方案 B：WSL2 + Linux 路径
&lt;/h3&gt;&lt;p&gt;适合希望练习 &lt;code&gt;obd&lt;/code&gt; / all-in-one 的同学：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;安装 WSL2 与 Ubuntu（或其他受支持发行版）&lt;/li&gt;
&lt;li&gt;给 WSL 分配足够内存（建议在 &lt;code&gt;.wslconfig&lt;/code&gt; 中提高 memory）&lt;/li&gt;
&lt;li&gt;在 WSL 内按上文 &lt;strong&gt;Linux all-in-one / Docker&lt;/strong&gt; 步骤执行&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;注意：WSL 的磁盘 I/O 与内存限制会影响 bootstrap 时间，尽量把数据放在 Linux 文件系统内，不要跨挂载到很慢的 Windows 目录。&lt;/p&gt;
&lt;h2 id="六macos-搭建"&gt;&lt;a href="#%e5%85%admacos-%e6%90%ad%e5%bb%ba" class="header-anchor"&gt;&lt;/a&gt;六、macOS 搭建
&lt;/h2&gt;&lt;p&gt;macOS 上同样优先 Docker：&lt;/p&gt;
&lt;h3 id="1-安装-docker-desktop-for-mac"&gt;&lt;a href="#1-%e5%ae%89%e8%a3%85-docker-desktop-for-mac" class="header-anchor"&gt;&lt;/a&gt;1. 安装 Docker Desktop for Mac
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;Intel / Apple Silicon 都可使用 Docker Desktop&lt;/li&gt;
&lt;li&gt;在 Docker Desktop → Settings → Resources 中给足 CPU/内存（建议 ≥ 2 CPU、8GB）&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="2-启动-oceanbase"&gt;&lt;a href="#2-%e5%90%af%e5%8a%a8-oceanbase" class="header-anchor"&gt;&lt;/a&gt;2. 启动 OceanBase
&lt;/h3&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;docker run -p 2881:2881 --name oceanbase-ce -e &lt;span class="nv"&gt;MODE&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;mini -d oceanbase/oceanbase-ce
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;拉取慢时可换：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;docker run -p 2881:2881 --name oceanbase-ce -e &lt;span class="nv"&gt;MODE&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;mini -d ghcr.io/oceanbase/oceanbase-ce
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="3-连接"&gt;&lt;a href="#3-%e8%bf%9e%e6%8e%a5" class="header-anchor"&gt;&lt;/a&gt;3. 连接
&lt;/h3&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;docker &lt;span class="nb"&gt;exec&lt;/span&gt; -it oceanbase-ce obclient -h127.0.0.1 -P2881 -uroot
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="4-macos-特别提醒"&gt;&lt;a href="#4-macos-%e7%89%b9%e5%88%ab%e6%8f%90%e9%86%92" class="header-anchor"&gt;&lt;/a&gt;4. macOS 特别提醒
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;官方 &lt;strong&gt;all-in-one 标注 Linux Only&lt;/strong&gt;，不要在 macOS 上硬套那条 installer 当主路径&lt;/li&gt;
&lt;li&gt;Apple Silicon 上若镜像/依赖偶发兼容问题，优先换官方备用镜像源，或使用远程 Linux 机器做部署练习&lt;/li&gt;
&lt;li&gt;开发联调可把应用跑在 macOS，数据库跑在 Docker 容器；应用连接 &lt;code&gt;127.0.0.1:2881&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="七进阶kubernetes-与多节点"&gt;&lt;a href="#%e4%b8%83%e8%bf%9b%e9%98%b6kubernetes-%e4%b8%8e%e5%a4%9a%e8%8a%82%e7%82%b9" class="header-anchor"&gt;&lt;/a&gt;七、进阶：Kubernetes 与多节点
&lt;/h2&gt;&lt;p&gt;当你已经不满足“本机单实例体验”，可以往这两类走：&lt;/p&gt;
&lt;h3 id="1-kubernetesob-operator"&gt;&lt;a href="#1-kubernetesob-operator" class="header-anchor"&gt;&lt;/a&gt;1. Kubernetes：&lt;code&gt;ob-operator&lt;/code&gt;
&lt;/h3&gt;&lt;p&gt;官方 README 推荐使用 &lt;a class="link" href="https://github.com/oceanbase/ob-operator" target="_blank" rel="noopener"
 &gt;ob-operator&lt;/a&gt; 在 K8s 中部署管理 OceanBase。&lt;br&gt;
适合：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;想练容器化运维&lt;/li&gt;
&lt;li&gt;需要更接近云原生的生命周期管理&lt;/li&gt;
&lt;li&gt;本地 kind/k3s/自建集群实验&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;快速入口见：https://oceanbase.github.io/ob-operator&lt;/p&gt;
&lt;h3 id="2-obd-自定义集群"&gt;&lt;a href="#2-obd-%e8%87%aa%e5%ae%9a%e4%b9%89%e9%9b%86%e7%be%a4" class="header-anchor"&gt;&lt;/a&gt;2. OBD 自定义集群
&lt;/h3&gt;&lt;p&gt;&lt;code&gt;obd demo&lt;/code&gt; 只是快速单机演示。真正做多副本/多节点时，应使用 OBD 的集群配置与命令组（镜像仓库、集群启停、升级等）。&lt;br&gt;
这已经超出“第一次搭起来”的范围，但方向应是：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;先用 Docker / &lt;code&gt;obd demo&lt;/code&gt; 跑通连接&lt;/li&gt;
&lt;li&gt;再学 OBD 配置文件与集群拓扑&lt;/li&gt;
&lt;li&gt;最后再上 K8s operator&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="八连接后的最小验收清单"&gt;&lt;a href="#%e5%85%ab%e8%bf%9e%e6%8e%a5%e5%90%8e%e7%9a%84%e6%9c%80%e5%b0%8f%e9%aa%8c%e6%94%b6%e6%b8%85%e5%8d%95" class="header-anchor"&gt;&lt;/a&gt;八、连接后的最小验收清单
&lt;/h2&gt;&lt;p&gt;不管你用哪种平台，搭完后建议做同一套验收：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-sql" data-lang="sql"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;-- 1. 能登录
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="k"&gt;SELECT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;-- 2. 看版本信息
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="k"&gt;SELECT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;version&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;-- 3. 建库建表
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="k"&gt;CREATE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;DATABASE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;demo&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="n"&gt;USE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;demo&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="k"&gt;CREATE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;TABLE&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;t1&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;id&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;INT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;PRIMARY&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;KEY&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;name&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;VARCHAR&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;64&lt;/span&gt;&lt;span class="p"&gt;));&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="k"&gt;INSERT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;INTO&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;t1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;VALUES&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;oceanbase&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="k"&gt;SELECT&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;*&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;FROM&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;t1&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;宿主机侧再确认：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# 端口监听&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# Linux&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;ss -lntp &lt;span class="p"&gt;|&lt;/span&gt; grep &lt;span class="m"&gt;2881&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# macOS&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;lsof -iTCP:2881 -sTCP:LISTEN
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="九常见问题排查"&gt;&lt;a href="#%e4%b9%9d%e5%b8%b8%e8%a7%81%e9%97%ae%e9%a2%98%e6%8e%92%e6%9f%a5" class="header-anchor"&gt;&lt;/a&gt;九、常见问题排查
&lt;/h2&gt;&lt;h3 id="1-容器一直起不来--没有-boot-success"&gt;&lt;a href="#1-%e5%ae%b9%e5%99%a8%e4%b8%80%e7%9b%b4%e8%b5%b7%e4%b8%8d%e6%9d%a5--%e6%b2%a1%e6%9c%89-boot-success" class="header-anchor"&gt;&lt;/a&gt;1. 容器一直起不来 / 没有 &lt;code&gt;boot success!&lt;/code&gt;
&lt;/h3&gt;&lt;p&gt;优先检查：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;内存是否低于 8GB（Docker 场景）&lt;/li&gt;
&lt;li&gt;磁盘是否紧张&lt;/li&gt;
&lt;li&gt;&lt;code&gt;docker logs oceanbase-ce&lt;/code&gt; 是否有 OOM / 权限 / 存储错误&lt;/li&gt;
&lt;li&gt;是否重复占用容器名 &lt;code&gt;oceanbase-ce&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;处理：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;docker rm -f oceanbase-ce
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;docker run -p 2881:2881 --name oceanbase-ce -e &lt;span class="nv"&gt;MODE&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;mini -d oceanbase/oceanbase-ce
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="2-2881-端口冲突"&gt;&lt;a href="#2-2881-%e7%ab%af%e5%8f%a3%e5%86%b2%e7%aa%81" class="header-anchor"&gt;&lt;/a&gt;2. &lt;code&gt;2881&lt;/code&gt; 端口冲突
&lt;/h3&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# 换宿主机端口映射，例如 12881 -&amp;gt; 2881&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;docker run -p 12881:2881 --name oceanbase-ce -e &lt;span class="nv"&gt;MODE&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;mini -d oceanbase/oceanbase-ce
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;mysql -h127.0.0.1 -P12881 -uroot
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="3-docker-hub-拉取失败"&gt;&lt;a href="#3-docker-hub-%e6%8b%89%e5%8f%96%e5%a4%b1%e8%b4%a5" class="header-anchor"&gt;&lt;/a&gt;3. Docker Hub 拉取失败
&lt;/h3&gt;&lt;p&gt;依次尝试：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;code&gt;quay.io/oceanbase/oceanbase-ce&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ghcr.io/oceanbase/oceanbase-ce&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;配置可用的镜像加速 / 代理&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id="4-能进容器但不能从宿主机连接"&gt;&lt;a href="#4-%e8%83%bd%e8%bf%9b%e5%ae%b9%e5%99%a8%e4%bd%86%e4%b8%8d%e8%83%bd%e4%bb%8e%e5%ae%bf%e4%b8%bb%e6%9c%ba%e8%bf%9e%e6%8e%a5" class="header-anchor"&gt;&lt;/a&gt;4. 能进容器但不能从宿主机连接
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;确认 &lt;code&gt;-p 2881:2881&lt;/code&gt; 已映射&lt;/li&gt;
&lt;li&gt;Windows/macOS 确认 Docker Desktop 正在运行&lt;/li&gt;
&lt;li&gt;云服务器还要放行安全组/防火墙入站规则&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="5-obd-demo-预检失败"&gt;&lt;a href="#5-obd-demo-%e9%a2%84%e6%a3%80%e5%a4%b1%e8%b4%a5" class="header-anchor"&gt;&lt;/a&gt;5. &lt;code&gt;obd demo&lt;/code&gt; 预检失败
&lt;/h3&gt;&lt;p&gt;对照官方条件逐项查：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;内存、CPU、磁盘是否达标&lt;/li&gt;
&lt;li&gt;2881/2882 是否被占用&lt;/li&gt;
&lt;li&gt;是否在非 Linux 环境误跑 all-in-one&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="十平台选型建议实战版"&gt;&lt;a href="#%e5%8d%81%e5%b9%b3%e5%8f%b0%e9%80%89%e5%9e%8b%e5%bb%ba%e8%ae%ae%e5%ae%9e%e6%88%98%e7%89%88" class="header-anchor"&gt;&lt;/a&gt;十、平台选型建议（实战版）
&lt;/h2&gt;&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;你的目标&lt;/th&gt;
					&lt;th&gt;建议&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;30 分钟内先连上跑 SQL&lt;/td&gt;
					&lt;td&gt;Docker &lt;code&gt;MODE=mini&lt;/code&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;在 Linux 服务器练官方部署工具&lt;/td&gt;
					&lt;td&gt;all-in-one + &lt;code&gt;obd demo&lt;/code&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;Windows 笔记本本地体验&lt;/td&gt;
					&lt;td&gt;Docker Desktop&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;macOS 开发机联调&lt;/td&gt;
					&lt;td&gt;Docker Desktop&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;学习 K8s 运维&lt;/td&gt;
					&lt;td&gt;ob-operator&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;准备生产环境&lt;/td&gt;
					&lt;td&gt;不要直接用体验镜像；按正式部署/高可用架构与官方生产文档规划&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;一句话总结：&lt;/p&gt;

 &lt;blockquote&gt;
 &lt;p&gt;&lt;strong&gt;跨平台先 Docker；Linux 深造用 OBD；生产上集群/K8s，不要拿体验镜像硬上。&lt;/strong&gt;&lt;/p&gt;

 &lt;/blockquote&gt;
&lt;h2 id="十一精简命令速查"&gt;&lt;a href="#%e5%8d%81%e4%b8%80%e7%b2%be%e7%ae%80%e5%91%bd%e4%bb%a4%e9%80%9f%e6%9f%a5" class="header-anchor"&gt;&lt;/a&gt;十一、精简命令速查
&lt;/h2&gt;&lt;h3 id="docker全平台"&gt;&lt;a href="#docker%e5%85%a8%e5%b9%b3%e5%8f%b0" class="header-anchor"&gt;&lt;/a&gt;Docker（全平台）
&lt;/h3&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;docker run -p 2881:2881 --name oceanbase-ce -e &lt;span class="nv"&gt;MODE&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;mini -d oceanbase/oceanbase-ce
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;docker logs oceanbase-ce &lt;span class="p"&gt;|&lt;/span&gt; tail -1
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;docker &lt;span class="nb"&gt;exec&lt;/span&gt; -it oceanbase-ce obclient -h127.0.0.1 -P2881 -uroot
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="linux-all-in-one"&gt;&lt;a href="#linux-all-in-one" class="header-anchor"&gt;&lt;/a&gt;Linux all-in-one
&lt;/h3&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;bash -c &lt;span class="s2"&gt;&amp;#34;&lt;/span&gt;&lt;span class="k"&gt;$(&lt;/span&gt;curl -s https://obbusiness-private.oss-cn-shanghai.aliyuncs.com/download-center/opensource/oceanbase-all-in-one/installer.sh&lt;span class="k"&gt;)&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nb"&gt;source&lt;/span&gt; ~/.oceanbase-all-in-one/bin/env.sh
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;obd demo
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;obclient -h127.0.0.1 -uroot -P2881
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="obd-rpmcentosrhel"&gt;&lt;a href="#obd-rpmcentosrhel" class="header-anchor"&gt;&lt;/a&gt;OBD RPM（CentOS/RHEL）
&lt;/h3&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;sudo yum install -y yum-utils
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;sudo yum-config-manager --add-repo https://mirrors.aliyun.com/oceanbase/OceanBase.repo
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;sudo yum install -y ob-deploy
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nb"&gt;source&lt;/span&gt; /etc/profile.d/obd.sh
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;obd demo
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="总结"&gt;&lt;a href="#%e6%80%bb%e7%bb%93" class="header-anchor"&gt;&lt;/a&gt;总结
&lt;/h2&gt;&lt;p&gt;OceanBase 的“多平台搭建”并不要求你在每个 OS 上都原生编译一套数据库：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Docker&lt;/strong&gt; 是 Linux / Windows / macOS 的最大公约数，适合快速体验与开发联调。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Linux all-in-one + OBD&lt;/strong&gt; 更接近官方部署工具体验，适合服务器环境。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Windows / macOS&lt;/strong&gt; 应把精力放在 Docker Desktop（或 WSL2）而不是强行原生部署。&lt;/li&gt;
&lt;li&gt;需要容器编排时，转向 &lt;strong&gt;ob-operator&lt;/strong&gt;，而不是把 &lt;code&gt;oceanbase-ce&lt;/code&gt; 体验镜像直接当生产方案。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;先保证“能启动、能连接、能建表”，再进入租户管理、资源规格、多副本和高可用，路径会清晰很多。&lt;/p&gt;
&lt;h2 id="参考资料"&gt;&lt;a href="#%e5%8f%82%e8%80%83%e8%b5%84%e6%96%99" class="header-anchor"&gt;&lt;/a&gt;参考资料
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;OceanBase 官方仓库 README（中英文 Quick Start / Docker / all-in-one）：https://github.com/oceanbase/oceanbase&lt;/li&gt;
&lt;li&gt;OceanBase Docker 镜像说明（Docker Hub &lt;code&gt;oceanbase/oceanbase-ce&lt;/code&gt;）：https://hub.docker.com/r/oceanbase/oceanbase-ce&lt;/li&gt;
&lt;li&gt;OceanBase Docker 镜像仓库文档：https://github.com/oceanbase/docker-images&lt;/li&gt;
&lt;li&gt;OceanBase Deployer（OBD）中文 README：https://github.com/oceanbase/obdeploy&lt;/li&gt;
&lt;li&gt;ob-operator 文档：https://oceanbase.github.io/ob-operator&lt;/li&gt;
&lt;li&gt;OceanBase 中文文档中心：https://www.oceanbase.com/docs/oceanbase-database-cn&lt;/li&gt;
&lt;li&gt;快速体验入口：https://open.oceanbase.com/quickStart&lt;/li&gt;
&lt;/ul&gt;</description></item></channel></rss>