blob: 8cb9f0bfa3c3cd48ab04a008a7fa311b15446cca [file] [log] [blame]
<!DOCTYPE html>
<html lang="cn" class="js csstransforms3d">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
<meta name="generator" content="Hugo 0.70.0" />
<meta name="description" content="">
<meta name="buildDate" content="2021-04-17 09:13:16">
<link rel="shortcut icon" href="https://shardingsphere.apache.org/document/current/img/favicon.png" type="image/x-icon" />
<title>性能测试(sysbench) :: ShardingSphere</title>
<link href="https://shardingsphere.apache.org/document/current/css/nucleus.css?1618621996" rel="stylesheet">
<link href="https://shardingsphere.apache.org/document/current/css/font-awesome.min.css?1618621996" rel="stylesheet">
<link href="https://shardingsphere.apache.org/document/current/css/hybrid.css?1618621996" rel="stylesheet">
<link href="https://shardingsphere.apache.org/document/current/css/featherlight.min.css?1618621996" rel="stylesheet">
<link href="https://shardingsphere.apache.org/document/current/css/perfect-scrollbar.min.css?1618621996" rel="stylesheet">
<link href="https://shardingsphere.apache.org/document/current/css/auto-complete.css?1618621996" rel="stylesheet">
<link href="https://shardingsphere.apache.org/document/current/css/theme.css?1618621996" rel="stylesheet">
<link href="https://shardingsphere.apache.org/document/current/css/hugo-theme.css?1618621996" rel="stylesheet">
<link href="https://shardingsphere.apache.org/document/current/css/theme-black.css?1618621996" rel="stylesheet">
<script src="https://shardingsphere.apache.org/document/current/js/jquery-2.x.min.js?1618621996"></script>
<style type="text/css">
:root #header + #content > #left > #rlblock_left{
display:none !important;
}
</style>
</head>
<body class="" data-url="/cn/features/test-engine/performance-test-sysbench/">
<nav id="sidebar" class="">
<div id="header-wrapper">
<div id="header">
<a href="https://shardingsphere.apache.org/"><img src="https://shardingsphere.apache.org/document/current/img/logo_v2.png" /></a>
</div>
</div>
<div class="highlightable">
<ul class="topics">
<li data-nav-id="/cn/overview/" title="概览" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/cn/overview/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
</i>
<b>1. </b>概览
</a>
</li>
<li data-nav-id="/cn/quick-start/" title="快速入门" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/cn/quick-start/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>2. </b>快速入门
</a>
<ul>
<li data-nav-id="/cn/quick-start/shardingsphere-jdbc-quick-start/" title="ShardingSphere-JDBC" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/quick-start/shardingsphere-jdbc-quick-start/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>2.1. </b>ShardingSphere-JDBC
</a>
</li>
<li data-nav-id="/cn/quick-start/shardingsphere-proxy-quick-start/" title="ShardingSphere-Proxy" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/quick-start/shardingsphere-proxy-quick-start/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>2.2. </b>ShardingSphere-Proxy
</a>
</li>
<li data-nav-id="/cn/quick-start/shardingsphere-scaling-quick-start/" title="ShardingSphere-Scaling(Alpha)" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/quick-start/shardingsphere-scaling-quick-start/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>2.3. </b>ShardingSphere-Scaling(Alpha)
</a>
</li>
</ul>
</li>
<li data-nav-id="/cn/features/" title="概念 &amp; 功能" class="dd-item
parent
">
<a href="https://shardingsphere.apache.org/document/current/cn/features/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>3. </b>概念 &amp; 功能
</a>
<ul>
<li data-nav-id="/cn/features/sharding/" title="数据分片" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/cn/features/sharding/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>3.1. </b>数据分片
</a>
<ul>
<li data-nav-id="/cn/features/sharding/concept/" title="核心概念" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/cn/features/sharding/concept/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>3.1.1. </b>核心概念
</a>
<ul>
<li data-nav-id="/cn/features/sharding/concept/sql/" title="SQL" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/features/sharding/concept/sql/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
SQL
</a>
</li>
<li data-nav-id="/cn/features/sharding/concept/sharding/" title="分片" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/features/sharding/concept/sharding/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
分片
</a>
</li>
<li data-nav-id="/cn/features/sharding/concept/configuration/" title="配置" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/features/sharding/concept/configuration/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
配置
</a>
</li>
<li data-nav-id="/cn/features/sharding/concept/inline-expression/" title="行表达式" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/features/sharding/concept/inline-expression/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
行表达式
</a>
</li>
<li data-nav-id="/cn/features/sharding/concept/key-generator/" title="分布式主键" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/features/sharding/concept/key-generator/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
分布式主键
</a>
</li>
<li data-nav-id="/cn/features/sharding/concept/hint/" title="强制分片路由" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/features/sharding/concept/hint/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
强制分片路由
</a>
</li>
</ul>
</li>
<li data-nav-id="/cn/features/sharding/principle/" title="内核剖析" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/cn/features/sharding/principle/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>3.1.2. </b>内核剖析
</a>
<ul>
<li data-nav-id="/cn/features/sharding/principle/parse/" title="解析引擎" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/features/sharding/principle/parse/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
解析引擎
</a>
</li>
<li data-nav-id="/cn/features/sharding/principle/route/" title="路由引擎" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/features/sharding/principle/route/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
路由引擎
</a>
</li>
<li data-nav-id="/cn/features/sharding/principle/rewrite/" title="改写引擎" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/features/sharding/principle/rewrite/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
改写引擎
</a>
</li>
<li data-nav-id="/cn/features/sharding/principle/execute/" title="执行引擎" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/features/sharding/principle/execute/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
执行引擎
</a>
</li>
<li data-nav-id="/cn/features/sharding/principle/merge/" title="归并引擎" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/features/sharding/principle/merge/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
归并引擎
</a>
</li>
</ul>
</li>
<li data-nav-id="/cn/features/sharding/use-norms/" title="使用规范" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/cn/features/sharding/use-norms/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>3.1.3. </b>使用规范
</a>
<ul>
<li data-nav-id="/cn/features/sharding/use-norms/sql/" title="SQL" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/features/sharding/use-norms/sql/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
SQL
</a>
</li>
<li data-nav-id="/cn/features/sharding/use-norms/pagination/" title="分页" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/features/sharding/use-norms/pagination/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
分页
</a>
</li>
</ul>
</li>
</ul>
</li>
<li data-nav-id="/cn/features/transaction/" title="分布式事务" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/cn/features/transaction/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>3.2. </b>分布式事务
</a>
<ul>
<li data-nav-id="/cn/features/transaction/concept/" title="核心概念" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/cn/features/transaction/concept/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>3.2.1. </b>核心概念
</a>
<ul>
<li data-nav-id="/cn/features/transaction/concept/2pc-xa-transaction/" title="XA两阶段事务" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/features/transaction/concept/2pc-xa-transaction/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
XA两阶段事务
</a>
</li>
<li data-nav-id="/cn/features/transaction/concept/base-transaction-seata/" title="Seata 柔性事务" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/features/transaction/concept/base-transaction-seata/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Seata 柔性事务
</a>
</li>
</ul>
</li>
<li data-nav-id="/cn/features/transaction/principle/" title="实现原理" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/cn/features/transaction/principle/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>3.2.2. </b>实现原理
</a>
<ul>
<li data-nav-id="/cn/features/transaction/principle/2pc-xa-transaction/" title="XA两阶段事务" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/features/transaction/principle/2pc-xa-transaction/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
XA两阶段事务
</a>
</li>
<li data-nav-id="/cn/features/transaction/principle/base-transaction-seata/" title="Seata 柔性事务" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/features/transaction/principle/base-transaction-seata/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Seata 柔性事务
</a>
</li>
</ul>
</li>
<li data-nav-id="/cn/features/transaction/use-norms/" title="使用规范" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/cn/features/transaction/use-norms/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>3.2.3. </b>使用规范
</a>
<ul>
<li data-nav-id="/cn/features/transaction/use-norms/local-transaction/" title="本地事务" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/features/transaction/use-norms/local-transaction/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
本地事务
</a>
</li>
<li data-nav-id="/cn/features/transaction/use-norms/2pc-xa-transaction/" title="XA两阶段事务" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/features/transaction/use-norms/2pc-xa-transaction/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
XA两阶段事务
</a>
</li>
<li data-nav-id="/cn/features/transaction/use-norms/base-transaction-seata/" title="Seata 柔性事务" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/features/transaction/use-norms/base-transaction-seata/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Seata 柔性事务
</a>
</li>
</ul>
</li>
</ul>
</li>
<li data-nav-id="/cn/features/read-write-splitting/" title="读写分离" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/cn/features/read-write-splitting/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>3.3. </b>读写分离
</a>
<ul>
<li data-nav-id="/cn/features/read-write-splitting/concept/" title="核心概念" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/features/read-write-splitting/concept/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>3.3.1. </b>核心概念
</a>
</li>
<li data-nav-id="/cn/features/read-write-splitting/use-norms/" title="使用规范" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/features/read-write-splitting/use-norms/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>3.3.2. </b>使用规范
</a>
</li>
</ul>
</li>
<li data-nav-id="/cn/features/governance/" title="分布式治理" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/cn/features/governance/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>3.4. </b>分布式治理
</a>
<ul>
<li data-nav-id="/cn/features/governance/management/" title="治理" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/cn/features/governance/management/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>3.4.1 </b>治理
</a>
<ul>
<li data-nav-id="/cn/features/governance/management/config-center/" title="配置中心" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/features/governance/management/config-center/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
配置中心
</a>
</li>
<li data-nav-id="/cn/features/governance/management/registry-center/" title="注册中心" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/features/governance/management/registry-center/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
注册中心
</a>
</li>
<li data-nav-id="/cn/features/governance/management/dependency/" title="第三方组件依赖" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/features/governance/management/dependency/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
第三方组件依赖
</a>
</li>
</ul>
</li>
<li data-nav-id="/cn/features/governance/observability/" title="可观察性" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/cn/features/governance/observability/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>3.4.2 </b>可观察性
</a>
<ul>
<li data-nav-id="/cn/features/governance/observability/apm-integration/" title="应用性能监控集成" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/features/governance/observability/apm-integration/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
应用性能监控集成
</a>
</li>
<li data-nav-id="/cn/features/governance/observability/agnet/" title="Agent集成" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/features/governance/observability/agnet/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Agent集成
</a>
</li>
</ul>
</li>
</ul>
</li>
<li data-nav-id="/cn/features/scaling/" title="弹性伸缩" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/cn/features/scaling/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>3.5. </b>弹性伸缩
</a>
<ul>
<li data-nav-id="/cn/features/scaling/concept/" title="核心概念" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/features/scaling/concept/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>3.5.1. </b>核心概念
</a>
</li>
<li data-nav-id="/cn/features/scaling/principle/" title="实现原理" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/features/scaling/principle/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>3.5.2. </b>实现原理
</a>
</li>
<li data-nav-id="/cn/features/scaling/use-norms/" title="使用规范" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/features/scaling/use-norms/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>3.5.3. </b>使用规范
</a>
</li>
</ul>
</li>
<li data-nav-id="/cn/features/encrypt/" title="数据加密" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/cn/features/encrypt/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>3.6. </b>数据加密
</a>
<ul>
<li data-nav-id="/cn/features/encrypt/concept/" title="核心概念" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/features/encrypt/concept/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>3.6.1. </b>核心概念
</a>
</li>
<li data-nav-id="/cn/features/encrypt/principle/" title="实现原理" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/features/encrypt/principle/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>3.6.2. </b>实现原理
</a>
</li>
<li data-nav-id="/cn/features/encrypt/use-norms/" title="使用规范" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/features/encrypt/use-norms/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>3.6.3. </b>使用规范
</a>
</li>
</ul>
</li>
<li data-nav-id="/cn/features/shadow/" title="影子库压测" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/cn/features/shadow/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>3.7. </b>影子库压测
</a>
<ul>
<li data-nav-id="/cn/features/shadow/concept/" title="核心概念" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/features/shadow/concept/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>3.7.1. </b>核心概念
</a>
</li>
<li data-nav-id="/cn/features/shadow/principle/" title="实现原理" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/features/shadow/principle/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>3.7.2. </b>实现原理
</a>
</li>
</ul>
</li>
<li data-nav-id="/cn/features/dist-sql/" title="Dist SQL" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/cn/features/dist-sql/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>3.8. </b>Dist SQL
</a>
<ul>
<li data-nav-id="/cn/features/dist-sql/rdl/" title="RDL" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/features/dist-sql/rdl/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
RDL
</a>
</li>
<li data-nav-id="/cn/features/dist-sql/rql/" title="RQL" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/features/dist-sql/rql/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
RQL
</a>
</li>
<li data-nav-id="/cn/features/dist-sql/sctl/" title="SCTL" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/features/dist-sql/sctl/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
SCTL
</a>
</li>
</ul>
</li>
<li data-nav-id="/cn/features/pluggable-architecture/" title="可插拔架构" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/cn/features/pluggable-architecture/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
</i>
<b>3.9. </b>可插拔架构
</a>
</li>
<li data-nav-id="/cn/features/test-engine/" title="测试引擎" class="dd-item
parent
">
<a href="https://shardingsphere.apache.org/document/current/cn/features/test-engine/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>3.10. </b>测试引擎
</a>
<ul>
<li data-nav-id="/cn/features/test-engine/integration-test/" title="集成测试" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/features/test-engine/integration-test/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>3.9.1. </b>集成测试
</a>
</li>
<li data-nav-id="/cn/features/test-engine/parser-test/" title="SQL 解析测试" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/features/test-engine/parser-test/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>3.9.2. </b>SQL 解析测试
</a>
</li>
<li data-nav-id="/cn/features/test-engine/rewrite-test/" title="SQL 改写测试" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/features/test-engine/rewrite-test/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>3.9.3. </b>SQL 改写测试
</a>
</li>
<li data-nav-id="/cn/features/test-engine/performance-test/" title="性能测试" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/features/test-engine/performance-test/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>3.9.4. </b>性能测试
</a>
</li>
<li data-nav-id="/cn/features/test-engine/performance-test-sysbench/" title="性能测试(sysbench)" class="dd-item active">
<a href="https://shardingsphere.apache.org/document/current/cn/features/test-engine/performance-test-sysbench/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>3.9.5. </b>性能测试(sysbench)
</a>
</li>
</ul>
</li>
</ul>
</li>
<li data-nav-id="/cn/user-manual/" title="用户手册" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>4. </b>用户手册
</a>
<ul>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/" title="ShardingSphere-JDBC" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>4.1. </b>ShardingSphere-JDBC
</a>
<ul>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/usage/" title="使用手册" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/usage/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>4.1.1. </b>使用手册
</a>
<ul>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/usage/sharding/" title="数据分片" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/usage/sharding/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
数据分片
</a>
<ul>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/usage/sharding/java-api/" title="使用 Java API" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/usage/sharding/java-api/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
使用 Java API
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/usage/sharding/yaml/" title="使用 YAML 配置" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/usage/sharding/yaml/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
使用 YAML 配置
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/usage/sharding/spring-boot-starter/" title="使用 Spring Boot Starter" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/usage/sharding/spring-boot-starter/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
使用 Spring Boot Starter
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/usage/sharding/spring-namespace/" title="使用 Spring 命名空间" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/usage/sharding/spring-namespace/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
使用 Spring 命名空间
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/usage/sharding/hint/" title="强制路由" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/usage/sharding/hint/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
强制路由
</a>
</li>
</ul>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/usage/transaction/" title="分布式事务" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/usage/transaction/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
分布式事务
</a>
<ul>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/usage/transaction/java-api/" title="使用 Java API" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/usage/transaction/java-api/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
使用 Java API
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/usage/transaction/spring-boot-starter/" title="使用 Spring Boot Starter" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/usage/transaction/spring-boot-starter/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
使用 Spring Boot Starter
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/usage/transaction/spring-namespace/" title="使用 Spring 命名空间" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/usage/transaction/spring-namespace/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
使用 Spring 命名空间
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/usage/transaction/atomikos/" title="Atomikos 事务" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/usage/transaction/atomikos/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Atomikos 事务
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/usage/transaction/narayana/" title="Narayana 事务" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/usage/transaction/narayana/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Narayana 事务
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/usage/transaction/bitronix/" title="Bitronix 事务" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/usage/transaction/bitronix/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Bitronix 事务
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/usage/transaction/seata/" title="Seata 事务" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/usage/transaction/seata/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Seata 事务
</a>
</li>
</ul>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/usage/governance/" title="分布式治理" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/usage/governance/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
分布式治理
</a>
<ul>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/usage/governance/java-api/" title="使用 Java API" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/usage/governance/java-api/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
使用 Java API
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/usage/governance/yaml/" title="使用 YAML 配置" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/usage/governance/yaml/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
使用 YAML 配置
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/usage/governance/spring-boot-starter/" title="使用 Spring Boot Starter" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/usage/governance/spring-boot-starter/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
使用 Spring Boot Starter
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/usage/governance/spring-namespace/" title="使用 Spring 命名空间" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/usage/governance/spring-namespace/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
使用 Spring 命名空间
</a>
</li>
</ul>
</li>
</ul>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/configuration/" title="配置手册" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/configuration/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>4.1.2. </b>配置手册
</a>
<ul>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/configuration/java-api/" title="Java API" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/configuration/java-api/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
Java API
</a>
<ul>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/configuration/java-api/sharding/" title="数据分片" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/configuration/java-api/sharding/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
数据分片
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/configuration/java-api/read-write-splitting/" title="读写分离" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/configuration/java-api/read-write-splitting/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
读写分离
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/configuration/java-api/encrypt/" title="数据加密" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/configuration/java-api/encrypt/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
数据加密
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/configuration/java-api/shadow/" title="影子库" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/configuration/java-api/shadow/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
影子库
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/configuration/java-api/governance/" title="分布式治理" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/configuration/java-api/governance/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
分布式治理
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/configuration/java-api/mix/" title="混合规则" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/configuration/java-api/mix/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
混合规则
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/configuration/java-api/change-history/" title="变更历史" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/configuration/java-api/change-history/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
变更历史
</a>
</li>
</ul>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/configuration/yaml/" title="YAML 配置" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/configuration/yaml/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
YAML 配置
</a>
<ul>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/configuration/yaml/sharding/" title="数据分片" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/configuration/yaml/sharding/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
数据分片
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/configuration/yaml/read-write-splitting-/" title="读写分离" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/configuration/yaml/read-write-splitting-/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
读写分离
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/configuration/yaml/encrypt/" title="数据加密" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/configuration/yaml/encrypt/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
数据加密
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/configuration/yaml/shadow/" title="影子库" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/configuration/yaml/shadow/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
影子库
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/configuration/yaml/governance/" title="分布式治理" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/configuration/yaml/governance/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
分布式治理
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/configuration/yaml/mix/" title="混合规则" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/configuration/yaml/mix/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
混合规则
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/configuration/yaml/change-history/" title="变更历史" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/configuration/yaml/change-history/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
变更历史
</a>
</li>
</ul>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/" title="Spring Boot Starter 配置" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
Spring Boot Starter 配置
</a>
<ul>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/sharding/" title="数据分片" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/sharding/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
数据分片
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/read-write-splitting/" title="读写分离" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/read-write-splitting/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
读写分离
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/encrypt/" title="数据加密" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/encrypt/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
数据加密
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/shadow/" title="影子库" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/shadow/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
影子库
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/governance/" title="分布式治理" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/governance/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
分布式治理
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/mix/" title="混合规则" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/mix/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
混合规则
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/change-history/" title="变更历史" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/change-history/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
变更历史
</a>
</li>
</ul>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/configuration/spring-namespace/" title="Spring 命名空间配置" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/configuration/spring-namespace/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
Spring 命名空间配置
</a>
<ul>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/configuration/spring-namespace/sharding/" title="数据分片" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/configuration/spring-namespace/sharding/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
数据分片
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/configuration/spring-namespace/read-write-splitting/" title="读写分离" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/configuration/spring-namespace/read-write-splitting/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
读写分离
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/configuration/spring-namespace/encrypt/" title="数据加密" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/configuration/spring-namespace/encrypt/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
数据加密
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/configuration/spring-namespace/shadow/" title="影子库" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/configuration/spring-namespace/shadow/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
影子库
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/configuration/spring-namespace/governance/" title="分布式治理" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/configuration/spring-namespace/governance/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
分布式治理
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/configuration/spring-namespace/mix/" title="混合规则" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/configuration/spring-namespace/mix/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
混合规则
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/configuration/spring-namespace/change-history/" title="变更历史" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/configuration/spring-namespace/change-history/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
变更历史
</a>
</li>
</ul>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/configuration/built-in-algorithm/" title="内置算法" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/configuration/built-in-algorithm/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
内置算法
</a>
<ul>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/configuration/built-in-algorithm/sharding/" title="分片算法" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/configuration/built-in-algorithm/sharding/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
分片算法
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/configuration/built-in-algorithm/keygen/" title="分布式序列算法" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/configuration/built-in-algorithm/keygen/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
分布式序列算法
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/configuration/built-in-algorithm/load-balance/" title="负载均衡算法" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/configuration/built-in-algorithm/load-balance/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
负载均衡算法
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/configuration/built-in-algorithm/encrypt/" title="加密算法" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/configuration/built-in-algorithm/encrypt/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
加密算法
</a>
</li>
</ul>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/configuration/props/" title="属性配置" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/configuration/props/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
属性配置
</a>
</li>
</ul>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-jdbc/unsupported-items/" title="不支持项" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/unsupported-items/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>4.1.3. </b>不支持项
</a>
</li>
</ul>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-proxy/" title="ShardingSphere-Proxy" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-proxy/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>4.2. </b>ShardingSphere-Proxy
</a>
<ul>
<li data-nav-id="/cn/user-manual/shardingsphere-proxy/usage/" title="使用手册" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-proxy/usage/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>4.2.1. </b>使用手册
</a>
<ul>
<li data-nav-id="/cn/user-manual/shardingsphere-proxy/usage/startup/" title="Proxy 启动" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-proxy/usage/startup/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Proxy 启动
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-proxy/usage/governance/" title="分布式治理" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-proxy/usage/governance/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
分布式治理
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-proxy/usage/transaction/" title="分布式事务" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-proxy/usage/transaction/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
分布式事务
</a>
</li>
</ul>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-proxy/configuration/" title="配置手册" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-proxy/configuration/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>4.2.2. </b>配置手册
</a>
<ul>
<li data-nav-id="/cn/user-manual/shardingsphere-proxy/configuration/data-source/" title="数据源配置" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-proxy/configuration/data-source/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
数据源配置
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-proxy/configuration/authentication/" title="权限配置" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-proxy/configuration/authentication/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
权限配置
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-proxy/configuration/props/" title="属性配置" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-proxy/configuration/props/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
属性配置
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-proxy/configuration/yaml-syntax/" title="YAML 语法说明" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-proxy/configuration/yaml-syntax/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
YAML 语法说明
</a>
</li>
</ul>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-proxy/docker/" title="Docker 镜像" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-proxy/docker/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>4.2.3. </b>Docker 镜像
</a>
</li>
</ul>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-sidecar/" title="ShardingSphere-Sidecar" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-sidecar/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
</i>
<b>4.3. </b>ShardingSphere-Sidecar
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-scaling/" title="ShardingSphere-Scaling" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-scaling/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>4.4. </b>ShardingSphere-Scaling
</a>
<ul>
<li data-nav-id="/cn/user-manual/shardingsphere-scaling/build/" title="运行部署" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-scaling/build/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>4.4.1. </b>运行部署
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-scaling/usage/" title="使用手册" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-scaling/usage/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>4.4.2. </b>使用手册
</a>
</li>
</ul>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-ui/" title="ShardingSphere-UI" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-ui/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>4.5. </b>ShardingSphere-UI
</a>
<ul>
<li data-nav-id="/cn/user-manual/shardingsphere-ui/usage/" title="使用手册" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-ui/usage/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>4.5.1. </b>使用手册
</a>
<ul>
<li data-nav-id="/cn/user-manual/shardingsphere-ui/usage/build/" title="部署运行" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-ui/usage/build/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
部署运行
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-ui/usage/registry-center/" title="注册中心" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-ui/usage/registry-center/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
注册中心
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-ui/usage/rule-config/" title="规则配置" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-ui/usage/rule-config/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
规则配置
</a>
</li>
<li data-nav-id="/cn/user-manual/shardingsphere-ui/usage/runtime-status/" title="运行状态" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-ui/usage/runtime-status/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
运行状态
</a>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
<li data-nav-id="/cn/dev-manual/" title="开发者手册" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/cn/dev-manual/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>5. </b>开发者手册
</a>
<ul>
<li data-nav-id="/cn/dev-manual/sql-parser/" title="SQL 解析" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/dev-manual/sql-parser/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>5.1. </b>SQL 解析
</a>
</li>
<li data-nav-id="/cn/dev-manual/configuration/" title="配置" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/dev-manual/configuration/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>5.2. </b>配置
</a>
</li>
<li data-nav-id="/cn/dev-manual/kernel/" title="内核" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/dev-manual/kernel/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>5.3. </b>内核
</a>
</li>
<li data-nav-id="/cn/dev-manual/sharding/" title="数据分片" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/dev-manual/sharding/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>5.4. </b>数据分片
</a>
</li>
<li data-nav-id="/cn/dev-manual/read-write-splitting/" title="读写分离" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/dev-manual/read-write-splitting/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>5.5. </b>读写分离
</a>
</li>
<li data-nav-id="/cn/dev-manual/data-encryption/" title="数据加密" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/dev-manual/data-encryption/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>5.6. </b>数据加密
</a>
</li>
<li data-nav-id="/cn/dev-manual/sql-audit/" title="SQL 审计" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/dev-manual/sql-audit/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>5.7. </b>SQL 审计
</a>
</li>
<li data-nav-id="/cn/dev-manual/transaction/" title="分布式事务" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/dev-manual/transaction/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>5.8. </b>分布式事务
</a>
</li>
<li data-nav-id="/cn/dev-manual/governance/" title="分布式治理" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/dev-manual/governance/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>5.9. </b>分布式治理
</a>
</li>
<li data-nav-id="/cn/dev-manual/scaling/" title="弹性伸缩" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/dev-manual/scaling/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>5.10. </b>弹性伸缩
</a>
</li>
<li data-nav-id="/cn/dev-manual/proxy/" title="Proxy" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/cn/dev-manual/proxy/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>5.11. </b>Proxy
</a>
</li>
</ul>
</li>
<li data-nav-id="/cn/downloads/" title="下载" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/cn/downloads/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
</i>
<b>6. </b>下载
</a>
</li>
<li data-nav-id="/cn/faq/" title="FAQ" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/cn/faq/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
</i>
<b>7. </b>FAQ
</a>
</li>
</ul>
<section id="prefooter">
<hr/>
<ul>
<li>
<a class="padding">
<i class="fa fa-fw fa-language"></i>
<div class="select-style">
<select id="select-language" onchange="location = this.value;">
<option id="cn" value="/document/current/cn/features/test-engine/performance-test-sysbench/" selected>简体中文</option>
</select>
<svg version="1.1" id="Capa_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="255px" height="255px" viewBox="0 0 255 255" style="enable-background:new 0 0 255 255;" xml:space="preserve">
<g>
<g id="arrow-drop-down">
<polygon points="0,63.75 127.5,191.25 255,63.75 " />
</g>
</g>
</svg>
</div>
</a>
</li>
</ul>
</section>
<hr />
<a class="padding" href="https://shardingsphere.apache.org/pdf/shardingsphere_docs_cn.pdf">
<i class="fa fa-fw fa-file-pdf-o" ></i>&nbsp;下载PDF文档&nbsp;&nbsp;
</a>
<section id="footer">
<p></p>
</section>
</div>
</nav>
<section id="body">
<div id="overlay"></div>
<div class="padding highlightable">
<div>
<div id="top-bar">
<div id="top-github-link">
<a class="github-link" title='Edit this page' href="https://github.com/apache/shardingsphere/tree/master/docs/document/content/features/test-engine/performance-test-sysbench.cn.md" target="blank">
<i class="fa fa-code-fork"></i>
<span id="top-github-link-text">Edit this page</span>
</a>
</div>
<div id="breadcrumbs" itemscope="" itemtype="http://data-vocabulary.org/Breadcrumb">
<span id="sidebar-toggle-span">
<a href="#" id="sidebar-toggle" data-sidebar-toggle="">
<i class="fa fa-bars"></i>
</a>
</span>
<span id="toc-menu"><i class="fa fa-list-alt"></i></span>
<span class="links">
<a href='https://shardingsphere.apache.org/document/current/cn/'>ShardingSphere</a> > <a href='https://shardingsphere.apache.org/document/current/cn/features/'>概念 & 功能</a> > <a href='https://shardingsphere.apache.org/document/current/cn/features/test-engine/'>测试引擎</a> > 性能测试(sysbench)
</span>
</div>
</div>
</div>
<div id="body-inner">
<h1>性能测试(sysbench)</h1>
<nav id="TableOfContents">
<ul>
<li><a href="#环境">环境</a>
<ul>
<li></li>
</ul>
</li>
<li><a href="#测试方案">测试方案</a>
<ul>
<li></li>
</ul>
</li>
<li><a href="#测试过程">测试过程</a>
<ul>
<li></li>
</ul>
</li>
<li><a href="#sysbench测试用例分析">sysbench测试用例分析</a>
<ul>
<li></li>
</ul>
</li>
<li><a href="#附录1">附录1</a>
<ul>
<li></li>
</ul>
</li>
<li><a href="#附录2">附录2</a></li>
</ul>
</nav>
<h2 id="环境">环境</h2>
<h4 id="推荐硬件环境">推荐硬件环境</h4>
<pre><code>CPU: 32 Cores
RAM: 128 GB
NIC: 10Gb Ethernet
</code></pre><p>至少需要5台机器:</p>
<pre><code>Jenkins * 1: ${host-jenkins}
Sysbench * 1: ${host-sysbench}
ShardingSphere-Proxy * 1: ${host-proxy}
MySQL Server * 2: ${host-mysql-1}, ${host-mysql-2}
</code></pre><p>可以适当降低Jenkins和Sysbench机器的硬件标准</p>
<h4 id="软件环境">软件环境</h4>
<pre><code>Jenins: 最新版本
Sysbench: 1.0.20
ShardingSphere-Proxy: master分支代码打包
MySQL Server: 5.7.28
</code></pre><h2 id="测试方案">测试方案</h2>
<p>根据以上的硬件环境,配置参数如下,参数应根据硬件环境改变而调整</p>
<h4 id="shardingsphere-proxy配置">ShardingSphere-Proxy配置</h4>
<pre><code>Proxy运行在${host-proxy}机器
版本包括:Master分支版本、4.1.1版本、3.0.0版本
场景包括:config-sharding、config-replica-query、config-sharding-replica-query、config-encrypt
配置文件详细内容:见附录1
</code></pre><h4 id="mysql-server配置">MySQL Server配置</h4>
<p>两个MySQL实例分别运行在${host-mysql-1}和${host-mysql-2}机器</p>
<pre><code>需要提前在两个实例上创建sbtest数据库
设置参数max_prepared_stmt_count = 500000
设置参数max_connections = 2000
</code></pre><h4 id="jenkins配置">Jenkins配置</h4>
<p>创建6个Jenkins任务,每个任务依次调用下一个任务:(运行在${host-jenkins}机器)</p>
<pre><code>1. sysbench_install: 拉取最新代码,打包Proxy压缩包
</code></pre><p>以下任务通过Jenkins slave运行在单独的Sysbench发压机器:(运行在${host-sysbench}机器)</p>
<pre><code>2. sysbench_sharding:
a. 远程部署各版本Proxy的分片场景
b. 执行Sysbench命令压测Proxy
c. 执行Sysbench命令压测MySQL Server
d. 保存Sysbench压测结果
e. 使用画图脚本生成性能曲线和表格(画图脚本见附录2)
3. sysbench_master_slave:
a. 远程部署各版本Proxy的读写分离场景
b. 执行Sysbench命令压测Proxy
c. 执行Sysbench命令压测MySQL Server
d. 保存Sysbench压测结果
e. 使用画图脚本生成性能曲线和表格
4. sysbench_sharding_master_slave:
a. 远程部署各版本Proxy的分片+读写分离场景
b. 执行Sysbench命令压测Proxy
c. 执行Sysbench命令压测MySQL Server
d. 保存Sysbench压测结果
e. 使用画图脚本生成性能曲线和表格
5. sysbench_encrypt:
a. 远程部署各版本Proxy的加密场景
b. 执行Sysbench命令压测Proxy
c. 执行Sysbench命令压测MySQL Server
d. 保存Sysbench压测结果
e. 使用画图脚本生成性能曲线和表格
6. sysbench_result_aggregation:
a. 重新对所有任务的压测结果执行画图脚本
python3 plot_graph.py sharding
python3 plot_graph.py ms
python3 plot_graph.py sharding_ms
python3 plot_graph.py encrypt
b. 使用Jenkins的Publish HTML reports插件将所有图片整合到一个HTML页面中
</code></pre><h2 id="测试过程">测试过程</h2>
<p>以sysbench_sharding为例(其他场景类似)</p>
<h4 id="进入sysbench压测结果目录">进入sysbench压测结果目录</h4>
<p>cd /home/jenkins/sysbench_res/sharding</p>
<h4 id="创建本次构建的文件夹">创建本次构建的文件夹</h4>
<p>mkdir $BUILD_NUMBER</p>
<h4 id="取最后14次构建保存到隐藏文件中">取最后14次构建,保存到隐藏文件中</h4>
<p>ls -v | tail -n14 &gt; .build_number.txt</p>
<h4 id="部署及压测">部署及压测</h4>
<p>步骤1 执行远程部署脚本,部署Proxy到${host-proxy}</p>
<p>./deploy_sharding.sh</p>
<pre><code>#!/bin/sh
rm -fr apache-shardingsphere-*-shardingsphere-proxy-bin
tar zxvf apache-shardingsphere-*-shardingsphere-proxy-bin.tar.gz
sh stop_proxy.sh
cp -f prepared_conf/mysql-connector-java-5.1.47.jar apache-shardingsphere-*-shardingsphere-proxy-bin/lib
cp -f prepared_conf/start.sh apache-shardingsphere-*-shardingsphere-proxy-bin/bin
cp -f prepared_conf/config-sharding.yaml prepared_conf/server.yaml apache-shardingsphere-*-shardingsphere-proxy-bin/conf
./apache-shardingsphere-*-shardingsphere-proxy-bin/bin/start.sh
sleep 30
</code></pre><p>步骤2 执行sysbench脚本</p>
<pre><code># master
cd /home/jenkins/sysbench_res/sharding
cd $BUILD_NUMBER
sysbench oltp_read_only --mysql-host=${host-proxy} --mysql-port=3307 --mysql-user=root --mysql-password='root' --mysql-db=sbtest --tables=10 --table-size=1000000 --report-interval=10 --time=3600 --threads=10 --max-requests=0 --percentile=99 --mysql-ignore-errors=&quot;all&quot; --rand-type=uniform --range_selects=off --auto_inc=off cleanup
sysbench oltp_read_only --mysql-host=${host-proxy} --mysql-port=3307 --mysql-user=root --mysql-password='root' --mysql-db=sbtest --tables=10 --table-size=1000000 --report-interval=10 --time=3600 --threads=10 --max-requests=0 --percentile=99 --mysql-ignore-errors=&quot;all&quot; --rand-type=uniform --range_selects=off --auto_inc=off prepare
sysbench oltp_read_only --mysql-host=${host-proxy} --mysql-port=3307 --mysql-user=root --mysql-password='root' --mysql-db=sbtest --tables=10 --table-size=1000000 --report-interval=30 --time=180 --threads=256 --max-requests=0 --percentile=99 --mysql-ignore-errors=&quot;all&quot; --range_selects=off --rand-type=uniform --auto_inc=off run
sysbench oltp_read_only --mysql-host=${host-proxy} --mysql-port=3307 --mysql-user=root --mysql-password='root' --mysql-db=sbtest --tables=10 --table-size=1000000 --report-interval=30 --time=180 --threads=256 --max-requests=0 --percentile=99 --mysql-ignore-errors=&quot;all&quot; --range_selects=off --rand-type=uniform --auto_inc=off run | tee oltp_read_only.master.txt
sysbench oltp_point_select --mysql-host=${host-proxy} --mysql-port=3307 --mysql-user=root --mysql-password='root' --mysql-db=sbtest --tables=10 --table-size=1000000 --report-interval=30 --time=180 --threads=256 --max-requests=0 --percentile=99 --mysql-ignore-errors=&quot;all&quot; --range_selects=off --rand-type=uniform --auto_inc=off run | tee oltp_point_select.master.txt
sysbench oltp_read_write --mysql-host=${host-proxy} --mysql-port=3307 --mysql-user=root --mysql-password='root' --mysql-db=sbtest --tables=10 --table-size=1000000 --report-interval=30 --time=180 --threads=256 --max-requests=0 --percentile=99 --mysql-ignore-errors=&quot;all&quot; --range_selects=off --rand-type=uniform --auto_inc=off run | tee oltp_read_write.master.txt
sysbench oltp_write_only --mysql-host=${host-proxy} --mysql-port=3307 --mysql-user=root --mysql-password='root' --mysql-db=sbtest --tables=10 --table-size=1000000 --report-interval=30 --time=180 --threads=256 --max-requests=0 --percentile=99 --mysql-ignore-errors=&quot;all&quot; --range_selects=off --rand-type=uniform --auto_inc=off run | tee oltp_write_only.master.txt
sysbench oltp_update_index --mysql-host=${host-proxy} --mysql-port=3307 --mysql-user=root --mysql-password='root' --mysql-db=sbtest --tables=10 --table-size=1000000 --report-interval=30 --time=180 --threads=256 --max-requests=0 --percentile=99 --mysql-ignore-errors=&quot;all&quot; --range_selects=off --rand-type=uniform --auto_inc=off run | tee oltp_update_index.master.txt
sysbench oltp_update_non_index --mysql-host=${host-proxy} --mysql-port=3307 --mysql-user=root --mysql-password='root' --mysql-db=sbtest --tables=10 --table-size=1000000 --report-interval=30 --time=180 --threads=256 --max-requests=0 --percentile=99 --mysql-ignore-errors=&quot;all&quot; --range_selects=off --rand-type=uniform --auto_inc=off run | tee oltp_update_non_index.master.txt
sysbench oltp_delete --mysql-host=${host-proxy} --mysql-port=3307 --mysql-user=root --mysql-password='root' --mysql-db=sbtest --tables=10 --table-size=1000000 --report-interval=30 --time=180 --threads=256 --max-requests=0 --percentile=99 --mysql-ignore-errors=&quot;all&quot; --range_selects=off --rand-type=uniform --auto_inc=off run | tee oltp_delete.master.txt
sysbench oltp_read_only --mysql-host=${host-proxy} --mysql-port=3307 --mysql-user=root --mysql-password='root' --mysql-db=sbtest --tables=10 --table-size=1000000 --report-interval=10 --time=3600 --threads=10 --max-requests=0 --percentile=99 --mysql-ignore-errors=&quot;all&quot; --rand-type=uniform --range_selects=off --auto_inc=off cleanup
</code></pre><p>4.1.1、3.0.0、直连MySQL这三个场景,重复上面步骤1和步骤2</p>
<h4 id="执行停止proxy脚本">执行停止Proxy脚本</h4>
<p>./stop_proxy.sh</p>
<pre><code>#!/bin/sh
./3.0.0_sharding-proxy/bin/stop.sh
./4.1.1_apache-shardingsphere-4.1.1-sharding-proxy-bin/bin/stop.sh
./apache-shardingsphere-*-shardingsphere-proxy-bin/bin/stop.sh
</code></pre><h4 id="生成压测曲线图片">生成压测曲线图片</h4>
<pre><code># Generate graph
cd /home/jenkins/sysbench_res/
python3 plot_graph.py sharding
</code></pre><h4 id="利用jenkins的-publish-html-reports插件-将图片发布到页面里">利用Jenkins的 Publish HTML reports插件 将图片发布到页面里</h4>
<pre><code>HTML directory to archive: /home/jenkins/sysbench_res/graph/
Index page[s]: 01_sharding.html
Report title: HTML Report
</code></pre><h2 id="sysbench测试用例分析">sysbench测试用例分析</h2>
<h4 id="oltp_point_select">oltp_point_select</h4>
<pre><code>Prepare Statement (ID = 1): SELECT c FROM sbtest1 WHERE id=?
Execute Statement: ID = 1
</code></pre><h4 id="oltp_read_only">oltp_read_only</h4>
<pre><code>Prepare Statement (ID = 1): 'COMMIT'
Prepare Statement (ID = 2): SELECT c FROM sbtest1 WHERE id=?
Statement: 'BEGIN'
Execute Statement: ID = 2
Execute Statement: ID = 2
Execute Statement: ID = 2
Execute Statement: ID = 2
Execute Statement: ID = 2
Execute Statement: ID = 2
Execute Statement: ID = 2
Execute Statement: ID = 2
Execute Statement: ID = 2
Execute Statement: ID = 2
Execute Statement: ID = 1
</code></pre><h4 id="oltp_write_only">oltp_write_only</h4>
<pre><code>Prepare Statement (ID = 1): 'COMMIT'
Prepare Statement (ID = 2): UPDATE sbtest1 SET k=k+1 WHERE id=?
Prepare Statement (ID = 3): UPDATE sbtest6 SET c=? WHERE id=?
Prepare Statement (ID = 4): DELETE FROM sbtest1 WHERE id=?
Prepare Statement (ID = 5): INSERT INTO sbtest1 (id, k, c, pad) VALUES (?, ?, ?, ?)
Statement: 'BEGIN'
Execute Statement: ID = 2
Execute Statement: ID = 3
Execute Statement: ID = 4
Execute Statement: ID = 5
Execute Statement: ID = 1
</code></pre><h4 id="oltp_read_write">oltp_read_write</h4>
<pre><code>Prepare Statement (ID = 1): 'COMMIT'
Prepare Statement (ID = 2): SELECT c FROM sbtest1 WHERE id=?
Prepare Statement (ID = 3): UPDATE sbtest3 SET k=k+1 WHERE id=?
Prepare Statement (ID = 4): UPDATE sbtest10 SET c=? WHERE id=?
Prepare Statement (ID = 5): DELETE FROM sbtest8 WHERE id=?
Prepare Statement (ID = 6): INSERT INTO sbtest8 (id, k, c, pad) VALUES (?, ?, ?, ?)
Statement: 'BEGIN'
Execute Statement: ID = 2
Execute Statement: ID = 2
Execute Statement: ID = 2
Execute Statement: ID = 2
Execute Statement: ID = 2
Execute Statement: ID = 2
Execute Statement: ID = 2
Execute Statement: ID = 2
Execute Statement: ID = 2
Execute Statement: ID = 2
Execute Statement: ID = 3
Execute Statement: ID = 4
Execute Statement: ID = 5
Execute Statement: ID = 6
Execute Statement: ID = 1
</code></pre><h4 id="oltp_update_index">oltp_update_index</h4>
<pre><code>Prepare Statement (ID = 1): UPDATE sbtest1 SET k=k+1 WHERE id=?
Execute Statement: ID = 1
</code></pre><h4 id="oltp_update_non_index">oltp_update_non_index</h4>
<pre><code>Prepare Statement (ID = 1): UPDATE sbtest1 SET c=? WHERE id=?
Execute Statement: ID = 1
</code></pre><h4 id="oltp_delete">oltp_delete</h4>
<pre><code>Prepare Statement (ID = 1): DELETE FROM sbtest1 WHERE id=?
Execute Statement: ID = 1
</code></pre><h2 id="附录1">附录1</h2>
<h4 id="master-branch-version">Master branch version</h4>
<p>server.yaml</p>
<div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-yaml" data-lang="yaml"><span style="color:#66d9ef">authentication</span>:
<span style="color:#66d9ef">users</span>:
<span style="color:#66d9ef">root</span>:
<span style="color:#66d9ef">password</span>: root
<span style="color:#66d9ef">sharding</span>:
<span style="color:#66d9ef">password</span>: sharding
<span style="color:#66d9ef">props</span>:
<span style="color:#66d9ef">max-connections-size-per-query</span>: <span style="color:#ae81ff">10</span>
<span style="color:#66d9ef">executor-size</span>: <span style="color:#ae81ff">128</span> <span style="color:#75715e"># Infinite by default.</span>
<span style="color:#66d9ef">proxy-frontend-flush-threshold</span>: <span style="color:#ae81ff">128</span> <span style="color:#75715e"># The default value is 128.</span>
<span style="color:#75715e"># LOCAL: Proxy will run with LOCAL transaction.</span>
<span style="color:#75715e"># XA: Proxy will run with XA transaction.</span>
<span style="color:#75715e"># BASE: Proxy will run with B.A.S.E transaction.</span>
<span style="color:#66d9ef">proxy-transaction-type</span>: LOCAL
<span style="color:#66d9ef">proxy-opentracing-enabled</span>: <span style="color:#66d9ef">false</span>
<span style="color:#66d9ef">proxy-hint-enabled</span>: <span style="color:#66d9ef">false</span>
<span style="color:#66d9ef">query-with-cipher-column</span>: <span style="color:#66d9ef">true</span>
<span style="color:#66d9ef">sql-show</span>: <span style="color:#66d9ef">false</span>
<span style="color:#66d9ef">check-table-metadata-enabled</span>: <span style="color:#66d9ef">false</span>
<span style="color:#66d9ef">lock-wait-timeout-milliseconds</span>: <span style="color:#ae81ff">50000</span> <span style="color:#75715e"># The maximum time to wait for a lock</span>
</code></pre></div><p>config-sharding.yaml</p>
<div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-yaml" data-lang="yaml">
<span style="color:#66d9ef">schemaName</span>: sbtest
<span style="color:#66d9ef">dataSources</span>:
<span style="color:#66d9ef">ds_0</span>:
<span style="color:#66d9ef">url</span>: jdbc:mysql://${host-mysql<span style="color:#ae81ff">-1</span>}:<span style="color:#ae81ff">3306</span>/sbtest?serverTimezone=UTC<span style="color:#75715e">&amp;useSSL=false</span>
<span style="color:#66d9ef">username</span>: root
<span style="color:#66d9ef">password</span>:
<span style="color:#66d9ef">connectionTimeoutMilliseconds</span>: <span style="color:#ae81ff">30000</span>
<span style="color:#66d9ef">idleTimeoutMilliseconds</span>: <span style="color:#ae81ff">60000</span>
<span style="color:#66d9ef">maxLifetimeMilliseconds</span>: <span style="color:#ae81ff">1800000</span>
<span style="color:#66d9ef">maxPoolSize</span>: <span style="color:#ae81ff">256</span>
<span style="color:#66d9ef">minPoolSize</span>: <span style="color:#ae81ff">256</span>
<span style="color:#66d9ef">maintenanceIntervalMilliseconds</span>: <span style="color:#ae81ff">30000</span>
<span style="color:#66d9ef">ds_1</span>:
<span style="color:#66d9ef">url</span>: jdbc:mysql://${host-mysql<span style="color:#ae81ff">-2</span>}:<span style="color:#ae81ff">3306</span>/sbtest?serverTimezone=UTC<span style="color:#75715e">&amp;useSSL=false</span>
<span style="color:#66d9ef">username</span>: root
<span style="color:#66d9ef">password</span>:
<span style="color:#66d9ef">connectionTimeoutMilliseconds</span>: <span style="color:#ae81ff">30000</span>
<span style="color:#66d9ef">idleTimeoutMilliseconds</span>: <span style="color:#ae81ff">60000</span>
<span style="color:#66d9ef">maxLifetimeMilliseconds</span>: <span style="color:#ae81ff">1800000</span>
<span style="color:#66d9ef">maxPoolSize</span>: <span style="color:#ae81ff">256</span>
<span style="color:#66d9ef">minPoolSize</span>: <span style="color:#ae81ff">256</span>
<span style="color:#66d9ef">maintenanceIntervalMilliseconds</span>: <span style="color:#ae81ff">30000</span>
<span style="color:#66d9ef">rules</span>:
- !SHARDING
<span style="color:#66d9ef">tables</span>:
<span style="color:#66d9ef">sbtest1</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest1_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">standard</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">shardingAlgorithmName</span>: table_inline_1
<span style="color:#66d9ef">keyGenerateStrategy</span>:
<span style="color:#66d9ef">column</span>: id
<span style="color:#66d9ef">keyGeneratorName</span>: snowflake
<span style="color:#66d9ef">sbtest2</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest2_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">standard</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">shardingAlgorithmName</span>: table_inline_2
<span style="color:#66d9ef">keyGenerateStrategy</span>:
<span style="color:#66d9ef">column</span>: id
<span style="color:#66d9ef">keyGeneratorName</span>: snowflake
<span style="color:#66d9ef">sbtest3</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest3_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">standard</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">shardingAlgorithmName</span>: table_inline_3
<span style="color:#66d9ef">keyGenerateStrategy</span>:
<span style="color:#66d9ef">column</span>: id
<span style="color:#66d9ef">keyGeneratorName</span>: snowflake
<span style="color:#66d9ef">sbtest4</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest4_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">standard</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">shardingAlgorithmName</span>: table_inline_4
<span style="color:#66d9ef">keyGenerateStrategy</span>:
<span style="color:#66d9ef">column</span>: id
<span style="color:#66d9ef">keyGeneratorName</span>: snowflake
<span style="color:#66d9ef">sbtest5</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest5_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">standard</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">shardingAlgorithmName</span>: table_inline_5
<span style="color:#66d9ef">keyGenerateStrategy</span>:
<span style="color:#66d9ef">column</span>: id
<span style="color:#66d9ef">keyGeneratorName</span>: snowflake
<span style="color:#66d9ef">sbtest6</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest6_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">standard</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">shardingAlgorithmName</span>: table_inline_6
<span style="color:#66d9ef">keyGenerateStrategy</span>:
<span style="color:#66d9ef">column</span>: id
<span style="color:#66d9ef">keyGeneratorName</span>: snowflake
<span style="color:#66d9ef">sbtest7</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest7_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">standard</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">shardingAlgorithmName</span>: table_inline_7
<span style="color:#66d9ef">keyGenerateStrategy</span>:
<span style="color:#66d9ef">column</span>: id
<span style="color:#66d9ef">keyGeneratorName</span>: snowflake
<span style="color:#66d9ef">sbtest8</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest8_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">standard</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">shardingAlgorithmName</span>: table_inline_8
<span style="color:#66d9ef">keyGenerateStrategy</span>:
<span style="color:#66d9ef">column</span>: id
<span style="color:#66d9ef">keyGeneratorName</span>: snowflake
<span style="color:#66d9ef">sbtest9</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest9_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">standard</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">shardingAlgorithmName</span>: table_inline_9
<span style="color:#66d9ef">keyGenerateStrategy</span>:
<span style="color:#66d9ef">column</span>: id
<span style="color:#66d9ef">keyGeneratorName</span>: snowflake
<span style="color:#66d9ef">sbtest10</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest10_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">standard</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">shardingAlgorithmName</span>: table_inline_10
<span style="color:#66d9ef">keyGenerateStrategy</span>:
<span style="color:#66d9ef">column</span>: id
<span style="color:#66d9ef">keyGeneratorName</span>: snowflake
<span style="color:#66d9ef">defaultDatabaseStrategy</span>:
<span style="color:#66d9ef">standard</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">shardingAlgorithmName</span>: database_inline
<span style="color:#66d9ef">shardingAlgorithms</span>:
<span style="color:#66d9ef">database_inline</span>:
<span style="color:#66d9ef">type</span>: INLINE
<span style="color:#66d9ef">props</span>:
<span style="color:#66d9ef">algorithm-expression</span>: ds_${id % <span style="color:#ae81ff">2</span>}
<span style="color:#66d9ef">table_inline_1</span>:
<span style="color:#66d9ef">type</span>: INLINE
<span style="color:#66d9ef">props</span>:
<span style="color:#66d9ef">algorithm-expression</span>: sbtest1_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">table_inline_2</span>:
<span style="color:#66d9ef">type</span>: INLINE
<span style="color:#66d9ef">props</span>:
<span style="color:#66d9ef">algorithm-expression</span>: sbtest2_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">table_inline_3</span>:
<span style="color:#66d9ef">type</span>: INLINE
<span style="color:#66d9ef">props</span>:
<span style="color:#66d9ef">algorithm-expression</span>: sbtest3_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">table_inline_4</span>:
<span style="color:#66d9ef">type</span>: INLINE
<span style="color:#66d9ef">props</span>:
<span style="color:#66d9ef">algorithm-expression</span>: sbtest4_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">table_inline_5</span>:
<span style="color:#66d9ef">type</span>: INLINE
<span style="color:#66d9ef">props</span>:
<span style="color:#66d9ef">algorithm-expression</span>: sbtest5_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">table_inline_6</span>:
<span style="color:#66d9ef">type</span>: INLINE
<span style="color:#66d9ef">props</span>:
<span style="color:#66d9ef">algorithm-expression</span>: sbtest6_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">table_inline_7</span>:
<span style="color:#66d9ef">type</span>: INLINE
<span style="color:#66d9ef">props</span>:
<span style="color:#66d9ef">algorithm-expression</span>: sbtest7_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">table_inline_8</span>:
<span style="color:#66d9ef">type</span>: INLINE
<span style="color:#66d9ef">props</span>:
<span style="color:#66d9ef">algorithm-expression</span>: sbtest8_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">table_inline_9</span>:
<span style="color:#66d9ef">type</span>: INLINE
<span style="color:#66d9ef">props</span>:
<span style="color:#66d9ef">algorithm-expression</span>: sbtest9_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">table_inline_10</span>:
<span style="color:#66d9ef">type</span>: INLINE
<span style="color:#66d9ef">props</span>:
<span style="color:#66d9ef">algorithm-expression</span>: sbtest10_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">keyGenerators</span>:
<span style="color:#66d9ef">snowflake</span>:
<span style="color:#66d9ef">type</span>: SNOWFLAKE
<span style="color:#66d9ef">props</span>:
<span style="color:#66d9ef">worker-id</span>: <span style="color:#ae81ff">123</span>
</code></pre></div><p>config-replica-query.yaml</p>
<div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-yaml" data-lang="yaml"><span style="color:#66d9ef">schemaName</span>: sbtest
<span style="color:#66d9ef">dataSources</span>:
<span style="color:#66d9ef">ds_0</span>:
<span style="color:#66d9ef">url</span>: jdbc:mysql://${host-mysql<span style="color:#ae81ff">-1</span>}:<span style="color:#ae81ff">3306</span>/sbtest?serverTimezone=UTC<span style="color:#75715e">&amp;useSSL=false</span>
<span style="color:#66d9ef">username</span>: root
<span style="color:#66d9ef">password</span>:
<span style="color:#66d9ef">connectionTimeoutMilliseconds</span>: <span style="color:#ae81ff">30000</span>
<span style="color:#66d9ef">idleTimeoutMilliseconds</span>: <span style="color:#ae81ff">60000</span>
<span style="color:#66d9ef">maxLifetimeMilliseconds</span>: <span style="color:#ae81ff">1800000</span>
<span style="color:#66d9ef">maxPoolSize</span>: <span style="color:#ae81ff">128</span>
<span style="color:#66d9ef">minPoolSize</span>: <span style="color:#ae81ff">128</span>
<span style="color:#66d9ef">maintenanceIntervalMilliseconds</span>: <span style="color:#ae81ff">30000</span>
<span style="color:#66d9ef">rules</span>:
- !REPLICA_QUERY
<span style="color:#66d9ef">dataSources</span>:
<span style="color:#66d9ef">pr_ds</span>:
<span style="color:#66d9ef">name</span>: pr_ds
<span style="color:#66d9ef">primaryDataSourceName</span>: ds_0
<span style="color:#66d9ef">replicaDataSourceNames</span>:
- ds_0
- ds_0
</code></pre></div><p>config-sharding-replica-query.yaml</p>
<div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-yaml" data-lang="yaml"><span style="color:#66d9ef">schemaName</span>: sbtest
<span style="color:#66d9ef">dataSources</span>:
<span style="color:#66d9ef">primary_ds_0</span>:
<span style="color:#66d9ef">url</span>: jdbc:mysql://${host-mysql<span style="color:#ae81ff">-1</span>}:<span style="color:#ae81ff">3306</span>/sbtest?serverTimezone=UTC<span style="color:#75715e">&amp;useSSL=false</span>
<span style="color:#66d9ef">username</span>: root
<span style="color:#66d9ef">password</span>:
<span style="color:#66d9ef">connectionTimeoutMilliseconds</span>: <span style="color:#ae81ff">30000</span>
<span style="color:#66d9ef">idleTimeoutMilliseconds</span>: <span style="color:#ae81ff">60000</span>
<span style="color:#66d9ef">maxLifetimeMilliseconds</span>: <span style="color:#ae81ff">1800000</span>
<span style="color:#66d9ef">maxPoolSize</span>: <span style="color:#ae81ff">256</span>
<span style="color:#66d9ef">minPoolSize</span>: <span style="color:#ae81ff">256</span>
<span style="color:#66d9ef">maintenanceIntervalMilliseconds</span>: <span style="color:#ae81ff">30000</span>
<span style="color:#66d9ef">primary_ds_1</span>:
<span style="color:#66d9ef">url</span>: jdbc:mysql://${host-mysql<span style="color:#ae81ff">-2</span>}:<span style="color:#ae81ff">3306</span>/sbtest?serverTimezone=UTC<span style="color:#75715e">&amp;useSSL=false</span>
<span style="color:#66d9ef">username</span>: root
<span style="color:#66d9ef">password</span>:
<span style="color:#66d9ef">connectionTimeoutMilliseconds</span>: <span style="color:#ae81ff">30000</span>
<span style="color:#66d9ef">idleTimeoutMilliseconds</span>: <span style="color:#ae81ff">60000</span>
<span style="color:#66d9ef">maxLifetimeMilliseconds</span>: <span style="color:#ae81ff">1800000</span>
<span style="color:#66d9ef">maxPoolSize</span>: <span style="color:#ae81ff">256</span>
<span style="color:#66d9ef">minPoolSize</span>: <span style="color:#ae81ff">256</span>
<span style="color:#66d9ef">maintenanceIntervalMilliseconds</span>: <span style="color:#ae81ff">30000</span>
<span style="color:#66d9ef">rules</span>:
- !SHARDING
<span style="color:#66d9ef">tables</span>:
<span style="color:#66d9ef">sbtest1</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest1_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">standard</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">shardingAlgorithmName</span>: table_inline_1
<span style="color:#66d9ef">keyGenerateStrategy</span>:
<span style="color:#66d9ef">column</span>: id
<span style="color:#66d9ef">keyGeneratorName</span>: snowflake
<span style="color:#66d9ef">sbtest2</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest2_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">standard</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">shardingAlgorithmName</span>: table_inline_2
<span style="color:#66d9ef">keyGenerateStrategy</span>:
<span style="color:#66d9ef">column</span>: id
<span style="color:#66d9ef">keyGeneratorName</span>: snowflake
<span style="color:#66d9ef">sbtest3</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest3_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">standard</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">shardingAlgorithmName</span>: table_inline_3
<span style="color:#66d9ef">keyGenerateStrategy</span>:
<span style="color:#66d9ef">column</span>: id
<span style="color:#66d9ef">keyGeneratorName</span>: snowflake
<span style="color:#66d9ef">sbtest4</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest4_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">standard</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">shardingAlgorithmName</span>: table_inline_4
<span style="color:#66d9ef">keyGenerateStrategy</span>:
<span style="color:#66d9ef">column</span>: id
<span style="color:#66d9ef">keyGeneratorName</span>: snowflake
<span style="color:#66d9ef">sbtest5</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest5_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">standard</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">shardingAlgorithmName</span>: table_inline_5
<span style="color:#66d9ef">keyGenerateStrategy</span>:
<span style="color:#66d9ef">column</span>: id
<span style="color:#66d9ef">keyGeneratorName</span>: snowflake
<span style="color:#66d9ef">sbtest6</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest6_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">standard</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">shardingAlgorithmName</span>: table_inline_6
<span style="color:#66d9ef">keyGenerateStrategy</span>:
<span style="color:#66d9ef">column</span>: id
<span style="color:#66d9ef">keyGeneratorName</span>: snowflake
<span style="color:#66d9ef">sbtest7</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest7_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">standard</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">shardingAlgorithmName</span>: table_inline_7
<span style="color:#66d9ef">keyGenerateStrategy</span>:
<span style="color:#66d9ef">column</span>: id
<span style="color:#66d9ef">keyGeneratorName</span>: snowflake
<span style="color:#66d9ef">sbtest8</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest8_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">standard</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">shardingAlgorithmName</span>: table_inline_8
<span style="color:#66d9ef">keyGenerateStrategy</span>:
<span style="color:#66d9ef">column</span>: id
<span style="color:#66d9ef">keyGeneratorName</span>: snowflake
<span style="color:#66d9ef">sbtest9</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest9_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">standard</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">shardingAlgorithmName</span>: table_inline_9
<span style="color:#66d9ef">keyGenerateStrategy</span>:
<span style="color:#66d9ef">column</span>: id
<span style="color:#66d9ef">keyGeneratorName</span>: snowflake
<span style="color:#66d9ef">sbtest10</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest10_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">standard</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">shardingAlgorithmName</span>: table_inline_10
<span style="color:#66d9ef">keyGenerateStrategy</span>:
<span style="color:#66d9ef">column</span>: id
<span style="color:#66d9ef">keyGeneratorName</span>: snowflake
<span style="color:#66d9ef">defaultDatabaseStrategy</span>:
<span style="color:#66d9ef">standard</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">shardingAlgorithmName</span>: database_inline
<span style="color:#66d9ef">shardingAlgorithms</span>:
<span style="color:#66d9ef">database_inline</span>:
<span style="color:#66d9ef">type</span>: INLINE
<span style="color:#66d9ef">props</span>:
<span style="color:#66d9ef">algorithm-expression</span>: ds_${id % <span style="color:#ae81ff">2</span>}
<span style="color:#66d9ef">table_inline_1</span>:
<span style="color:#66d9ef">type</span>: INLINE
<span style="color:#66d9ef">props</span>:
<span style="color:#66d9ef">algorithm-expression</span>: sbtest1_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">table_inline_2</span>:
<span style="color:#66d9ef">type</span>: INLINE
<span style="color:#66d9ef">props</span>:
<span style="color:#66d9ef">algorithm-expression</span>: sbtest2_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">table_inline_3</span>:
<span style="color:#66d9ef">type</span>: INLINE
<span style="color:#66d9ef">props</span>:
<span style="color:#66d9ef">algorithm-expression</span>: sbtest3_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">table_inline_4</span>:
<span style="color:#66d9ef">type</span>: INLINE
<span style="color:#66d9ef">props</span>:
<span style="color:#66d9ef">algorithm-expression</span>: sbtest4_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">table_inline_5</span>:
<span style="color:#66d9ef">type</span>: INLINE
<span style="color:#66d9ef">props</span>:
<span style="color:#66d9ef">algorithm-expression</span>: sbtest5_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">table_inline_6</span>:
<span style="color:#66d9ef">type</span>: INLINE
<span style="color:#66d9ef">props</span>:
<span style="color:#66d9ef">algorithm-expression</span>: sbtest6_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">table_inline_7</span>:
<span style="color:#66d9ef">type</span>: INLINE
<span style="color:#66d9ef">props</span>:
<span style="color:#66d9ef">algorithm-expression</span>: sbtest7_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">table_inline_8</span>:
<span style="color:#66d9ef">type</span>: INLINE
<span style="color:#66d9ef">props</span>:
<span style="color:#66d9ef">algorithm-expression</span>: sbtest8_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">table_inline_9</span>:
<span style="color:#66d9ef">type</span>: INLINE
<span style="color:#66d9ef">props</span>:
<span style="color:#66d9ef">algorithm-expression</span>: sbtest9_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">table_inline_10</span>:
<span style="color:#66d9ef">type</span>: INLINE
<span style="color:#66d9ef">props</span>:
<span style="color:#66d9ef">algorithm-expression</span>: sbtest10_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">keyGenerators</span>:
<span style="color:#66d9ef">snowflake</span>:
<span style="color:#66d9ef">type</span>: SNOWFLAKE
<span style="color:#66d9ef">props</span>:
<span style="color:#66d9ef">worker-id</span>: <span style="color:#ae81ff">123</span>
- !REPLICA_QUERY
<span style="color:#66d9ef">dataSources</span>:
<span style="color:#66d9ef">ds_0</span>:
<span style="color:#66d9ef">name</span>: ds_0
<span style="color:#66d9ef">primaryDataSourceName</span>: primary_ds_0
<span style="color:#66d9ef">replicaDataSourceNames</span>:
- primary_ds_0
- primary_ds_0
<span style="color:#66d9ef">ds_1</span>:
<span style="color:#66d9ef">name</span>: ds_1
<span style="color:#66d9ef">primaryDataSourceName</span>: primary_ds_1
<span style="color:#66d9ef">replicaDataSourceNames</span>:
- primary_ds_1
- primary_ds_1
</code></pre></div><p>config-encrypt.yaml</p>
<div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-yaml" data-lang="yaml"><span style="color:#66d9ef">schemaName</span>: sbtest
<span style="color:#66d9ef">dataSources</span>:
<span style="color:#66d9ef">ds_0</span>:
<span style="color:#66d9ef">url</span>: jdbc:mysql://${host-mysql<span style="color:#ae81ff">-1</span>}:<span style="color:#ae81ff">3306</span>/sbtest?serverTimezone=UTC<span style="color:#75715e">&amp;useSSL=false</span>
<span style="color:#66d9ef">username</span>: root
<span style="color:#66d9ef">password</span>:
<span style="color:#66d9ef">connectionTimeoutMilliseconds</span>: <span style="color:#ae81ff">30000</span>
<span style="color:#66d9ef">idleTimeoutMilliseconds</span>: <span style="color:#ae81ff">60000</span>
<span style="color:#66d9ef">maxLifetimeMilliseconds</span>: <span style="color:#ae81ff">1800000</span>
<span style="color:#66d9ef">maxPoolSize</span>: <span style="color:#ae81ff">256</span>
<span style="color:#66d9ef">minPoolSize</span>: <span style="color:#ae81ff">256</span>
<span style="color:#66d9ef">maintenanceIntervalMilliseconds</span>: <span style="color:#ae81ff">30000</span>
<span style="color:#66d9ef">rules</span>:
- !ENCRYPT
<span style="color:#66d9ef">encryptors</span>:
<span style="color:#66d9ef">md5_encryptor</span>:
<span style="color:#66d9ef">type</span>: MD5
<span style="color:#66d9ef">tables</span>:
<span style="color:#66d9ef">sbtest1</span>:
<span style="color:#66d9ef">columns</span>:
<span style="color:#66d9ef">pad</span>:
<span style="color:#66d9ef">cipherColumn</span>: pad
<span style="color:#66d9ef">encryptorName</span>: md5_encryptor
<span style="color:#66d9ef">sbtest2</span>:
<span style="color:#66d9ef">columns</span>:
<span style="color:#66d9ef">pad</span>:
<span style="color:#66d9ef">cipherColumn</span>: pad
<span style="color:#66d9ef">encryptorName</span>: md5_encryptor
<span style="color:#66d9ef">sbtest3</span>:
<span style="color:#66d9ef">columns</span>:
<span style="color:#66d9ef">pad</span>:
<span style="color:#66d9ef">cipherColumn</span>: pad
<span style="color:#66d9ef">encryptorName</span>: md5_encryptor
<span style="color:#66d9ef">sbtest4</span>:
<span style="color:#66d9ef">columns</span>:
<span style="color:#66d9ef">pad</span>:
<span style="color:#66d9ef">cipherColumn</span>: pad
<span style="color:#66d9ef">encryptorName</span>: md5_encryptor
<span style="color:#66d9ef">sbtest5</span>:
<span style="color:#66d9ef">columns</span>:
<span style="color:#66d9ef">pad</span>:
<span style="color:#66d9ef">cipherColumn</span>: pad
<span style="color:#66d9ef">encryptorName</span>: md5_encryptor
<span style="color:#66d9ef">sbtest6</span>:
<span style="color:#66d9ef">columns</span>:
<span style="color:#66d9ef">pad</span>:
<span style="color:#66d9ef">cipherColumn</span>: pad
<span style="color:#66d9ef">encryptorName</span>: md5_encryptor
<span style="color:#66d9ef">sbtest7</span>:
<span style="color:#66d9ef">columns</span>:
<span style="color:#66d9ef">pad</span>:
<span style="color:#66d9ef">cipherColumn</span>: pad
<span style="color:#66d9ef">encryptorName</span>: md5_encryptor
<span style="color:#66d9ef">sbtest8</span>:
<span style="color:#66d9ef">columns</span>:
<span style="color:#66d9ef">pad</span>:
<span style="color:#66d9ef">cipherColumn</span>: pad
<span style="color:#66d9ef">encryptorName</span>: md5_encryptor
<span style="color:#66d9ef">sbtest9</span>:
<span style="color:#66d9ef">columns</span>:
<span style="color:#66d9ef">pad</span>:
<span style="color:#66d9ef">cipherColumn</span>: pad
<span style="color:#66d9ef">encryptorName</span>: md5_encryptor
<span style="color:#66d9ef">sbtest10</span>:
<span style="color:#66d9ef">columns</span>:
<span style="color:#66d9ef">pad</span>:
<span style="color:#66d9ef">cipherColumn</span>: pad
<span style="color:#66d9ef">encryptorName</span>: md5_encryptor
</code></pre></div><h4 id="411-version">4.1.1 version</h4>
<p>server.yaml</p>
<div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-yaml" data-lang="yaml"><span style="color:#66d9ef">authentication</span>:
<span style="color:#66d9ef">users</span>:
<span style="color:#66d9ef">root</span>:
<span style="color:#66d9ef">password</span>: root
<span style="color:#66d9ef">sharding</span>:
<span style="color:#66d9ef">password</span>: sharding
<span style="color:#66d9ef">authorizedSchemas</span>: sharding_db
<span style="color:#66d9ef">props</span>:
<span style="color:#66d9ef">max.connections.size.per.query</span>: <span style="color:#ae81ff">10</span>
<span style="color:#66d9ef">acceptor.size</span>: <span style="color:#ae81ff">256</span> <span style="color:#75715e"># The default value is available processors count * 2.</span>
<span style="color:#66d9ef">executor.size</span>: <span style="color:#ae81ff">128</span> <span style="color:#75715e"># Infinite by default.</span>
<span style="color:#66d9ef">proxy.frontend.flush.threshold</span>: <span style="color:#ae81ff">128</span> <span style="color:#75715e"># The default value is 128.</span>
<span style="color:#75715e"># LOCAL: Proxy will run with LOCAL transaction.</span>
<span style="color:#75715e"># XA: Proxy will run with XA transaction.</span>
<span style="color:#75715e"># BASE: Proxy will run with B.A.S.E transaction.</span>
<span style="color:#66d9ef">proxy.transaction.type</span>: LOCAL
<span style="color:#66d9ef">proxy.opentracing.enabled</span>: <span style="color:#66d9ef">false</span>
<span style="color:#66d9ef">proxy.hint.enabled</span>: <span style="color:#66d9ef">false</span>
<span style="color:#66d9ef">query.with.cipher.column</span>: <span style="color:#66d9ef">true</span>
<span style="color:#66d9ef">sql.show</span>: <span style="color:#66d9ef">false</span>
<span style="color:#66d9ef">allow.range.query.with.inline.sharding</span>: <span style="color:#66d9ef">false</span>
</code></pre></div><p>config-sharding.yaml</p>
<div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-yaml" data-lang="yaml"><span style="color:#66d9ef">schemaName</span>: sbtest
<span style="color:#66d9ef">dataSources</span>:
<span style="color:#66d9ef">ds_0</span>:
<span style="color:#66d9ef">url</span>: jdbc:mysql://${host-mysql<span style="color:#ae81ff">-1</span>}:<span style="color:#ae81ff">3306</span>/sbtest?serverTimezone=UTC<span style="color:#75715e">&amp;useSSL=false</span>
<span style="color:#66d9ef">username</span>: root
<span style="color:#66d9ef">password</span>:
<span style="color:#66d9ef">connectionTimeoutMilliseconds</span>: <span style="color:#ae81ff">30000</span>
<span style="color:#66d9ef">idleTimeoutMilliseconds</span>: <span style="color:#ae81ff">60000</span>
<span style="color:#66d9ef">maxLifetimeMilliseconds</span>: <span style="color:#ae81ff">1800000</span>
<span style="color:#66d9ef">maxPoolSize</span>: <span style="color:#ae81ff">256</span>
<span style="color:#66d9ef">ds_1</span>:
<span style="color:#66d9ef">url</span>: jdbc:mysql://${host-mysql<span style="color:#ae81ff">-2</span>}:<span style="color:#ae81ff">3306</span>/sbtest?serverTimezone=UTC<span style="color:#75715e">&amp;useSSL=false</span>
<span style="color:#66d9ef">username</span>: root
<span style="color:#66d9ef">password</span>:
<span style="color:#66d9ef">connectionTimeoutMilliseconds</span>: <span style="color:#ae81ff">30000</span>
<span style="color:#66d9ef">idleTimeoutMilliseconds</span>: <span style="color:#ae81ff">60000</span>
<span style="color:#66d9ef">maxLifetimeMilliseconds</span>: <span style="color:#ae81ff">1800000</span>
<span style="color:#66d9ef">maxPoolSize</span>: <span style="color:#ae81ff">256</span>
<span style="color:#66d9ef">shardingRule</span>:
<span style="color:#66d9ef">tables</span>:
<span style="color:#66d9ef">sbtest1</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest1_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: sbtest1_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">keyGenerator</span>:
<span style="color:#66d9ef">type</span>: SNOWFLAKE
<span style="color:#66d9ef">column</span>: id
<span style="color:#66d9ef">sbtest2</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest2_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: sbtest2_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">keyGenerator</span>:
<span style="color:#66d9ef">type</span>: SNOWFLAKE
<span style="color:#66d9ef">column</span>: id
<span style="color:#66d9ef">sbtest3</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest3_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: sbtest3_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">keyGenerator</span>:
<span style="color:#66d9ef">type</span>: SNOWFLAKE
<span style="color:#66d9ef">column</span>: id
<span style="color:#66d9ef">sbtest4</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest4_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: sbtest4_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">keyGenerator</span>:
<span style="color:#66d9ef">type</span>: SNOWFLAKE
<span style="color:#66d9ef">column</span>: id
<span style="color:#66d9ef">sbtest5</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest5_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: sbtest5_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">keyGenerator</span>:
<span style="color:#66d9ef">type</span>: SNOWFLAKE
<span style="color:#66d9ef">column</span>: id
<span style="color:#66d9ef">sbtest6</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest6_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: sbtest6_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">keyGenerator</span>:
<span style="color:#66d9ef">type</span>: SNOWFLAKE
<span style="color:#66d9ef">column</span>: id
<span style="color:#66d9ef">sbtest7</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest7_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: sbtest7_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">keyGenerator</span>:
<span style="color:#66d9ef">type</span>: SNOWFLAKE
<span style="color:#66d9ef">column</span>: id
<span style="color:#66d9ef">sbtest8</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest8_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: sbtest8_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">keyGenerator</span>:
<span style="color:#66d9ef">type</span>: SNOWFLAKE
<span style="color:#66d9ef">column</span>: id
<span style="color:#66d9ef">sbtest9</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest9_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: sbtest9_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">keyGenerator</span>:
<span style="color:#66d9ef">type</span>: SNOWFLAKE
<span style="color:#66d9ef">column</span>: id
<span style="color:#66d9ef">sbtest10</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest10_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: sbtest10_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">keyGenerator</span>:
<span style="color:#66d9ef">type</span>: SNOWFLAKE
<span style="color:#66d9ef">column</span>: id
<span style="color:#66d9ef">defaultDatabaseStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: ds_${id % <span style="color:#ae81ff">2</span>}
</code></pre></div><p>config-master_slave.yaml</p>
<div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-yaml" data-lang="yaml"><span style="color:#66d9ef">schemaName</span>: sbtest
<span style="color:#66d9ef">dataSources</span>:
<span style="color:#66d9ef">ds_0</span>:
<span style="color:#66d9ef">url</span>: jdbc:mysql://${host-mysql<span style="color:#ae81ff">-1</span>}:<span style="color:#ae81ff">3306</span>/sbtest?serverTimezone=UTC<span style="color:#75715e">&amp;useSSL=false</span>
<span style="color:#66d9ef">username</span>: root
<span style="color:#66d9ef">password</span>:
<span style="color:#66d9ef">connectionTimeoutMilliseconds</span>: <span style="color:#ae81ff">30000</span>
<span style="color:#66d9ef">idleTimeoutMilliseconds</span>: <span style="color:#ae81ff">60000</span>
<span style="color:#66d9ef">maxLifetimeMilliseconds</span>: <span style="color:#ae81ff">1800000</span>
<span style="color:#66d9ef">maxPoolSize</span>: <span style="color:#ae81ff">256</span>
<span style="color:#66d9ef">masterSlaveRule</span>:
<span style="color:#66d9ef">name</span>: ms_ds
<span style="color:#66d9ef">masterDataSourceName</span>: ds_0
<span style="color:#66d9ef">slaveDataSourceNames</span>:
- ds_0
- ds_0
</code></pre></div><p>config-sharding-master_slave.yaml</p>
<div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-yaml" data-lang="yaml"><span style="color:#66d9ef">schemaName</span>: sbtest
<span style="color:#66d9ef">dataSources</span>:
<span style="color:#66d9ef">primary_ds_0</span>:
<span style="color:#66d9ef">url</span>: jdbc:mysql://${host-mysql<span style="color:#ae81ff">-1</span>}:<span style="color:#ae81ff">3306</span>/sbtest?serverTimezone=UTC<span style="color:#75715e">&amp;useSSL=false</span>
<span style="color:#66d9ef">username</span>: root
<span style="color:#66d9ef">password</span>:
<span style="color:#66d9ef">connectionTimeoutMilliseconds</span>: <span style="color:#ae81ff">30000</span>
<span style="color:#66d9ef">idleTimeoutMilliseconds</span>: <span style="color:#ae81ff">60000</span>
<span style="color:#66d9ef">maxLifetimeMilliseconds</span>: <span style="color:#ae81ff">1800000</span>
<span style="color:#66d9ef">maxPoolSize</span>: <span style="color:#ae81ff">256</span>
<span style="color:#66d9ef">primary_ds_1</span>:
<span style="color:#66d9ef">url</span>: jdbc:mysql://${host-mysql<span style="color:#ae81ff">-2</span>}:<span style="color:#ae81ff">3306</span>/sbtest?serverTimezone=UTC<span style="color:#75715e">&amp;useSSL=false</span>
<span style="color:#66d9ef">username</span>: root
<span style="color:#66d9ef">password</span>:
<span style="color:#66d9ef">connectionTimeoutMilliseconds</span>: <span style="color:#ae81ff">30000</span>
<span style="color:#66d9ef">idleTimeoutMilliseconds</span>: <span style="color:#ae81ff">60000</span>
<span style="color:#66d9ef">maxLifetimeMilliseconds</span>: <span style="color:#ae81ff">1800000</span>
<span style="color:#66d9ef">maxPoolSize</span>: <span style="color:#ae81ff">256</span>
<span style="color:#66d9ef">shardingRule</span>:
<span style="color:#66d9ef">tables</span>:
<span style="color:#66d9ef">sbtest1</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest1_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: sbtest1_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">keyGenerator</span>:
<span style="color:#66d9ef">type</span>: SNOWFLAKE
<span style="color:#66d9ef">column</span>: id
<span style="color:#66d9ef">sbtest2</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest2_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: sbtest2_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">keyGenerator</span>:
<span style="color:#66d9ef">type</span>: SNOWFLAKE
<span style="color:#66d9ef">column</span>: id
<span style="color:#66d9ef">sbtest3</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest3_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: sbtest3_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">keyGenerator</span>:
<span style="color:#66d9ef">type</span>: SNOWFLAKE
<span style="color:#66d9ef">column</span>: id
<span style="color:#66d9ef">sbtest4</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest4_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: sbtest4_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">keyGenerator</span>:
<span style="color:#66d9ef">type</span>: SNOWFLAKE
<span style="color:#66d9ef">column</span>: id
<span style="color:#66d9ef">sbtest5</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest5_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: sbtest5_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">keyGenerator</span>:
<span style="color:#66d9ef">type</span>: SNOWFLAKE
<span style="color:#66d9ef">column</span>: id
<span style="color:#66d9ef">sbtest6</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest6_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: sbtest6_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">keyGenerator</span>:
<span style="color:#66d9ef">type</span>: SNOWFLAKE
<span style="color:#66d9ef">column</span>: id
<span style="color:#66d9ef">sbtest7</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest7_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: sbtest7_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">keyGenerator</span>:
<span style="color:#66d9ef">type</span>: SNOWFLAKE
<span style="color:#66d9ef">column</span>: id
<span style="color:#66d9ef">sbtest8</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest8_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: sbtest8_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">keyGenerator</span>:
<span style="color:#66d9ef">type</span>: SNOWFLAKE
<span style="color:#66d9ef">column</span>: id
<span style="color:#66d9ef">sbtest9</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest9_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: sbtest9_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">keyGenerator</span>:
<span style="color:#66d9ef">type</span>: SNOWFLAKE
<span style="color:#66d9ef">column</span>: id
<span style="color:#66d9ef">sbtest10</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest10_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: sbtest10_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">keyGenerator</span>:
<span style="color:#66d9ef">type</span>: SNOWFLAKE
<span style="color:#66d9ef">column</span>: id
<span style="color:#66d9ef">defaultDatabaseStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: ds_${id % <span style="color:#ae81ff">2</span>}
<span style="color:#66d9ef">masterSlaveRules</span>:
<span style="color:#66d9ef">ds_0</span>:
<span style="color:#66d9ef">masterDataSourceName</span>: primary_ds_0
<span style="color:#66d9ef">slaveDataSourceNames</span>: [primary_ds_0, primary_ds_0]
<span style="color:#66d9ef">loadBalanceAlgorithmType</span>: ROUND_ROBIN
<span style="color:#66d9ef">ds_1</span>:
<span style="color:#66d9ef">masterDataSourceName</span>: primary_ds_1
<span style="color:#66d9ef">slaveDataSourceNames</span>: [primary_ds_1, primary_ds_1]
<span style="color:#66d9ef">loadBalanceAlgorithmType</span>: ROUND_ROBIN
</code></pre></div><p>config-encrypt.yaml</p>
<div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-yaml" data-lang="yaml"><span style="color:#66d9ef">schemaName</span>: sbtest
<span style="color:#66d9ef">dataSources</span>:
<span style="color:#66d9ef">ds_0</span>:
<span style="color:#66d9ef">url</span>: jdbc:mysql://${host-mysql<span style="color:#ae81ff">-1</span>}:<span style="color:#ae81ff">3306</span>/sbtest?serverTimezone=UTC<span style="color:#75715e">&amp;useSSL=false</span>
<span style="color:#66d9ef">username</span>: root
<span style="color:#66d9ef">password</span>:
<span style="color:#66d9ef">connectionTimeoutMilliseconds</span>: <span style="color:#ae81ff">30000</span>
<span style="color:#66d9ef">idleTimeoutMilliseconds</span>: <span style="color:#ae81ff">60000</span>
<span style="color:#66d9ef">maxLifetimeMilliseconds</span>: <span style="color:#ae81ff">1800000</span>
<span style="color:#66d9ef">maxPoolSize</span>: <span style="color:#ae81ff">256</span>
<span style="color:#66d9ef">encryptRule</span>:
<span style="color:#66d9ef">encryptors</span>:
<span style="color:#66d9ef">encryptor_md5</span>:
<span style="color:#66d9ef">type</span>: md5
<span style="color:#66d9ef">tables</span>:
<span style="color:#66d9ef">sbtest1</span>:
<span style="color:#66d9ef">columns</span>:
<span style="color:#66d9ef">pad</span>:
<span style="color:#66d9ef">cipherColumn</span>: pad
<span style="color:#66d9ef">encryptor</span>: encryptor_md5
<span style="color:#66d9ef">sbtest2</span>:
<span style="color:#66d9ef">columns</span>:
<span style="color:#66d9ef">pad</span>:
<span style="color:#66d9ef">cipherColumn</span>: pad
<span style="color:#66d9ef">encryptor</span>: encryptor_md5
<span style="color:#66d9ef">sbtest3</span>:
<span style="color:#66d9ef">columns</span>:
<span style="color:#66d9ef">pad</span>:
<span style="color:#66d9ef">cipherColumn</span>: pad
<span style="color:#66d9ef">encryptor</span>: encryptor_md5
<span style="color:#66d9ef">sbtest4</span>:
<span style="color:#66d9ef">columns</span>:
<span style="color:#66d9ef">pad</span>:
<span style="color:#66d9ef">cipherColumn</span>: pad
<span style="color:#66d9ef">encryptor</span>: encryptor_md5
<span style="color:#66d9ef">sbtest5</span>:
<span style="color:#66d9ef">columns</span>:
<span style="color:#66d9ef">pad</span>:
<span style="color:#66d9ef">cipherColumn</span>: pad
<span style="color:#66d9ef">encryptor</span>: encryptor_md5
<span style="color:#66d9ef">sbtest6</span>:
<span style="color:#66d9ef">columns</span>:
<span style="color:#66d9ef">pad</span>:
<span style="color:#66d9ef">cipherColumn</span>: pad
<span style="color:#66d9ef">encryptor</span>: encryptor_md5
<span style="color:#66d9ef">sbtest7</span>:
<span style="color:#66d9ef">columns</span>:
<span style="color:#66d9ef">pad</span>:
<span style="color:#66d9ef">cipherColumn</span>: pad
<span style="color:#66d9ef">encryptor</span>: encryptor_md5
<span style="color:#66d9ef">sbtest8</span>:
<span style="color:#66d9ef">columns</span>:
<span style="color:#66d9ef">pad</span>:
<span style="color:#66d9ef">cipherColumn</span>: pad
<span style="color:#66d9ef">encryptor</span>: encryptor_md5
<span style="color:#66d9ef">sbtest9</span>:
<span style="color:#66d9ef">columns</span>:
<span style="color:#66d9ef">pad</span>:
<span style="color:#66d9ef">cipherColumn</span>: pad
<span style="color:#66d9ef">encryptor</span>: encryptor_md5
<span style="color:#66d9ef">sbtest10</span>:
<span style="color:#66d9ef">columns</span>:
<span style="color:#66d9ef">pad</span>:
<span style="color:#66d9ef">cipherColumn</span>: pad
<span style="color:#66d9ef">encryptor</span>: encryptor_md5
</code></pre></div><h4 id="300-version">3.0.0 version</h4>
<p>server.yaml</p>
<div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-yaml" data-lang="yaml"><span style="color:#66d9ef">authentication</span>:
<span style="color:#66d9ef">username</span>: root
<span style="color:#66d9ef">password</span>: root
<span style="color:#66d9ef">props</span>:
<span style="color:#66d9ef">max.connections.size.per.query</span>: <span style="color:#ae81ff">10</span>
<span style="color:#66d9ef">acceptor.size</span>: <span style="color:#ae81ff">256</span> <span style="color:#75715e"># The default value is available processors count * 2.</span>
<span style="color:#66d9ef">executor.size</span>: <span style="color:#ae81ff">128</span> <span style="color:#75715e"># Infinite by default.</span>
<span style="color:#66d9ef">proxy.frontend.flush.threshold</span>: <span style="color:#ae81ff">128</span> <span style="color:#75715e"># The default value is 128.</span>
<span style="color:#75715e"># LOCAL: Proxy will run with LOCAL transaction.</span>
<span style="color:#75715e"># XA: Proxy will run with XA transaction.</span>
<span style="color:#75715e"># BASE: Proxy will run with B.A.S.E transaction.</span>
<span style="color:#66d9ef">proxy.transaction.type</span>: LOCAL
<span style="color:#66d9ef">proxy.opentracing.enabled</span>: <span style="color:#66d9ef">false</span>
<span style="color:#66d9ef">sql.show</span>: <span style="color:#66d9ef">false</span>
</code></pre></div><p>config-sharding.yaml</p>
<div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-yaml" data-lang="yaml"><span style="color:#66d9ef">schemaName</span>: sbtest
<span style="color:#66d9ef">dataSources</span>:
<span style="color:#66d9ef">ds_0</span>:
<span style="color:#66d9ef">url</span>: jdbc:mysql://${host-mysql<span style="color:#ae81ff">-1</span>}:<span style="color:#ae81ff">3306</span>/sbtest?serverTimezone=UTC<span style="color:#75715e">&amp;useSSL=false</span>
<span style="color:#66d9ef">username</span>: root
<span style="color:#66d9ef">password</span>:
<span style="color:#66d9ef">autoCommit</span>: <span style="color:#66d9ef">true</span>
<span style="color:#66d9ef">connectionTimeout</span>: <span style="color:#ae81ff">30000</span>
<span style="color:#66d9ef">idleTimeout</span>: <span style="color:#ae81ff">60000</span>
<span style="color:#66d9ef">maxLifetime</span>: <span style="color:#ae81ff">1800000</span>
<span style="color:#66d9ef">maximumPoolSize</span>: <span style="color:#ae81ff">256</span>
<span style="color:#66d9ef">ds_1</span>:
<span style="color:#66d9ef">url</span>: jdbc:mysql://${host-mysql<span style="color:#ae81ff">-2</span>}:<span style="color:#ae81ff">3306</span>/sbtest?serverTimezone=UTC<span style="color:#75715e">&amp;useSSL=false</span>
<span style="color:#66d9ef">username</span>: root
<span style="color:#66d9ef">password</span>:
<span style="color:#66d9ef">autoCommit</span>: <span style="color:#66d9ef">true</span>
<span style="color:#66d9ef">connectionTimeout</span>: <span style="color:#ae81ff">30000</span>
<span style="color:#66d9ef">idleTimeout</span>: <span style="color:#ae81ff">60000</span>
<span style="color:#66d9ef">maxLifetime</span>: <span style="color:#ae81ff">1800000</span>
<span style="color:#66d9ef">maximumPoolSize</span>: <span style="color:#ae81ff">256</span>
<span style="color:#66d9ef">shardingRule</span>:
<span style="color:#66d9ef">tables</span>:
<span style="color:#66d9ef">sbtest1</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest1_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: sbtest1_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">sbtest2</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest2_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: sbtest2_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">sbtest3</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest3_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: sbtest3_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">sbtest4</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest4_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: sbtest4_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">sbtest5</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest5_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: sbtest5_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">sbtest6</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest6_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: sbtest6_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">sbtest7</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest7_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: sbtest7_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">sbtest8</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest8_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: sbtest8_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">sbtest9</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest9_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: sbtest9_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">sbtest10</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest10_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: sbtest10_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">defaultDatabaseStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: ds_${id % <span style="color:#ae81ff">2</span>}
</code></pre></div><p>config-master_slave.yaml</p>
<div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-yaml" data-lang="yaml"><span style="color:#66d9ef">schemaName</span>: sbtest
<span style="color:#66d9ef">dataSources</span>:
<span style="color:#66d9ef">ds_0</span>:
<span style="color:#66d9ef">url</span>: jdbc:mysql://${host-mysql<span style="color:#ae81ff">-1</span>}:<span style="color:#ae81ff">3306</span>/sbtest?serverTimezone=UTC<span style="color:#75715e">&amp;useSSL=false</span>
<span style="color:#66d9ef">username</span>: root
<span style="color:#66d9ef">password</span>:
<span style="color:#66d9ef">autoCommit</span>: <span style="color:#66d9ef">true</span>
<span style="color:#66d9ef">connectionTimeout</span>: <span style="color:#ae81ff">30000</span>
<span style="color:#66d9ef">idleTimeout</span>: <span style="color:#ae81ff">60000</span>
<span style="color:#66d9ef">maxLifetime</span>: <span style="color:#ae81ff">1800000</span>
<span style="color:#66d9ef">maximumPoolSize</span>: <span style="color:#ae81ff">256</span>
<span style="color:#66d9ef">masterSlaveRule</span>:
<span style="color:#66d9ef">name</span>: ms_ds
<span style="color:#66d9ef">masterDataSourceName</span>: ds_0
<span style="color:#66d9ef">slaveDataSourceNames</span>:
- ds_0
- ds_0
</code></pre></div><p>config-sharding-master_slave.yaml</p>
<div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-yaml" data-lang="yaml"><span style="color:#66d9ef">schemaName</span>: sbtest
<span style="color:#66d9ef">dataSources</span>:
<span style="color:#66d9ef">primary_ds_0</span>:
<span style="color:#66d9ef">url</span>: jdbc:mysql://${host-mysql<span style="color:#ae81ff">-1</span>}:<span style="color:#ae81ff">3306</span>/sbtest?serverTimezone=UTC<span style="color:#75715e">&amp;useSSL=false</span>
<span style="color:#66d9ef">username</span>: root
<span style="color:#66d9ef">password</span>:
<span style="color:#66d9ef">autoCommit</span>: <span style="color:#66d9ef">true</span>
<span style="color:#66d9ef">connectionTimeout</span>: <span style="color:#ae81ff">30000</span>
<span style="color:#66d9ef">idleTimeout</span>: <span style="color:#ae81ff">60000</span>
<span style="color:#66d9ef">maxLifetime</span>: <span style="color:#ae81ff">1800000</span>
<span style="color:#66d9ef">maximumPoolSize</span>: <span style="color:#ae81ff">256</span>
<span style="color:#66d9ef">primary_ds_1</span>:
<span style="color:#66d9ef">url</span>: jdbc:mysql://${host-mysql<span style="color:#ae81ff">-2</span>}:<span style="color:#ae81ff">3306</span>/sbtest?serverTimezone=UTC<span style="color:#75715e">&amp;useSSL=false</span>
<span style="color:#66d9ef">username</span>: root
<span style="color:#66d9ef">password</span>:
<span style="color:#66d9ef">autoCommit</span>: <span style="color:#66d9ef">true</span>
<span style="color:#66d9ef">connectionTimeout</span>: <span style="color:#ae81ff">30000</span>
<span style="color:#66d9ef">idleTimeout</span>: <span style="color:#ae81ff">60000</span>
<span style="color:#66d9ef">maxLifetime</span>: <span style="color:#ae81ff">1800000</span>
<span style="color:#66d9ef">maximumPoolSize</span>: <span style="color:#ae81ff">256</span>
<span style="color:#66d9ef">shardingRule</span>:
<span style="color:#66d9ef">tables</span>:
<span style="color:#66d9ef">sbtest1</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest1_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: sbtest1_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">sbtest2</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest2_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: sbtest2_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">sbtest3</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest3_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: sbtest3_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">sbtest4</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest4_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: sbtest4_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">sbtest5</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest5_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: sbtest5_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">sbtest6</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest6_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: sbtest6_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">sbtest7</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest7_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: sbtest7_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">sbtest8</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest8_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: sbtest8_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">sbtest9</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest9_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: sbtest9_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">sbtest10</span>:
<span style="color:#66d9ef">actualDataNodes</span>: ds_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">1</span>}.sbtest10_${<span style="color:#ae81ff">0</span>..<span style="color:#ae81ff">99</span>}
<span style="color:#66d9ef">tableStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: sbtest10_${id % <span style="color:#ae81ff">100</span>}
<span style="color:#66d9ef">defaultDatabaseStrategy</span>:
<span style="color:#66d9ef">inline</span>:
<span style="color:#66d9ef">shardingColumn</span>: id
<span style="color:#66d9ef">algorithmExpression</span>: ds_${id % <span style="color:#ae81ff">2</span>}
<span style="color:#66d9ef">masterSlaveRules</span>:
<span style="color:#66d9ef">ds_0</span>:
<span style="color:#66d9ef">masterDataSourceName</span>: primary_ds_0
<span style="color:#66d9ef">slaveDataSourceNames</span>: [primary_ds_0, primary_ds_0]
<span style="color:#66d9ef">loadBalanceAlgorithmType</span>: ROUND_ROBIN
<span style="color:#66d9ef">ds_1</span>:
<span style="color:#66d9ef">masterDataSourceName</span>: primary_ds_1
<span style="color:#66d9ef">slaveDataSourceNames</span>: [primary_ds_1, primary_ds_1]
<span style="color:#66d9ef">loadBalanceAlgorithmType</span>: ROUND_ROBIN
</code></pre></div><p>config-encrypt.yaml</p>
<pre><code>不支持
</code></pre><h2 id="附录2">附录2</h2>
<p>plot_graph.py</p>
<div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-python" data-lang="python"><span style="color:#f92672">import</span> sys
<span style="color:#f92672">import</span> matplotlib.pyplot <span style="color:#f92672">as</span> plt
<span style="color:#f92672">import</span> numpy <span style="color:#f92672">as</span> np
<span style="color:#66d9ef">def</span> <span style="color:#a6e22e">generate_graph</span>(path, case_name):
dataset <span style="color:#f92672">=</span> {
<span style="color:#e6db74">&#39;build_num&#39;</span>: [],
<span style="color:#e6db74">&#39;master_version&#39;</span>: [],
<span style="color:#e6db74">&#39;master_xa&#39;</span>: [],
<span style="color:#e6db74">&#39;4.1.1_version&#39;</span>: [],
<span style="color:#e6db74">&#39;3.0.0_version&#39;</span>: [],
<span style="color:#e6db74">&#39;mysql_server&#39;</span>: []
}
<span style="color:#66d9ef">with</span> open(path <span style="color:#f92672">+</span> <span style="color:#e6db74">&#39;/.build_number.txt&#39;</span>) <span style="color:#66d9ef">as</span> builds:
<span style="color:#66d9ef">for</span> line <span style="color:#f92672">in</span> builds:
dataset[<span style="color:#e6db74">&#39;build_num&#39;</span>]<span style="color:#f92672">.</span>append(int(line))
generate_data(path, case_name, dataset)
<span style="color:#66d9ef">print</span>(dataset)
fig, ax <span style="color:#f92672">=</span> plt<span style="color:#f92672">.</span>subplots()
ax<span style="color:#f92672">.</span>grid(True)
plt<span style="color:#f92672">.</span>title(case_name)
data <span style="color:#f92672">=</span> [dataset[<span style="color:#e6db74">&#39;master_version&#39;</span>][<span style="color:#f92672">-</span><span style="color:#ae81ff">7</span>:], dataset[<span style="color:#e6db74">&#39;master_xa&#39;</span>][<span style="color:#f92672">-</span><span style="color:#ae81ff">7</span>:], dataset[<span style="color:#e6db74">&#39;4.1.1_version&#39;</span>][<span style="color:#f92672">-</span><span style="color:#ae81ff">7</span>:], dataset[<span style="color:#e6db74">&#39;3.0.0_version&#39;</span>][<span style="color:#f92672">-</span><span style="color:#ae81ff">7</span>:], dataset[<span style="color:#e6db74">&#39;mysql_server&#39;</span>][<span style="color:#f92672">-</span><span style="color:#ae81ff">7</span>:]]
columns <span style="color:#f92672">=</span> dataset[<span style="color:#e6db74">&#39;build_num&#39;</span>][<span style="color:#f92672">-</span><span style="color:#ae81ff">7</span>:]
rows <span style="color:#f92672">=</span> [<span style="color:#e6db74">&#39;master&#39;</span>, <span style="color:#e6db74">&#39;xa&#39;</span>, <span style="color:#e6db74">&#39;4.1.1&#39;</span>, <span style="color:#e6db74">&#39;3.0.0&#39;</span>, <span style="color:#e6db74">&#39;mysql&#39;</span>]
rcolors <span style="color:#f92672">=</span> plt<span style="color:#f92672">.</span>cm<span style="color:#f92672">.</span>BuPu(np<span style="color:#f92672">.</span>full(len(rows), <span style="color:#ae81ff">0.1</span>))
ccolors <span style="color:#f92672">=</span> plt<span style="color:#f92672">.</span>cm<span style="color:#f92672">.</span>BuPu(np<span style="color:#f92672">.</span>full(len(columns), <span style="color:#ae81ff">0.1</span>))
the_table <span style="color:#f92672">=</span> plt<span style="color:#f92672">.</span>table(cellText<span style="color:#f92672">=</span>data, rowLabels<span style="color:#f92672">=</span>rows, colLabels<span style="color:#f92672">=</span>columns, rowColours<span style="color:#f92672">=</span>rcolors, colColours<span style="color:#f92672">=</span>ccolors,
loc<span style="color:#f92672">=</span><span style="color:#e6db74">&#39;bottom&#39;</span>, bbox<span style="color:#f92672">=</span>[<span style="color:#ae81ff">0.0</span>, <span style="color:#f92672">-</span><span style="color:#ae81ff">0.50</span>, <span style="color:#ae81ff">1</span>, <span style="color:#f92672">.</span><span style="color:#ae81ff">28</span>])
plt<span style="color:#f92672">.</span>subplots_adjust(left<span style="color:#f92672">=</span><span style="color:#ae81ff">0.15</span>, bottom<span style="color:#f92672">=</span><span style="color:#ae81ff">0.3</span>, right<span style="color:#f92672">=</span><span style="color:#ae81ff">0.98</span>)
plt<span style="color:#f92672">.</span>xticks(range(<span style="color:#ae81ff">14</span>))
ax<span style="color:#f92672">.</span>set_xticklabels(dataset[<span style="color:#e6db74">&#39;build_num&#39;</span>])
plt<span style="color:#f92672">.</span>plot(dataset[<span style="color:#e6db74">&#39;master_version&#39;</span>], <span style="color:#e6db74">&#39;o-&#39;</span>, color<span style="color:#f92672">=</span><span style="color:#e6db74">&#39;magenta&#39;</span>, label<span style="color:#f92672">=</span><span style="color:#e6db74">&#39;master_version&#39;</span>)
plt<span style="color:#f92672">.</span>plot(dataset[<span style="color:#e6db74">&#39;master_xa&#39;</span>], <span style="color:#e6db74">&#39;o-&#39;</span>, color<span style="color:#f92672">=</span><span style="color:#e6db74">&#39;darkviolet&#39;</span>, label<span style="color:#f92672">=</span><span style="color:#e6db74">&#39;master_xa&#39;</span>)
plt<span style="color:#f92672">.</span>plot(dataset[<span style="color:#e6db74">&#39;4.1.1_version&#39;</span>], <span style="color:#e6db74">&#39;r--&#39;</span>, color<span style="color:#f92672">=</span><span style="color:#e6db74">&#39;blue&#39;</span>, label<span style="color:#f92672">=</span><span style="color:#e6db74">&#39;4.1.1_version&#39;</span>)
plt<span style="color:#f92672">.</span>plot(dataset[<span style="color:#e6db74">&#39;3.0.0_version&#39;</span>], <span style="color:#e6db74">&#39;r--&#39;</span>, color<span style="color:#f92672">=</span><span style="color:#e6db74">&#39;orange&#39;</span>, label<span style="color:#f92672">=</span><span style="color:#e6db74">&#39;3.0.0_version&#39;</span>)
plt<span style="color:#f92672">.</span>plot(dataset[<span style="color:#e6db74">&#39;mysql_server&#39;</span>], <span style="color:#e6db74">&#39;r--&#39;</span>, color<span style="color:#f92672">=</span><span style="color:#e6db74">&#39;lime&#39;</span>, label<span style="color:#f92672">=</span><span style="color:#e6db74">&#39;mysql_server&#39;</span>)
plt<span style="color:#f92672">.</span>xlim()
plt<span style="color:#f92672">.</span>legend()
plt<span style="color:#f92672">.</span>xlabel(<span style="color:#e6db74">&#39;build_num&#39;</span>)
plt<span style="color:#f92672">.</span>ylabel(<span style="color:#e6db74">&#39;transactions per second&#39;</span>)
plt<span style="color:#f92672">.</span>savefig(<span style="color:#e6db74">&#39;graph/&#39;</span> <span style="color:#f92672">+</span> path <span style="color:#f92672">+</span> <span style="color:#e6db74">&#39;/&#39;</span> <span style="color:#f92672">+</span> case_name)
plt<span style="color:#f92672">.</span>show()
<span style="color:#66d9ef">def</span> <span style="color:#a6e22e">generate_data</span>(path, case_name, dataset):
<span style="color:#66d9ef">for</span> build <span style="color:#f92672">in</span> dataset[<span style="color:#e6db74">&#39;build_num&#39;</span>]:
fill_dataset(build, case_name, dataset, path, <span style="color:#e6db74">&#39;master_version&#39;</span>, <span style="color:#e6db74">&#39;.master.txt&#39;</span>)
fill_dataset(build, case_name, dataset, path, <span style="color:#e6db74">&#39;master_xa&#39;</span>, <span style="color:#e6db74">&#39;.xa.txt&#39;</span>)
fill_dataset(build, case_name, dataset, path, <span style="color:#e6db74">&#39;4.1.1_version&#39;</span>, <span style="color:#e6db74">&#39;.4_1_1.txt&#39;</span>)
fill_dataset(build, case_name, dataset, path, <span style="color:#e6db74">&#39;3.0.0_version&#39;</span>, <span style="color:#e6db74">&#39;.3_0_0.txt&#39;</span>)
fill_dataset(build, case_name, dataset, path, <span style="color:#e6db74">&#39;mysql_server&#39;</span>, <span style="color:#e6db74">&#39;.mysql.txt&#39;</span>)
<span style="color:#66d9ef">def</span> <span style="color:#a6e22e">fill_dataset</span>(build, case_name, dataset, path, version, suffix):
<span style="color:#66d9ef">try</span>:
<span style="color:#66d9ef">with</span> open(path <span style="color:#f92672">+</span> <span style="color:#e6db74">&#39;/&#39;</span> <span style="color:#f92672">+</span> str(build) <span style="color:#f92672">+</span> <span style="color:#e6db74">&#39;/&#39;</span> <span style="color:#f92672">+</span> case_name <span style="color:#f92672">+</span> suffix) <span style="color:#66d9ef">as</span> version_master:
value <span style="color:#f92672">=</span> <span style="color:#ae81ff">0</span>
<span style="color:#66d9ef">for</span> line <span style="color:#f92672">in</span> version_master:
<span style="color:#66d9ef">if</span> <span style="color:#e6db74">&#39;transactions:&#39;</span> <span style="color:#f92672">in</span> line:
items <span style="color:#f92672">=</span> line<span style="color:#f92672">.</span>split(<span style="color:#e6db74">&#39;(&#39;</span>)
value <span style="color:#f92672">=</span> float(items[<span style="color:#ae81ff">1</span>][:<span style="color:#f92672">-</span><span style="color:#ae81ff">10</span>])
dataset[version]<span style="color:#f92672">.</span>append(value)
<span style="color:#66d9ef">except</span> FileNotFoundError:
dataset[version]<span style="color:#f92672">.</span>append(<span style="color:#ae81ff">0</span>)
<span style="color:#66d9ef">if</span> __name__ <span style="color:#f92672">==</span> <span style="color:#e6db74">&#39;__main__&#39;</span>:
path <span style="color:#f92672">=</span> sys<span style="color:#f92672">.</span>argv[<span style="color:#ae81ff">1</span>]
generate_graph(path, <span style="color:#e6db74">&#39;oltp_point_select&#39;</span>)
generate_graph(path, <span style="color:#e6db74">&#39;oltp_read_only&#39;</span>)
generate_graph(path, <span style="color:#e6db74">&#39;oltp_write_only&#39;</span>)
generate_graph(path, <span style="color:#e6db74">&#39;oltp_read_write&#39;</span>)
generate_graph(path, <span style="color:#e6db74">&#39;oltp_update_index&#39;</span>)
generate_graph(path, <span style="color:#e6db74">&#39;oltp_update_non_index&#39;</span>)
generate_graph(path, <span style="color:#e6db74">&#39;oltp_delete&#39;</span>)
</code></pre></div>
<footer class=" footline" >
</footer>
</div>
</div>
<div id="navigation">
<a class="nav nav-prev" href="https://shardingsphere.apache.org/document/current/cn/features/test-engine/performance-test/" title="性能测试"> <i class="fa fa-chevron-left"></i></a>
<a class="nav nav-next" href="https://shardingsphere.apache.org/document/current/cn/user-manual/" title="用户手册" style="margin-right: 0px;"><i class="fa fa-chevron-right"></i></a>
</div>
</section>
<div style="left: -1000px; overflow: scroll; position: absolute; top: -1000px; border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;">
<div style="border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;"></div>
</div>
<script src="https://shardingsphere.apache.org/document/current/js/clipboard.min.js?1618621996"></script>
<script src="https://shardingsphere.apache.org/document/current/js/perfect-scrollbar.min.js?1618621996"></script>
<script src="https://shardingsphere.apache.org/document/current/js/perfect-scrollbar.jquery.min.js?1618621996"></script>
<script src="https://shardingsphere.apache.org/document/current/js/jquery.sticky.js?1618621996"></script>
<script src="https://shardingsphere.apache.org/document/current/js/featherlight.min.js?1618621996"></script>
<script src="https://shardingsphere.apache.org/document/current/js/html5shiv-printshiv.min.js?1618621996"></script>
<script src="https://shardingsphere.apache.org/document/current/js/highlight.pack.js?1618621996"></script>
<script>hljs.initHighlightingOnLoad();</script>
<script src="https://shardingsphere.apache.org/document/current/js/modernizr.custom.71422.js?1618621996"></script>
<script src="https://shardingsphere.apache.org/document/current/js/learn.js?1618621996"></script>
<script src="https://shardingsphere.apache.org/document/current/js/hugo-learn.js?1618621996"></script>
</body>
</html>