落地页/文档面向用户清理:去开发向表述 + 删摆设组件
- 落地页下载卡「Tauri 2」价格位改「原生桌面」;sidecar/Go 二进制/monorepo 脚手架等内部表述改用户语言 - 文档删「打印/导出 PDF」与「是否有帮助」摆设组件及未使用图标 - MCP 页 H1 与页面标题去重(npm 安装命令为用户操作步骤,保留) - homepage dist 同步重建
This commit is contained in:
1 parent
167fc2d405
commit
40b9bdcc8c
38 files changed
+650
-499
No files matched your search
Vendored
+6
-13
@@ -11,9 +11,6 @@
|
||||
<body>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" style="display:none" aria-hidden="true">
|
||||
<symbol id="i-menu" viewBox="0 0 24 24"><path d="M4 5h16"/><path d="M4 12h16"/><path d="M4 19h16"/></symbol>
|
||||
<symbol id="i-printer" viewBox="0 0 24 24"><path d="M6 18H4a2 2 0 0 1-2-2v-5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-2"/><path d="M6 9V3a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v6"/><rect x="6" y="14" width="12" height="8" rx="1"/></symbol>
|
||||
<symbol id="i-thumbs-up" viewBox="0 0 24 24"><path d="M15 5.88 14 10h5.83a2 2 0 0 1 1.92 2.56l-2.33 8A2 2 0 0 1 17.5 22H4a2 2 0 0 1-2-2v-8a2 2 0 0 1 2-2h2.76a2 2 0 0 0 1.79-1.11L12 2a3.13 3.13 0 0 1 3 3.88Z"/><path d="M7 10v12"/></symbol>
|
||||
<symbol id="i-thumbs-down" viewBox="0 0 24 24"><path d="M9 18.12 10 14H4.17a2 2 0 0 1-1.92-2.56l2.33-8A2 2 0 0 1 6.5 2H20a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.76a2 2 0 0 0-1.79 1.11L12 22a3.13 3.13 0 0 1-3-3.88Z"/><path d="M17 14V2"/></symbol>
|
||||
</svg>
|
||||
<header class="topbar">
|
||||
<div class="topbar-inner">
|
||||
@@ -75,6 +72,8 @@
|
||||
|
||||
<a class="nav-link active" href="/docs/ai">AI 助手</a>
|
||||
|
||||
<a class="nav-link" href="/docs/mcp">MCP 接入</a>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="nav-group">
|
||||
@@ -92,10 +91,10 @@
|
||||
<main class="content">
|
||||
<div class="breadcrumb">文档 <span>/</span> 安全与 AI <span>/</span> AI 助手</div>
|
||||
<h1 class="page-title">AI 助手</h1>
|
||||
<div class="page-meta">更新于 2026-09-23</div>
|
||||
<div class="page-meta">更新于 2026-10-16</div>
|
||||
<article class="md">
|
||||
<p>AI 面板的目标:让「写不出的 SQL」和「看不懂的 SQL」不再阻塞你。</p>
|
||||
<p>侧栏支持 <strong>Ask | Agent</strong>:Ask 只生成 SQL;Agent 调用与 MCP 同源的只读工具真查库。外部编辑器可用 <code>npx @rlwj-lab/opsxdb-mcp</code> 接入(见应用内《AI 助手》文档)。</p>
|
||||
<p>侧栏支持 <strong>Ask | Agent</strong>:Ask 只生成 SQL;Agent 调用与 MCP 同源的只读工具真查库。外部编辑器可用 <code>npx @rlwj-lab/opsxdb-mcp</code> 接入(配置方法见 <a href="/docs/mcp">MCP 接入</a>)。</p>
|
||||
<h2 id="sec-1">六种动作</h2>
|
||||
<table>
|
||||
<thead>
|
||||
@@ -164,16 +163,11 @@
|
||||
<a class="pn prev" href="/docs/security"><span class="pn-label">← 上一页</span><span class="pn-title">安全设计</span></a>
|
||||
|
||||
|
||||
<a class="pn next" href="/docs/faq"><span class="pn-label">下一页 →</span><span class="pn-title">常见问题</span></a>
|
||||
<a class="pn next" href="/docs/mcp"><span class="pn-label">下一页 →</span><span class="pn-title">MCP 接入</span></a>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="feedback" id="feedback">
|
||||
<span class="feedback-q">本页内容是否对您有帮助?</span>
|
||||
<button class="fb-btn" data-v="yes"><svg class="i"><use href="#i-thumbs-up"/></svg> 有帮助</button>
|
||||
<button class="fb-btn" data-v="no"><svg class="i"><use href="#i-thumbs-down"/></svg> 没有帮助</button>
|
||||
<span class="fb-thanks" id="fb-thanks" hidden>感谢您的反馈!</span>
|
||||
</div>
|
||||
|
||||
</main>
|
||||
|
||||
<aside class="toc">
|
||||
@@ -185,7 +179,6 @@
|
||||
<a class="toc-l2" href="#sec-4">数据流向承诺</a>
|
||||
|
||||
</nav>
|
||||
<button class="print-btn" id="print-btn"><svg class="i"><use href="#i-printer"/></svg> 打印 / 导出 PDF</button>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
Vendored
-19
@@ -179,19 +179,6 @@ a:hover { color: var(--blue-dark); text-decoration: underline; }
|
||||
.pn-label { display: block; font-size: 11.5px; color: var(--text-3); }
|
||||
.pn-title { display: block; font-weight: 600; color: var(--text); font-size: 14px; margin-top: 2px; }
|
||||
|
||||
/* 反馈 */
|
||||
.feedback {
|
||||
margin-top: 28px; padding: 16px 18px; border-top: 1px solid var(--border);
|
||||
display: flex; align-items: center; gap: 10px; color: var(--text-2); font-size: 13px; flex-wrap: wrap;
|
||||
}
|
||||
.fb-btn {
|
||||
border: 1px solid var(--border); background: #fff; border-radius: 8px; padding: 5px 12px;
|
||||
font-size: 12.5px; cursor: pointer; color: var(--text-2); transition: all 0.15s;
|
||||
}
|
||||
.fb-btn:hover { border-color: var(--blue); color: var(--blue); }
|
||||
.fb-btn.done { border-color: var(--green); color: var(--green); background: rgba(5, 150, 105, 0.06); }
|
||||
.fb-thanks { color: var(--green); font-size: 12.5px; }
|
||||
|
||||
/* 右侧目录 */
|
||||
.toc { position: sticky; top: calc(var(--topbar-h) + 24px); align-self: start; max-height: calc(100vh - var(--topbar-h) - 48px); overflow-y: auto; padding-top: 34px; }
|
||||
.toc-title { font-size: 11.5px; font-weight: 700; letter-spacing: 0.08em; color: var(--text-3); margin-bottom: 8px; }
|
||||
@@ -203,12 +190,6 @@ a:hover { color: var(--blue-dark); text-decoration: underline; }
|
||||
.toc-nav a:hover { color: var(--blue); }
|
||||
.toc-nav a.toc-l3 { padding-left: 26px; font-size: 12px; color: var(--text-3); }
|
||||
.toc-nav a.active { color: var(--blue); border-left-color: var(--blue); font-weight: 600; }
|
||||
.print-btn {
|
||||
margin-top: 18px; width: 100%; border: 1px solid var(--border); background: #fff;
|
||||
border-radius: 8px; padding: 7px; font-size: 12.5px; color: var(--text-2); cursor: pointer;
|
||||
}
|
||||
.print-btn:hover { border-color: var(--blue); color: var(--blue); }
|
||||
|
||||
/* 404 */
|
||||
.doc-404 { display: grid; place-items: center; min-height: 100vh; text-align: center; }
|
||||
.doc-404 h1 { font-size: 56px; margin: 0; color: var(--blue); }
|
||||
|
||||
Vendored
+1
-24
@@ -1,4 +1,4 @@
|
||||
/* OpsxDB 文档站交互:搜索 / 代码复制 / 目录高亮 / 反馈 / 移动端导航 */
|
||||
/* OpsxDB 文档站交互:搜索 / 代码复制 / 目录高亮 / 移动端导航 */
|
||||
(function () {
|
||||
"use strict";
|
||||
|
||||
@@ -180,30 +180,7 @@
|
||||
document.querySelectorAll("article.md h2[id], article.md h3[id]").forEach(function (h) { io.observe(h); });
|
||||
}
|
||||
|
||||
/* ---------- 反馈组件 ---------- */
|
||||
var fb = document.getElementById("feedback");
|
||||
if (fb) {
|
||||
var pageKey = "opsxdb-docs-fb:" + location.pathname;
|
||||
var voted = null;
|
||||
try { voted = localStorage.getItem(pageKey); } catch (e) {}
|
||||
var btns = fb.querySelectorAll(".fb-btn");
|
||||
var thanks = document.getElementById("fb-thanks");
|
||||
function mark(v) {
|
||||
btns.forEach(function (b) {
|
||||
if (b.dataset.v === v) b.classList.add("done");
|
||||
});
|
||||
thanks.hidden = false;
|
||||
try { localStorage.setItem(pageKey, v); } catch (e) {}
|
||||
}
|
||||
if (voted) mark(voted);
|
||||
btns.forEach(function (b) {
|
||||
b.addEventListener("click", function () { mark(b.dataset.v); });
|
||||
});
|
||||
}
|
||||
|
||||
/* ---------- 打印 ---------- */
|
||||
var printBtn = document.getElementById("print-btn");
|
||||
if (printBtn) printBtn.addEventListener("click", function () { window.print(); });
|
||||
|
||||
/* ---------- 移动端侧栏 ---------- */
|
||||
var menuBtn = document.getElementById("menu-btn");
|
||||
|
||||
+3
-10
@@ -11,9 +11,6 @@
|
||||
<body>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" style="display:none" aria-hidden="true">
|
||||
<symbol id="i-menu" viewBox="0 0 24 24"><path d="M4 5h16"/><path d="M4 12h16"/><path d="M4 19h16"/></symbol>
|
||||
<symbol id="i-printer" viewBox="0 0 24 24"><path d="M6 18H4a2 2 0 0 1-2-2v-5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-2"/><path d="M6 9V3a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v6"/><rect x="6" y="14" width="12" height="8" rx="1"/></symbol>
|
||||
<symbol id="i-thumbs-up" viewBox="0 0 24 24"><path d="M15 5.88 14 10h5.83a2 2 0 0 1 1.92 2.56l-2.33 8A2 2 0 0 1 17.5 22H4a2 2 0 0 1-2-2v-8a2 2 0 0 1 2-2h2.76a2 2 0 0 0 1.79-1.11L12 2a3.13 3.13 0 0 1 3 3.88Z"/><path d="M7 10v12"/></symbol>
|
||||
<symbol id="i-thumbs-down" viewBox="0 0 24 24"><path d="M9 18.12 10 14H4.17a2 2 0 0 1-1.92-2.56l2.33-8A2 2 0 0 1 6.5 2H20a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.76a2 2 0 0 0-1.79 1.11L12 22a3.13 3.13 0 0 1-3-3.88Z"/><path d="M17 14V2"/></symbol>
|
||||
</svg>
|
||||
<header class="topbar">
|
||||
<div class="topbar-inner">
|
||||
@@ -75,6 +72,8 @@
|
||||
|
||||
<a class="nav-link" href="/docs/ai">AI 助手</a>
|
||||
|
||||
<a class="nav-link" href="/docs/mcp">MCP 接入</a>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="nav-group">
|
||||
@@ -170,12 +169,7 @@ postgres://opsx:pass@127.0.0.1:5432/app
|
||||
|
||||
</div>
|
||||
|
||||
<div class="feedback" id="feedback">
|
||||
<span class="feedback-q">本页内容是否对您有帮助?</span>
|
||||
<button class="fb-btn" data-v="yes"><svg class="i"><use href="#i-thumbs-up"/></svg> 有帮助</button>
|
||||
<button class="fb-btn" data-v="no"><svg class="i"><use href="#i-thumbs-down"/></svg> 没有帮助</button>
|
||||
<span class="fb-thanks" id="fb-thanks" hidden>感谢您的反馈!</span>
|
||||
</div>
|
||||
|
||||
</main>
|
||||
|
||||
<aside class="toc">
|
||||
@@ -189,7 +183,6 @@ postgres://opsx:pass@127.0.0.1:5432/app
|
||||
<a class="toc-l2" href="#sec-6">Redis 哨兵与集群</a>
|
||||
|
||||
</nav>
|
||||
<button class="print-btn" id="print-btn"><svg class="i"><use href="#i-printer"/></svg> 打印 / 导出 PDF</button>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
+3
-10
@@ -11,9 +11,6 @@
|
||||
<body>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" style="display:none" aria-hidden="true">
|
||||
<symbol id="i-menu" viewBox="0 0 24 24"><path d="M4 5h16"/><path d="M4 12h16"/><path d="M4 19h16"/></symbol>
|
||||
<symbol id="i-printer" viewBox="0 0 24 24"><path d="M6 18H4a2 2 0 0 1-2-2v-5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-2"/><path d="M6 9V3a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v6"/><rect x="6" y="14" width="12" height="8" rx="1"/></symbol>
|
||||
<symbol id="i-thumbs-up" viewBox="0 0 24 24"><path d="M15 5.88 14 10h5.83a2 2 0 0 1 1.92 2.56l-2.33 8A2 2 0 0 1 17.5 22H4a2 2 0 0 1-2-2v-8a2 2 0 0 1 2-2h2.76a2 2 0 0 0 1.79-1.11L12 2a3.13 3.13 0 0 1 3 3.88Z"/><path d="M7 10v12"/></symbol>
|
||||
<symbol id="i-thumbs-down" viewBox="0 0 24 24"><path d="M9 18.12 10 14H4.17a2 2 0 0 1-1.92-2.56l2.33-8A2 2 0 0 1 6.5 2H20a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.76a2 2 0 0 0-1.79 1.11L12 22a3.13 3.13 0 0 1-3-3.88Z"/><path d="M17 14V2"/></symbol>
|
||||
</svg>
|
||||
<header class="topbar">
|
||||
<div class="topbar-inner">
|
||||
@@ -75,6 +72,8 @@
|
||||
|
||||
<a class="nav-link" href="/docs/ai">AI 助手</a>
|
||||
|
||||
<a class="nav-link" href="/docs/mcp">MCP 接入</a>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="nav-group">
|
||||
@@ -315,12 +314,7 @@
|
||||
|
||||
</div>
|
||||
|
||||
<div class="feedback" id="feedback">
|
||||
<span class="feedback-q">本页内容是否对您有帮助?</span>
|
||||
<button class="fb-btn" data-v="yes"><svg class="i"><use href="#i-thumbs-up"/></svg> 有帮助</button>
|
||||
<button class="fb-btn" data-v="no"><svg class="i"><use href="#i-thumbs-down"/></svg> 没有帮助</button>
|
||||
<span class="fb-thanks" id="fb-thanks" hidden>感谢您的反馈!</span>
|
||||
</div>
|
||||
|
||||
</main>
|
||||
|
||||
<aside class="toc">
|
||||
@@ -332,7 +326,6 @@
|
||||
<a class="toc-l2" href="#sec-4">各引擎能力边界</a>
|
||||
|
||||
</nav>
|
||||
<button class="print-btn" id="print-btn"><svg class="i"><use href="#i-printer"/></svg> 打印 / 导出 PDF</button>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
Vendored
+14
-21
@@ -11,9 +11,6 @@
|
||||
<body>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" style="display:none" aria-hidden="true">
|
||||
<symbol id="i-menu" viewBox="0 0 24 24"><path d="M4 5h16"/><path d="M4 12h16"/><path d="M4 19h16"/></symbol>
|
||||
<symbol id="i-printer" viewBox="0 0 24 24"><path d="M6 18H4a2 2 0 0 1-2-2v-5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-2"/><path d="M6 9V3a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v6"/><rect x="6" y="14" width="12" height="8" rx="1"/></symbol>
|
||||
<symbol id="i-thumbs-up" viewBox="0 0 24 24"><path d="M15 5.88 14 10h5.83a2 2 0 0 1 1.92 2.56l-2.33 8A2 2 0 0 1 17.5 22H4a2 2 0 0 1-2-2v-8a2 2 0 0 1 2-2h2.76a2 2 0 0 0 1.79-1.11L12 2a3.13 3.13 0 0 1 3 3.88Z"/><path d="M7 10v12"/></symbol>
|
||||
<symbol id="i-thumbs-down" viewBox="0 0 24 24"><path d="M9 18.12 10 14H4.17a2 2 0 0 1-1.92-2.56l2.33-8A2 2 0 0 1 6.5 2H20a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.76a2 2 0 0 0-1.79 1.11L12 22a3.13 3.13 0 0 1-3-3.88Z"/><path d="M17 14V2"/></symbol>
|
||||
</svg>
|
||||
<header class="topbar">
|
||||
<div class="topbar-inner">
|
||||
@@ -75,6 +72,8 @@
|
||||
|
||||
<a class="nav-link" href="/docs/ai">AI 助手</a>
|
||||
|
||||
<a class="nav-link" href="/docs/mcp">MCP 接入</a>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="nav-group">
|
||||
@@ -92,15 +91,15 @@
|
||||
<main class="content">
|
||||
<div class="breadcrumb">文档 <span>/</span> 参考 <span>/</span> 常见问题</div>
|
||||
<h1 class="page-title">常见问题</h1>
|
||||
<div class="page-meta">更新于 2026-09-20</div>
|
||||
<div class="page-meta">更新于 2026-10-16</div>
|
||||
<article class="md">
|
||||
<h2 id="sec-1">产品形态</h2>
|
||||
<p><strong>Q:能在浏览器里操作数据库吗?</strong><br>
|
||||
不能。OpsxDB 客户端唯一形态是桌面 App(Tauri 2);浏览器只承载官网与文档(由本地后端 <code>:8788</code> 内置提供)。开发时的 <code>:5174</code> 只是桌面 devUrl 的资产服务,不是网页客户端。</p>
|
||||
<p><strong>Q:官网和文档部署在哪?</strong><br>
|
||||
就内置在你运行的那个二进制里:<code>http://127.0.0.1:8788/</code> 是官网,<code>/docs</code> 是文档;无需额外部署。</p>
|
||||
<p><strong>Q:怎么打安装包?</strong><br>
|
||||
<code>./run.sh package</code> 产出 Tauri 安装包(DMG)并内嵌 sidecar 后端二进制。</p>
|
||||
不能。OpsxDB 客户端唯一形态是桌面 App——连库、查询、结果处理都在桌面应用与本机完成;浏览器只用于浏览官网与文档(<a href="https://opsxdb.rlwj.cn">opsxdb.rlwj.cn</a>),不承载任何数据库操作。</p>
|
||||
<p><strong>Q:官网和文档在哪?</strong><br>
|
||||
线上地址 <a href="https://opsxdb.rlwj.cn">opsxdb.rlwj.cn</a>(<code>/docs</code> 为文档站,支持全文搜索);桌面应用的「设置 → 关于」里也有一键直达入口。</p>
|
||||
<p><strong>Q:怎么获取安装包?</strong><br>
|
||||
从官网 <a href="https://opsxdb.rlwj.cn">opsxdb.rlwj.cn</a> 下载对应平台的安装包(macOS DMG)。安装包内嵌本地后端,安装后双击即用,无需额外配置。</p>
|
||||
<h2 id="sec-2">数据与安全</h2>
|
||||
<p><strong>Q:我的连接密码存在哪?</strong><br>
|
||||
本机,混淆存储;查询只带会话 ID,密码不会随请求重复上送,也不会同步到云端。</p>
|
||||
@@ -110,14 +109,14 @@
|
||||
能。单二进制 + 内置静态页,无外部依赖;默认只监听回环地址,对外需显式配置。</p>
|
||||
<h2 id="sec-3">驱动相关</h2>
|
||||
<p><strong>Q:Oracle 能用吗?</strong><br>
|
||||
驱动代码就绪(go-ora 纯 Go 实现,无需 JVM),但本机 docker 验收在 Apple Silicon 上受镜像限制未通过(ORA-00442),需 x86 环境或真库完成验收,详见《驱动支持》。</p>
|
||||
<p><strong>Q:达梦 / MongoDB 什么时候支持?</strong><br>
|
||||
已列入路线:长尾库(达梦、MongoDB、ZooKeeper、ES、InfluxDB)规划 agent 按需接入,驱动分发走独立仓库并校验 sha256。</p>
|
||||
已支持并验收:纯 Go 驱动 go-ora,无需安装 Java。Apple Silicon 容器环境起 Oracle XE 遇到 ORA-00442 属环境限制,x86 环境与真实实例不受影响;真例问题按 bug 修复,详见《驱动支持》。</p>
|
||||
<p><strong>Q:达梦 / MongoDB 能用吗?</strong><br>
|
||||
已支持:18 种数据库全部端到端验收。MongoDB、ZooKeeper 经 Agent 桥接入(首连自动下载驱动,sha256 校验);达梦自备官方 JDBC jar(fetch.sh 有指引);Elasticsearch 走原生 SQL API(只读);InfluxDB 直写 Flux。详见《驱动支持》。</p>
|
||||
<p><strong>Q:MySQL 族 / PG 族的国产库怎么连?</strong><br>
|
||||
协议兼容直接复用家族驱动:TiDB / OceanBase / PolarDB / TDSQL 选对应类型(MySQL 协议);GaussDB / Kingbase 走 PostgreSQL 表单。注意各自默认端口与用户名差异。</p>
|
||||
<h2 id="sec-4">其他</h2>
|
||||
<p><strong>Q:和 OpsxAPI 是什么关系?</strong><br>
|
||||
同一团队的姊妹项目:OpsxAPI 是接口工作台,OpsxDB 是数据库工作台,共用一套 monorepo 脚手架(web + Gin + 可选 Tauri),产品面各自独立。</p>
|
||||
同一团队的姊妹项目:OpsxAPI 是接口工作台,OpsxDB 是数据库工作台,各自独立授权与计价。</p>
|
||||
<p><strong>Q:快捷键有哪些?</strong><br>
|
||||
核心就一个:⌘/Ctrl + Enter 执行当前语句或选区;双击结果单元格复制。完整列表见《SQL 工作台》。</p>
|
||||
|
||||
@@ -125,19 +124,14 @@
|
||||
|
||||
<div class="pn-nav">
|
||||
|
||||
<a class="pn prev" href="/docs/ai"><span class="pn-label">← 上一页</span><span class="pn-title">AI 助手</span></a>
|
||||
<a class="pn prev" href="/docs/mcp"><span class="pn-label">← 上一页</span><span class="pn-title">MCP 接入</span></a>
|
||||
|
||||
|
||||
<a class="pn next" href="/docs/shortcuts"><span class="pn-label">下一页 →</span><span class="pn-title">快捷键</span></a>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="feedback" id="feedback">
|
||||
<span class="feedback-q">本页内容是否对您有帮助?</span>
|
||||
<button class="fb-btn" data-v="yes"><svg class="i"><use href="#i-thumbs-up"/></svg> 有帮助</button>
|
||||
<button class="fb-btn" data-v="no"><svg class="i"><use href="#i-thumbs-down"/></svg> 没有帮助</button>
|
||||
<span class="fb-thanks" id="fb-thanks" hidden>感谢您的反馈!</span>
|
||||
</div>
|
||||
|
||||
</main>
|
||||
|
||||
<aside class="toc">
|
||||
@@ -149,7 +143,6 @@
|
||||
<a class="toc-l2" href="#sec-4">其他</a>
|
||||
|
||||
</nav>
|
||||
<button class="print-btn" id="print-btn"><svg class="i"><use href="#i-printer"/></svg> 打印 / 导出 PDF</button>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
Vendored
+6
-13
@@ -11,9 +11,6 @@
|
||||
<body>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" style="display:none" aria-hidden="true">
|
||||
<symbol id="i-menu" viewBox="0 0 24 24"><path d="M4 5h16"/><path d="M4 12h16"/><path d="M4 19h16"/></symbol>
|
||||
<symbol id="i-printer" viewBox="0 0 24 24"><path d="M6 18H4a2 2 0 0 1-2-2v-5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-2"/><path d="M6 9V3a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v6"/><rect x="6" y="14" width="12" height="8" rx="1"/></symbol>
|
||||
<symbol id="i-thumbs-up" viewBox="0 0 24 24"><path d="M15 5.88 14 10h5.83a2 2 0 0 1 1.92 2.56l-2.33 8A2 2 0 0 1 17.5 22H4a2 2 0 0 1-2-2v-8a2 2 0 0 1 2-2h2.76a2 2 0 0 0 1.79-1.11L12 2a3.13 3.13 0 0 1 3 3.88Z"/><path d="M7 10v12"/></symbol>
|
||||
<symbol id="i-thumbs-down" viewBox="0 0 24 24"><path d="M9 18.12 10 14H4.17a2 2 0 0 1-1.92-2.56l2.33-8A2 2 0 0 1 6.5 2H20a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.76a2 2 0 0 0-1.79 1.11L12 22a3.13 3.13 0 0 1-3-3.88Z"/><path d="M17 14V2"/></symbol>
|
||||
</svg>
|
||||
<header class="topbar">
|
||||
<div class="topbar-inner">
|
||||
@@ -75,6 +72,8 @@
|
||||
|
||||
<a class="nav-link" href="/docs/ai">AI 助手</a>
|
||||
|
||||
<a class="nav-link" href="/docs/mcp">MCP 接入</a>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="nav-group">
|
||||
@@ -92,10 +91,10 @@
|
||||
<main class="content">
|
||||
<div class="breadcrumb">文档 <span>/</span> 开始使用 <span>/</span> 产品介绍</div>
|
||||
<h1 class="page-title">产品介绍</h1>
|
||||
<div class="page-meta">更新于 2026-09-23</div>
|
||||
<div class="page-meta">更新于 2026-10-16</div>
|
||||
<article class="md">
|
||||
<p>OpsxDB 是一款<strong>本地优先</strong>的桌面数据库工作台,面向运维与开发:连库、写 SQL、看结果,全在本机完成。</p>
|
||||
<p>主交付形态是可安装的桌面应用(Tauri 2),本地 Go 后端随应用自动启动;同一套界面也可用单个二进制在 Web / 内网部署。数据全部保存在本机,不经过任何第三方服务器。</p>
|
||||
<p>主交付形态是可安装的桌面应用,本地后端随应用自动启动,从 <a href="https://opsxdb.rlwj.cn">官网</a> 下载即用。数据全部保存在本机,不经过任何第三方服务器。</p>
|
||||
<h2 id="sec-1">功能总览</h2>
|
||||
<table>
|
||||
<thead>
|
||||
@@ -143,7 +142,7 @@
|
||||
</tr>
|
||||
<tr>
|
||||
<td>桌面唯一形态</td>
|
||||
<td>桌面 GUI(Tauri 2),本地后端随应用自动拉起</td>
|
||||
<td>桌面 GUI,本地后端随应用自动拉起</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
@@ -197,12 +196,7 @@
|
||||
|
||||
</div>
|
||||
|
||||
<div class="feedback" id="feedback">
|
||||
<span class="feedback-q">本页内容是否对您有帮助?</span>
|
||||
<button class="fb-btn" data-v="yes"><svg class="i"><use href="#i-thumbs-up"/></svg> 有帮助</button>
|
||||
<button class="fb-btn" data-v="no"><svg class="i"><use href="#i-thumbs-down"/></svg> 没有帮助</button>
|
||||
<span class="fb-thanks" id="fb-thanks" hidden>感谢您的反馈!</span>
|
||||
</div>
|
||||
|
||||
</main>
|
||||
|
||||
<aside class="toc">
|
||||
@@ -213,7 +207,6 @@
|
||||
<a class="toc-l2" href="#sec-3">为什么选 OpsxDB</a>
|
||||
|
||||
</nav>
|
||||
<button class="print-btn" id="print-btn"><svg class="i"><use href="#i-printer"/></svg> 打印 / 导出 PDF</button>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
+3
-10
@@ -11,9 +11,6 @@
|
||||
<body>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" style="display:none" aria-hidden="true">
|
||||
<symbol id="i-menu" viewBox="0 0 24 24"><path d="M4 5h16"/><path d="M4 12h16"/><path d="M4 19h16"/></symbol>
|
||||
<symbol id="i-printer" viewBox="0 0 24 24"><path d="M6 18H4a2 2 0 0 1-2-2v-5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-2"/><path d="M6 9V3a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v6"/><rect x="6" y="14" width="12" height="8" rx="1"/></symbol>
|
||||
<symbol id="i-thumbs-up" viewBox="0 0 24 24"><path d="M15 5.88 14 10h5.83a2 2 0 0 1 1.92 2.56l-2.33 8A2 2 0 0 1 17.5 22H4a2 2 0 0 1-2-2v-8a2 2 0 0 1 2-2h2.76a2 2 0 0 0 1.79-1.11L12 2a3.13 3.13 0 0 1 3 3.88Z"/><path d="M7 10v12"/></symbol>
|
||||
<symbol id="i-thumbs-down" viewBox="0 0 24 24"><path d="M9 18.12 10 14H4.17a2 2 0 0 1-1.92-2.56l2.33-8A2 2 0 0 1 6.5 2H20a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.76a2 2 0 0 0-1.79 1.11L12 22a3.13 3.13 0 0 1-3-3.88Z"/><path d="M17 14V2"/></symbol>
|
||||
</svg>
|
||||
<header class="topbar">
|
||||
<div class="topbar-inner">
|
||||
@@ -75,6 +72,8 @@
|
||||
|
||||
<a class="nav-link" href="/docs/ai">AI 助手</a>
|
||||
|
||||
<a class="nav-link" href="/docs/mcp">MCP 接入</a>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="nav-group">
|
||||
@@ -162,12 +161,7 @@
|
||||
|
||||
</div>
|
||||
|
||||
<div class="feedback" id="feedback">
|
||||
<span class="feedback-q">本页内容是否对您有帮助?</span>
|
||||
<button class="fb-btn" data-v="yes"><svg class="i"><use href="#i-thumbs-up"/></svg> 有帮助</button>
|
||||
<button class="fb-btn" data-v="no"><svg class="i"><use href="#i-thumbs-down"/></svg> 没有帮助</button>
|
||||
<span class="fb-thanks" id="fb-thanks" hidden>感谢您的反馈!</span>
|
||||
</div>
|
||||
|
||||
</main>
|
||||
|
||||
<aside class="toc">
|
||||
@@ -180,7 +174,6 @@
|
||||
<a class="toc-l2" href="#sec-5">个性化</a>
|
||||
|
||||
</nav>
|
||||
<button class="print-btn" id="print-btn"><svg class="i"><use href="#i-printer"/></svg> 打印 / 导出 PDF</button>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
Vendored
+6
-13
@@ -11,9 +11,6 @@
|
||||
<body>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" style="display:none" aria-hidden="true">
|
||||
<symbol id="i-menu" viewBox="0 0 24 24"><path d="M4 5h16"/><path d="M4 12h16"/><path d="M4 19h16"/></symbol>
|
||||
<symbol id="i-printer" viewBox="0 0 24 24"><path d="M6 18H4a2 2 0 0 1-2-2v-5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-2"/><path d="M6 9V3a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v6"/><rect x="6" y="14" width="12" height="8" rx="1"/></symbol>
|
||||
<symbol id="i-thumbs-up" viewBox="0 0 24 24"><path d="M15 5.88 14 10h5.83a2 2 0 0 1 1.92 2.56l-2.33 8A2 2 0 0 1 17.5 22H4a2 2 0 0 1-2-2v-8a2 2 0 0 1 2-2h2.76a2 2 0 0 0 1.79-1.11L12 2a3.13 3.13 0 0 1 3 3.88Z"/><path d="M7 10v12"/></symbol>
|
||||
<symbol id="i-thumbs-down" viewBox="0 0 24 24"><path d="M9 18.12 10 14H4.17a2 2 0 0 1-1.92-2.56l2.33-8A2 2 0 0 1 6.5 2H20a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.76a2 2 0 0 0-1.79 1.11L12 22a3.13 3.13 0 0 1-3-3.88Z"/><path d="M17 14V2"/></symbol>
|
||||
</svg>
|
||||
<header class="topbar">
|
||||
<div class="topbar-inner">
|
||||
@@ -75,6 +72,8 @@
|
||||
|
||||
<a class="nav-link" href="/docs/ai">AI 助手</a>
|
||||
|
||||
<a class="nav-link" href="/docs/mcp">MCP 接入</a>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="nav-group">
|
||||
@@ -92,10 +91,10 @@
|
||||
<main class="content">
|
||||
<div class="breadcrumb">文档 <span>/</span> 开始使用 <span>/</span> 产品介绍</div>
|
||||
<h1 class="page-title">产品介绍</h1>
|
||||
<div class="page-meta">更新于 2026-09-23</div>
|
||||
<div class="page-meta">更新于 2026-10-16</div>
|
||||
<article class="md">
|
||||
<p>OpsxDB 是一款<strong>本地优先</strong>的桌面数据库工作台,面向运维与开发:连库、写 SQL、看结果,全在本机完成。</p>
|
||||
<p>主交付形态是可安装的桌面应用(Tauri 2),本地 Go 后端随应用自动启动;同一套界面也可用单个二进制在 Web / 内网部署。数据全部保存在本机,不经过任何第三方服务器。</p>
|
||||
<p>主交付形态是可安装的桌面应用,本地后端随应用自动启动,从 <a href="https://opsxdb.rlwj.cn">官网</a> 下载即用。数据全部保存在本机,不经过任何第三方服务器。</p>
|
||||
<h2 id="sec-1">功能总览</h2>
|
||||
<table>
|
||||
<thead>
|
||||
@@ -143,7 +142,7 @@
|
||||
</tr>
|
||||
<tr>
|
||||
<td>桌面唯一形态</td>
|
||||
<td>桌面 GUI(Tauri 2),本地后端随应用自动拉起</td>
|
||||
<td>桌面 GUI,本地后端随应用自动拉起</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
@@ -197,12 +196,7 @@
|
||||
|
||||
</div>
|
||||
|
||||
<div class="feedback" id="feedback">
|
||||
<span class="feedback-q">本页内容是否对您有帮助?</span>
|
||||
<button class="fb-btn" data-v="yes"><svg class="i"><use href="#i-thumbs-up"/></svg> 有帮助</button>
|
||||
<button class="fb-btn" data-v="no"><svg class="i"><use href="#i-thumbs-down"/></svg> 没有帮助</button>
|
||||
<span class="fb-thanks" id="fb-thanks" hidden>感谢您的反馈!</span>
|
||||
</div>
|
||||
|
||||
</main>
|
||||
|
||||
<aside class="toc">
|
||||
@@ -213,7 +207,6 @@
|
||||
<a class="toc-l2" href="#sec-3">为什么选 OpsxDB</a>
|
||||
|
||||
</nav>
|
||||
<button class="print-btn" id="print-btn"><svg class="i"><use href="#i-printer"/></svg> 打印 / 导出 PDF</button>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
Vendored
+10
-14
@@ -11,9 +11,6 @@
|
||||
<body>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" style="display:none" aria-hidden="true">
|
||||
<symbol id="i-menu" viewBox="0 0 24 24"><path d="M4 5h16"/><path d="M4 12h16"/><path d="M4 19h16"/></symbol>
|
||||
<symbol id="i-printer" viewBox="0 0 24 24"><path d="M6 18H4a2 2 0 0 1-2-2v-5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-2"/><path d="M6 9V3a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v6"/><rect x="6" y="14" width="12" height="8" rx="1"/></symbol>
|
||||
<symbol id="i-thumbs-up" viewBox="0 0 24 24"><path d="M15 5.88 14 10h5.83a2 2 0 0 1 1.92 2.56l-2.33 8A2 2 0 0 1 17.5 22H4a2 2 0 0 1-2-2v-8a2 2 0 0 1 2-2h2.76a2 2 0 0 0 1.79-1.11L12 2a3.13 3.13 0 0 1 3 3.88Z"/><path d="M7 10v12"/></symbol>
|
||||
<symbol id="i-thumbs-down" viewBox="0 0 24 24"><path d="M9 18.12 10 14H4.17a2 2 0 0 1-1.92-2.56l2.33-8A2 2 0 0 1 6.5 2H20a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.76a2 2 0 0 0-1.79 1.11L12 22a3.13 3.13 0 0 1-3-3.88Z"/><path d="M17 14V2"/></symbol>
|
||||
</svg>
|
||||
<header class="topbar">
|
||||
<div class="topbar-inner">
|
||||
@@ -75,6 +72,8 @@
|
||||
|
||||
<a class="nav-link" href="/docs/ai">AI 助手</a>
|
||||
|
||||
<a class="nav-link active" href="/docs/mcp">MCP 接入</a>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="nav-group">
|
||||
@@ -92,9 +91,8 @@
|
||||
<main class="content">
|
||||
<div class="breadcrumb">文档 <span>/</span> 安全与 AI <span>/</span> MCP 接入</div>
|
||||
<h1 class="page-title">MCP 接入</h1>
|
||||
<div class="page-meta">更新于 2026-10-15</div>
|
||||
<div class="page-meta">更新于 2026-10-16</div>
|
||||
<article class="md">
|
||||
<h1>MCP 接入</h1>
|
||||
<p>把 Cursor、Claude Code、VS Code 等 AI 客户端接到 OpsxDB,即可用自然语言查看结构、查询白名单内的库,并与侧栏 Agent <strong>共用同一套工具与安全策略</strong>。</p>
|
||||
<h2 id="sec-1">什么是 MCP?</h2>
|
||||
<p>MCP(Model Context Protocol)让 AI 客户端调用本机工具。OpsxDB MCP 读取桌面已保存的连接(<code>~/.opsxdb/connections.json</code>),权限由 <code>~/.opsxdb/mcp.json</code> 统一约束。</p>
|
||||
@@ -234,16 +232,15 @@ export OPSXDB_MCP_BIN=/绝对路径/opsxdb/bin/opsxdb-mcp
|
||||
</article>
|
||||
|
||||
<div class="pn-nav">
|
||||
<span class="pn"></span>
|
||||
<span class="pn"></span>
|
||||
|
||||
<a class="pn prev" href="/docs/ai"><span class="pn-label">← 上一页</span><span class="pn-title">AI 助手</span></a>
|
||||
|
||||
|
||||
<a class="pn next" href="/docs/faq"><span class="pn-label">下一页 →</span><span class="pn-title">常见问题</span></a>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="feedback" id="feedback">
|
||||
<span class="feedback-q">本页内容是否对您有帮助?</span>
|
||||
<button class="fb-btn" data-v="yes"><svg class="i"><use href="#i-thumbs-up"/></svg> 有帮助</button>
|
||||
<button class="fb-btn" data-v="no"><svg class="i"><use href="#i-thumbs-down"/></svg> 没有帮助</button>
|
||||
<span class="fb-thanks" id="fb-thanks" hidden>感谢您的反馈!</span>
|
||||
</div>
|
||||
|
||||
</main>
|
||||
|
||||
<aside class="toc">
|
||||
@@ -262,7 +259,6 @@ export OPSXDB_MCP_BIN=/绝对路径/opsxdb/bin/opsxdb-mcp
|
||||
<a class="toc-l2" href="#sec-11">系统要求</a>
|
||||
|
||||
</nav>
|
||||
<button class="print-btn" id="print-btn"><svg class="i"><use href="#i-printer"/></svg> 打印 / 导出 PDF</button>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
+23
-39
@@ -11,9 +11,6 @@
|
||||
<body>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" style="display:none" aria-hidden="true">
|
||||
<symbol id="i-menu" viewBox="0 0 24 24"><path d="M4 5h16"/><path d="M4 12h16"/><path d="M4 19h16"/></symbol>
|
||||
<symbol id="i-printer" viewBox="0 0 24 24"><path d="M6 18H4a2 2 0 0 1-2-2v-5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-2"/><path d="M6 9V3a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v6"/><rect x="6" y="14" width="12" height="8" rx="1"/></symbol>
|
||||
<symbol id="i-thumbs-up" viewBox="0 0 24 24"><path d="M15 5.88 14 10h5.83a2 2 0 0 1 1.92 2.56l-2.33 8A2 2 0 0 1 17.5 22H4a2 2 0 0 1-2-2v-8a2 2 0 0 1 2-2h2.76a2 2 0 0 0 1.79-1.11L12 2a3.13 3.13 0 0 1 3 3.88Z"/><path d="M7 10v12"/></symbol>
|
||||
<symbol id="i-thumbs-down" viewBox="0 0 24 24"><path d="M9 18.12 10 14H4.17a2 2 0 0 1-1.92-2.56l2.33-8A2 2 0 0 1 6.5 2H20a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.76a2 2 0 0 0-1.79 1.11L12 22a3.13 3.13 0 0 1-3-3.88Z"/><path d="M17 14V2"/></symbol>
|
||||
</svg>
|
||||
<header class="topbar">
|
||||
<div class="topbar-inner">
|
||||
@@ -75,6 +72,8 @@
|
||||
|
||||
<a class="nav-link" href="/docs/ai">AI 助手</a>
|
||||
|
||||
<a class="nav-link" href="/docs/mcp">MCP 接入</a>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="nav-group">
|
||||
@@ -92,22 +91,17 @@
|
||||
<main class="content">
|
||||
<div class="breadcrumb">文档 <span>/</span> 开始使用 <span>/</span> 快速开始</div>
|
||||
<h1 class="page-title">快速开始</h1>
|
||||
<div class="page-meta">更新于 2026-09-20</div>
|
||||
<div class="page-meta">更新于 2026-10-16</div>
|
||||
<article class="md">
|
||||
<p>本章从零到出结果:起服务 → 建连接 → 执行第一条 SQL。</p>
|
||||
<h2 id="sec-1">1. 启动</h2>
|
||||
<p>桌面版(主交付形态)双击 OpsxDB 应用即可,本地后端随应用自动拉起。</p>
|
||||
<p>从源码运行(开发):</p>
|
||||
<pre><code class="language-bash">git clone <repo> opsxdb && cd opsxdb
|
||||
npm install
|
||||
|
||||
./run.sh gui # 桌面形态(开发):Tauri 窗口 + 本地后端
|
||||
./run.sh web # 仅启动官网与文档 → http://127.0.0.1:8788/
|
||||
./run.sh package # 打桌面安装包(DMG,内嵌后端)
|
||||
</code></pre>
|
||||
<blockquote>
|
||||
<p><strong>注意</strong>:客户端只在桌面 App 里运行。<code>./run.sh gui</code> 起的 <code>:5174</code> 是桌面 devUrl 的资产服务,不是浏览器客户端;浏览器只用于官网 <code>/</code> 与文档 <code>/docs</code>(后端 <code>:8788</code> 直接提供)。</p>
|
||||
</blockquote>
|
||||
<p>本章从零到出结果:下载安装 → 建连接 → 执行第一条 SQL。</p>
|
||||
<h2 id="sec-1">1. 下载与安装</h2>
|
||||
<p>OpsxDB 客户端唯一形态是桌面应用:双击启动,本地后端随应用自动拉起,<strong>无需安装任何依赖、无需手动起服务</strong>。</p>
|
||||
<ol>
|
||||
<li>打开官网 <a href="https://opsxdb.rlwj.cn">opsxdb.rlwj.cn</a> 获取最新安装包(macOS DMG · Apple Silicon / Intel,Windows 版规划中);</li>
|
||||
<li>双击 DMG,将 OpsxDB 拖入「应用程序」;</li>
|
||||
<li>首次启动自动开始 <strong>30 天全功能试用</strong>——无需注册账号、无需信用卡;</li>
|
||||
<li>试用期覆盖全部连接与 AI 能力。个人非商业用途永久免费;商用授权与定价见<a href="/pricing">定价页</a>。</li>
|
||||
</ol>
|
||||
<h2 id="sec-2">2. 新建连接</h2>
|
||||
<ol>
|
||||
<li>
|
||||
@@ -122,7 +116,7 @@ npm install
|
||||
<p>点 <strong>测试</strong> 验证连通性,再点 <strong>保存并连接</strong>。</p>
|
||||
</li>
|
||||
</ol>
|
||||
<p>连接配置保存在本机,密码混淆存储;后续查询只携带会话 ID,不再上送账密。</p>
|
||||
<p>连接配置保存在本机,密码混淆存储;后续查询只携带会话 ID,不再上送账密。数据库在跳板机后面?连接表单开启 SSH 隧道即可安全直达,见《新建连接》。</p>
|
||||
<h2 id="sec-3">3. 第一次查询</h2>
|
||||
<ol>
|
||||
<li>
|
||||
@@ -140,17 +134,14 @@ npm install
|
||||
<p>结果面板支持<strong>复制 / 导出 CSV / 生成 INSERT</strong>,双击单元格即复制。</p>
|
||||
</li>
|
||||
</ol>
|
||||
<h2 id="sec-4">4. 验证服务</h2>
|
||||
<pre><code class="language-bash">curl -s http://127.0.0.1:8788/health
|
||||
# {"ok":true,"service":"opsxdb"}
|
||||
<h2 id="sec-4">4. 手边没有数据库?</h2>
|
||||
<p>本地还没有可连的库?用 Docker 一分钟起一个练手:</p>
|
||||
<pre><code class="language-bash">docker run -d --name demo-mysql \
|
||||
-e MYSQL_ROOT_PASSWORD=pass -e MYSQL_DATABASE=shop \
|
||||
-p 3306:3306 mysql:8
|
||||
</code></pre>
|
||||
<h2 id="sec-5">5. 手边没有数据库?</h2>
|
||||
<p>本地还没有可连的库?用仓库自带的辅助脚本一键起一个(需要 Docker,一次只起一个):</p>
|
||||
<pre><code class="language-bash">./tests/dbctl.sh up a # MySQL
|
||||
./tests/dbctl.sh up c # PostgreSQL(用户 opsx)
|
||||
./tests/dbctl.sh up f # Redis
|
||||
</code></pre>
|
||||
<p>各驱动的验收状态见《驱动支持》。</p>
|
||||
<p>然后把 <code>mysql://root:pass@127.0.0.1:3306/shop</code> 粘贴进连接表单,点「填入」即可。</p>
|
||||
<p>各数据库的接入方式与验收状态见《<a href="/docs/drivers">驱动支持</a>》。</p>
|
||||
|
||||
</article>
|
||||
|
||||
@@ -163,25 +154,18 @@ npm install
|
||||
|
||||
</div>
|
||||
|
||||
<div class="feedback" id="feedback">
|
||||
<span class="feedback-q">本页内容是否对您有帮助?</span>
|
||||
<button class="fb-btn" data-v="yes"><svg class="i"><use href="#i-thumbs-up"/></svg> 有帮助</button>
|
||||
<button class="fb-btn" data-v="no"><svg class="i"><use href="#i-thumbs-down"/></svg> 没有帮助</button>
|
||||
<span class="fb-thanks" id="fb-thanks" hidden>感谢您的反馈!</span>
|
||||
</div>
|
||||
|
||||
</main>
|
||||
|
||||
<aside class="toc">
|
||||
<div class="toc-title">本页目录</div>
|
||||
<nav class="toc-nav">
|
||||
<a class="toc-l2" href="#sec-1">1. 启动</a>
|
||||
<a class="toc-l2" href="#sec-1">1. 下载与安装</a>
|
||||
<a class="toc-l2" href="#sec-2">2. 新建连接</a>
|
||||
<a class="toc-l2" href="#sec-3">3. 第一次查询</a>
|
||||
<a class="toc-l2" href="#sec-4">4. 验证服务</a>
|
||||
<a class="toc-l2" href="#sec-5">5. 手边没有数据库?</a>
|
||||
<a class="toc-l2" href="#sec-4">4. 手边没有数据库?</a>
|
||||
|
||||
</nav>
|
||||
<button class="print-btn" id="print-btn"><svg class="i"><use href="#i-printer"/></svg> 打印 / 导出 PDF</button>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
Vendored
+3
-10
@@ -11,9 +11,6 @@
|
||||
<body>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" style="display:none" aria-hidden="true">
|
||||
<symbol id="i-menu" viewBox="0 0 24 24"><path d="M4 5h16"/><path d="M4 12h16"/><path d="M4 19h16"/></symbol>
|
||||
<symbol id="i-printer" viewBox="0 0 24 24"><path d="M6 18H4a2 2 0 0 1-2-2v-5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-2"/><path d="M6 9V3a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v6"/><rect x="6" y="14" width="12" height="8" rx="1"/></symbol>
|
||||
<symbol id="i-thumbs-up" viewBox="0 0 24 24"><path d="M15 5.88 14 10h5.83a2 2 0 0 1 1.92 2.56l-2.33 8A2 2 0 0 1 17.5 22H4a2 2 0 0 1-2-2v-8a2 2 0 0 1 2-2h2.76a2 2 0 0 0 1.79-1.11L12 2a3.13 3.13 0 0 1 3 3.88Z"/><path d="M7 10v12"/></symbol>
|
||||
<symbol id="i-thumbs-down" viewBox="0 0 24 24"><path d="M9 18.12 10 14H4.17a2 2 0 0 1-1.92-2.56l2.33-8A2 2 0 0 1 6.5 2H20a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.76a2 2 0 0 0-1.79 1.11L12 22a3.13 3.13 0 0 1-3-3.88Z"/><path d="M17 14V2"/></symbol>
|
||||
</svg>
|
||||
<header class="topbar">
|
||||
<div class="topbar-inner">
|
||||
@@ -75,6 +72,8 @@
|
||||
|
||||
<a class="nav-link" href="/docs/ai">AI 助手</a>
|
||||
|
||||
<a class="nav-link" href="/docs/mcp">MCP 接入</a>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="nav-group">
|
||||
@@ -239,12 +238,7 @@ GET db1:only:key # 在 db1 执行
|
||||
|
||||
</div>
|
||||
|
||||
<div class="feedback" id="feedback">
|
||||
<span class="feedback-q">本页内容是否对您有帮助?</span>
|
||||
<button class="fb-btn" data-v="yes"><svg class="i"><use href="#i-thumbs-up"/></svg> 有帮助</button>
|
||||
<button class="fb-btn" data-v="no"><svg class="i"><use href="#i-thumbs-down"/></svg> 没有帮助</button>
|
||||
<span class="fb-thanks" id="fb-thanks" hidden>感谢您的反馈!</span>
|
||||
</div>
|
||||
|
||||
</main>
|
||||
|
||||
<aside class="toc">
|
||||
@@ -260,7 +254,6 @@ GET db1:only:key # 在 db1 执行
|
||||
<a class="toc-l3" href="#sec-8">Cluster</a>
|
||||
|
||||
</nav>
|
||||
<button class="print-btn" id="print-btn"><svg class="i"><use href="#i-printer"/></svg> 打印 / 导出 PDF</button>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
+3
-10
@@ -11,9 +11,6 @@
|
||||
<body>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" style="display:none" aria-hidden="true">
|
||||
<symbol id="i-menu" viewBox="0 0 24 24"><path d="M4 5h16"/><path d="M4 12h16"/><path d="M4 19h16"/></symbol>
|
||||
<symbol id="i-printer" viewBox="0 0 24 24"><path d="M6 18H4a2 2 0 0 1-2-2v-5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-2"/><path d="M6 9V3a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v6"/><rect x="6" y="14" width="12" height="8" rx="1"/></symbol>
|
||||
<symbol id="i-thumbs-up" viewBox="0 0 24 24"><path d="M15 5.88 14 10h5.83a2 2 0 0 1 1.92 2.56l-2.33 8A2 2 0 0 1 17.5 22H4a2 2 0 0 1-2-2v-8a2 2 0 0 1 2-2h2.76a2 2 0 0 0 1.79-1.11L12 2a3.13 3.13 0 0 1 3 3.88Z"/><path d="M7 10v12"/></symbol>
|
||||
<symbol id="i-thumbs-down" viewBox="0 0 24 24"><path d="M9 18.12 10 14H4.17a2 2 0 0 1-1.92-2.56l2.33-8A2 2 0 0 1 6.5 2H20a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.76a2 2 0 0 0-1.79 1.11L12 22a3.13 3.13 0 0 1-3-3.88Z"/><path d="M17 14V2"/></symbol>
|
||||
</svg>
|
||||
<header class="topbar">
|
||||
<div class="topbar-inner">
|
||||
@@ -75,6 +72,8 @@
|
||||
|
||||
<a class="nav-link" href="/docs/ai">AI 助手</a>
|
||||
|
||||
<a class="nav-link" href="/docs/mcp">MCP 接入</a>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="nav-group">
|
||||
@@ -156,12 +155,7 @@
|
||||
|
||||
</div>
|
||||
|
||||
<div class="feedback" id="feedback">
|
||||
<span class="feedback-q">本页内容是否对您有帮助?</span>
|
||||
<button class="fb-btn" data-v="yes"><svg class="i"><use href="#i-thumbs-up"/></svg> 有帮助</button>
|
||||
<button class="fb-btn" data-v="no"><svg class="i"><use href="#i-thumbs-down"/></svg> 没有帮助</button>
|
||||
<span class="fb-thanks" id="fb-thanks" hidden>感谢您的反馈!</span>
|
||||
</div>
|
||||
|
||||
</main>
|
||||
|
||||
<aside class="toc">
|
||||
@@ -175,7 +169,6 @@
|
||||
<a class="toc-l2" href="#sec-6">与 AI 面板联动</a>
|
||||
|
||||
</nav>
|
||||
<button class="print-btn" id="print-btn"><svg class="i"><use href="#i-printer"/></svg> 打印 / 导出 PDF</button>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
Vendored
+1
-1
@@ -1 +1 @@
|
||||
[{"Slug":"intro","Title":"产品介绍","Group":"开始使用","Text":"OpsxDB 是一款 本地优先 的桌面数据库工作台,面向运维与开发:连库、写 SQL、看结果,全在本机完成。 主交付形态是可安装的桌面应用(Tauri 2),本地 Go 后端随应用自动启动;同一套界面也可用单个二进制在 Web / 内网部署。数据全部保存在本机,不经过任何第三方服务器。 功能总览 能力 说明 18 种数据库 关系型 / NoSQL / 时序·搜索 / 国产库,全部端到端验收;常用引擎原生内置 连接选择器 搜索 / 分类 / 最近 / 图标网格;粘贴连接 URL 一键填入表单;连接颜色标记区分环境 SQL 工作台 CodeMirror 编辑器、⌘/Ctrl+Enter 执行语句或选区、多 Tab、可拖分栏、格式化、执行历史 对象树 懒加载库 / 表 / 列 / 索引 / 触发器;点表名直接看前 100 行;右键管理对象 结果处理 单元格编辑回写 / 右键复制(值·行·JSON·INSERT)/ CSV·JSON·INSERT 导出 / 过滤构建器 / 分页 Redis 工作台 单机 / Sentinel / Cluster;键树浏览(SCAN 游标)、TTL、Hash/JSON 编辑、危险命令拦截 安全通道 每连接独立配置 SSL/TLS 与 SSH 隧道;后端本机监听 + 访问令牌 AI 助手 生成 / 解释 / 优化 / 修复 / 方言转换 / 样例;OpenAI 兼容协议 + SSE 流式输出 危险操作防护 DROP / TRUNCATE / 无 WHERE 的 UPDATE·DELETE 执行前确认 桌面唯一形态 桌面 GUI(Tauri 2),本地后端随应用自动拉起 支持的数据库 家族 覆盖 关系型 MySQL · MariaDB · TiDB · PostgreSQL · SQL Server · Oracle · SQLite NoSQL Redis · MongoDB 时序 / 搜索 Elasticsearch · ZooKeeper · InfluxDB 国产库 达梦 DM · OceanBase · GaussDB / openGauss · PolarDB · TDSQL · Kingbase 逐引擎的接入方式、默认端口与能力边界见《 》;全部 18 引擎均已实测验收。 为什么选 OpsxDB 数据主权 :连接配置与查询历史只存在本机;后端默认仅监听 127.0.0.1。 开箱即用 :桌面版双击即用,本地后端随应用自动拉起;官网与文档也由它内置提供。 为快设计 :点表即看数据、⌘Enter 即执行、结果三键取走(复制 / CSV / INSERT)。 轻量克制 :一个 Go 二进制 + 一份前端,内网可部署,无遥测无账号。 提示 :想马上动手?直接看下一章《快速开始》,30 秒连上第一个库。"},{"Slug":"quickstart","Title":"快速开始","Group":"开始使用","Text":"本章从零到出结果:起服务 → 建连接 → 执行第一条 SQL。 1. 启动 桌面版(主交付形态)双击 OpsxDB 应用即可,本地后端随应用自动拉起。 从源码运行(开发): 注意 :客户端只在桌面 App 里运行。 起的 是桌面 devUrl 的资产服务,不是浏览器客户端;浏览器只用于官网 与文档 (后端 直接提供)。 2. 新建连接 1. 打开应用,进入 连接选择器 ,选择数据库类型(如 MySQL); 2. 或者直接粘贴连接 URL,点「填入」自动拆解字段: 3. 点 测试 验证连通性,再点 保存并连接 。 连接配置保存在本机,密码混淆存储;后续查询只携带会话 ID,不再上送账密。 3. 第一次查询 1. 左侧对象树展开库, 点表名 直接查看前 100 行(展开表可看列结构); 2. 打开 SQL 编辑器,输入: 3. 按 ⌘/Ctrl + Enter 执行当前语句(或选中的片段); 4. 结果面板支持 复制 / 导出 CSV / 生成 INSERT ,双击单元格即复制。 4. 验证服务 5. 手边没有数据库? 本地还没有可连的库?用仓库自带的辅助脚本一键起一个(需要 Docker,一次只起一个): 各驱动的验收状态见《驱动支持》。"},{"Slug":"interface","Title":"界面导览","Group":"开始使用","Text":"OpsxDB 的界面为「高频操作」设计:从打开应用到看到数据,路径越短越好。 连接选择器 启动后的第一个界面: 搜索 :按名称快速过滤已保存的连接; 分类 :关系型 / NoSQL / 国产库 / 时序·搜索 分组浏览; 最近 :最近使用的连接排在最前; 图标网格 :按数据库类型直选,未就绪的类型会标注「未就绪」(仅可保存配置); URL 填入 :粘贴 点「填入」,字段自动拆解。 工作台布局 连接成功后进入工作台,三栏结构: 区域 内容 左侧 连接列表 + 对象树(库 → 表 → 列,懒加载) 中部 SQL 编辑器(多 Tab)+ 结果面板,可拖动分栏 右侧 AI 面板(生成 / 解释 / 优化 / 修复 / 方言 / 样例) 对象树 点 表名 :直接打开前 100 行数据; 展开 表 :查看列结构; 右键表 :打开表 / 查看 DDL / 生成 SQL(SELECT·INSERT·UPDATE·DELETE)/ 重命名 / 克隆表结构·克隆表(含数据)/ 清空 / 截断 / 删除 —— 危险项红色并二次确认; 右键库 :新建查询 / 新建表Line truncated
|
||||
[{"Slug":"intro","Title":"产品介绍","Group":"开始使用","Text":"OpsxDB 是一款 本地优先 的桌面数据库工作台,面向运维与开发:连库、写 SQL、看结果,全在本机完成。 主交付形态是可安装的桌面应用,本地后端随应用自动启动,从 下载即用。数据全部保存在本机,不经过任何第三方服务器。 功能总览 能力 说明 18 种数据库 关系型 / NoSQL / 时序·搜索 / 国产库,全部端到端验收;常用引擎原生内置 连接选择器 搜索 / 分类 / 最近 / 图标网格;粘贴连接 URL 一键填入表单;连接颜色标记区分环境 SQL 工作台 CodeMirror 编辑器、⌘/Ctrl+Enter 执行语句或选区、多 Tab、可拖分栏、格式化、执行历史 对象树 懒加载库 / 表 / 列 / 索引 / 触发器;点表名直接看前 100 行;右键管理对象 结果处理 单元格编辑回写 / 右键复制(值·行·JSON·INSERT)/ CSV·JSON·INSERT 导出 / 过滤构建器 / 分页 Redis 工作台 单机 / Sentinel / Cluster;键树浏览(SCAN 游标)、TTL、Hash/JSON 编辑、危险命令拦截 安全通道 每连接独立配置 SSL/TLS 与 SSH 隧道;后端本机监听 + 访问令牌 AI 助手 生成 / 解释 / 优化 / 修复 / 方言转换 / 样例;OpenAI 兼容协议 + SSE 流式输出 危险操作防护 DROP / TRUNCATE / 无 WHERE 的 UPDATE·DELETE 执行前确认 桌面唯一形态 桌面 GUI,本地后端随应用自动拉起 支持的数据库 家族 覆盖 关系型 MySQL · MariaDB · TiDB · PostgreSQL · SQL Server · Oracle · SQLite NoSQL Redis · MongoDB 时序 / 搜索 Elasticsearch · ZooKeeper · InfluxDB 国产库 达梦 DM · OceanBase · GaussDB / openGauss · PolarDB · TDSQL · Kingbase 逐引擎的接入方式、默认端口与能力边界见《 》;全部 18 引擎均已实测验收。 为什么选 OpsxDB 数据主权 :连接配置与查询历史只存在本机;后端默认仅监听 127.0.0.1。 开箱即用 :桌面版双击即用,本地后端随应用自动拉起;官网与文档也由它内置提供。 为快设计 :点表即看数据、⌘Enter 即执行、结果三键取走(复制 / CSV / INSERT)。 轻量克制 :一个 Go 二进制 + 一份前端,内网可部署,无遥测无账号。 提示 :想马上动手?直接看下一章《快速开始》,30 秒连上第一个库。"},{"Slug":"quickstart","Title":"快速开始","Group":"开始使用","Text":"本章从零到出结果:下载安装 → 建连接 → 执行第一条 SQL。 1. 下载与安装 OpsxDB 客户端唯一形态是桌面应用:双击启动,本地后端随应用自动拉起, 无需安装任何依赖、无需手动起服务 。 1. 打开官网 获取最新安装包(macOS DMG · Apple Silicon / Intel,Windows 版规划中); 2. 双击 DMG,将 OpsxDB 拖入「应用程序」; 3. 首次启动自动开始 30 天全功能试用 ——无需注册账号、无需信用卡; 4. 试用期覆盖全部连接与 AI 能力。个人非商业用途永久免费;商用授权与定价见 。 2. 新建连接 1. 打开应用,进入 连接选择器 ,选择数据库类型(如 MySQL); 2. 或者直接粘贴连接 URL,点「填入」自动拆解字段: 3. 点 测试 验证连通性,再点 保存并连接 。 连接配置保存在本机,密码混淆存储;后续查询只携带会话 ID,不再上送账密。数据库在跳板机后面?连接表单开启 SSH 隧道即可安全直达,见《新建连接》。 3. 第一次查询 1. 左侧对象树展开库, 点表名 直接查看前 100 行(展开表可看列结构); 2. 打开 SQL 编辑器,输入: 3. 按 ⌘/Ctrl + Enter 执行当前语句(或选中的片段); 4. 结果面板支持 复制 / 导出 CSV / 生成 INSERT ,双击单元格即复制。 4. 手边没有数据库? 本地还没有可连的库?用 Docker 一分钟起一个练手: 然后把 粘贴进连接表单,点「填入」即可。 各数据库的接入方式与验收状态见《 》。"},{"Slug":"interface","Title":"界面导览","Group":"开始使用","Text":"OpsxDB 的界面为「高频操作」设计:从打开应用到看到数据,路径越短越好。 连接选择器 启动后的第一个界面: 搜索 :按名称快速过滤已保存的连接; 分类 :关系型 / NoSQL / 国产库 / 时序·搜索 分组浏览; 最近 :最近使用的连接排在最前; 图标网格 :按数据库类型直选,未就绪的类型会标注「未就绪」(仅可保存配置); URL 填入 :粘贴 点「填入」,字段自动拆解。 工作台布局 连接成功后进入工作台,三栏结构: 区域 内容 左侧 连接列表 + 对象树(库 → 表 → 列,懒加载) 中部 SQL 编辑器(多 Tab)+ 结果面板,可拖动分栏 右侧 AI 面板(生成 / 解释 / 优化 / 修复 / 方言 / 样例) 对象树 点 表名 :直接打开前 100 行数据; 展开 表 :查看列结构Line truncated
|
||||
+3
-10
@@ -11,9 +11,6 @@
|
||||
<body>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" style="display:none" aria-hidden="true">
|
||||
<symbol id="i-menu" viewBox="0 0 24 24"><path d="M4 5h16"/><path d="M4 12h16"/><path d="M4 19h16"/></symbol>
|
||||
<symbol id="i-printer" viewBox="0 0 24 24"><path d="M6 18H4a2 2 0 0 1-2-2v-5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-2"/><path d="M6 9V3a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v6"/><rect x="6" y="14" width="12" height="8" rx="1"/></symbol>
|
||||
<symbol id="i-thumbs-up" viewBox="0 0 24 24"><path d="M15 5.88 14 10h5.83a2 2 0 0 1 1.92 2.56l-2.33 8A2 2 0 0 1 17.5 22H4a2 2 0 0 1-2-2v-8a2 2 0 0 1 2-2h2.76a2 2 0 0 0 1.79-1.11L12 2a3.13 3.13 0 0 1 3 3.88Z"/><path d="M7 10v12"/></symbol>
|
||||
<symbol id="i-thumbs-down" viewBox="0 0 24 24"><path d="M9 18.12 10 14H4.17a2 2 0 0 1-1.92-2.56l2.33-8A2 2 0 0 1 6.5 2H20a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.76a2 2 0 0 0-1.79 1.11L12 22a3.13 3.13 0 0 1-3-3.88Z"/><path d="M17 14V2"/></symbol>
|
||||
</svg>
|
||||
<header class="topbar">
|
||||
<div class="topbar-inner">
|
||||
@@ -75,6 +72,8 @@
|
||||
|
||||
<a class="nav-link" href="/docs/ai">AI 助手</a>
|
||||
|
||||
<a class="nav-link" href="/docs/mcp">MCP 接入</a>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="nav-group">
|
||||
@@ -152,12 +151,7 @@
|
||||
|
||||
</div>
|
||||
|
||||
<div class="feedback" id="feedback">
|
||||
<span class="feedback-q">本页内容是否对您有帮助?</span>
|
||||
<button class="fb-btn" data-v="yes"><svg class="i"><use href="#i-thumbs-up"/></svg> 有帮助</button>
|
||||
<button class="fb-btn" data-v="no"><svg class="i"><use href="#i-thumbs-down"/></svg> 没有帮助</button>
|
||||
<span class="fb-thanks" id="fb-thanks" hidden>感谢您的反馈!</span>
|
||||
</div>
|
||||
|
||||
</main>
|
||||
|
||||
<aside class="toc">
|
||||
@@ -170,7 +164,6 @@
|
||||
<a class="toc-l2" href="#sec-5">内网部署形态</a>
|
||||
|
||||
</nav>
|
||||
<button class="print-btn" id="print-btn"><svg class="i"><use href="#i-printer"/></svg> 打印 / 导出 PDF</button>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
+3
-10
@@ -11,9 +11,6 @@
|
||||
<body>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" style="display:none" aria-hidden="true">
|
||||
<symbol id="i-menu" viewBox="0 0 24 24"><path d="M4 5h16"/><path d="M4 12h16"/><path d="M4 19h16"/></symbol>
|
||||
<symbol id="i-printer" viewBox="0 0 24 24"><path d="M6 18H4a2 2 0 0 1-2-2v-5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-2"/><path d="M6 9V3a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v6"/><rect x="6" y="14" width="12" height="8" rx="1"/></symbol>
|
||||
<symbol id="i-thumbs-up" viewBox="0 0 24 24"><path d="M15 5.88 14 10h5.83a2 2 0 0 1 1.92 2.56l-2.33 8A2 2 0 0 1 17.5 22H4a2 2 0 0 1-2-2v-8a2 2 0 0 1 2-2h2.76a2 2 0 0 0 1.79-1.11L12 2a3.13 3.13 0 0 1 3 3.88Z"/><path d="M7 10v12"/></symbol>
|
||||
<symbol id="i-thumbs-down" viewBox="0 0 24 24"><path d="M9 18.12 10 14H4.17a2 2 0 0 1-1.92-2.56l2.33-8A2 2 0 0 1 6.5 2H20a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.76a2 2 0 0 0-1.79 1.11L12 22a3.13 3.13 0 0 1-3-3.88Z"/><path d="M17 14V2"/></symbol>
|
||||
</svg>
|
||||
<header class="topbar">
|
||||
<div class="topbar-inner">
|
||||
@@ -75,6 +72,8 @@
|
||||
|
||||
<a class="nav-link" href="/docs/ai">AI 助手</a>
|
||||
|
||||
<a class="nav-link" href="/docs/mcp">MCP 接入</a>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="nav-group">
|
||||
@@ -247,12 +246,7 @@
|
||||
<span class="pn"></span>
|
||||
</div>
|
||||
|
||||
<div class="feedback" id="feedback">
|
||||
<span class="feedback-q">本页内容是否对您有帮助?</span>
|
||||
<button class="fb-btn" data-v="yes"><svg class="i"><use href="#i-thumbs-up"/></svg> 有帮助</button>
|
||||
<button class="fb-btn" data-v="no"><svg class="i"><use href="#i-thumbs-down"/></svg> 没有帮助</button>
|
||||
<span class="fb-thanks" id="fb-thanks" hidden>感谢您的反馈!</span>
|
||||
</div>
|
||||
|
||||
</main>
|
||||
|
||||
<aside class="toc">
|
||||
@@ -264,7 +258,6 @@
|
||||
<a class="toc-l2" href="#sec-4">SQL 编辑器右键</a>
|
||||
|
||||
</nav>
|
||||
<button class="print-btn" id="print-btn"><svg class="i"><use href="#i-printer"/></svg> 打印 / 导出 PDF</button>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
+3
-10
@@ -11,9 +11,6 @@
|
||||
<body>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" style="display:none" aria-hidden="true">
|
||||
<symbol id="i-menu" viewBox="0 0 24 24"><path d="M4 5h16"/><path d="M4 12h16"/><path d="M4 19h16"/></symbol>
|
||||
<symbol id="i-printer" viewBox="0 0 24 24"><path d="M6 18H4a2 2 0 0 1-2-2v-5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-2"/><path d="M6 9V3a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v6"/><rect x="6" y="14" width="12" height="8" rx="1"/></symbol>
|
||||
<symbol id="i-thumbs-up" viewBox="0 0 24 24"><path d="M15 5.88 14 10h5.83a2 2 0 0 1 1.92 2.56l-2.33 8A2 2 0 0 1 17.5 22H4a2 2 0 0 1-2-2v-8a2 2 0 0 1 2-2h2.76a2 2 0 0 0 1.79-1.11L12 2a3.13 3.13 0 0 1 3 3.88Z"/><path d="M7 10v12"/></symbol>
|
||||
<symbol id="i-thumbs-down" viewBox="0 0 24 24"><path d="M9 18.12 10 14H4.17a2 2 0 0 1-1.92-2.56l2.33-8A2 2 0 0 1 6.5 2H20a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.76a2 2 0 0 0-1.79 1.11L12 22a3.13 3.13 0 0 1-3-3.88Z"/><path d="M17 14V2"/></symbol>
|
||||
</svg>
|
||||
<header class="topbar">
|
||||
<div class="topbar-inner">
|
||||
@@ -75,6 +72,8 @@
|
||||
|
||||
<a class="nav-link" href="/docs/ai">AI 助手</a>
|
||||
|
||||
<a class="nav-link" href="/docs/mcp">MCP 接入</a>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="nav-group">
|
||||
@@ -180,12 +179,7 @@
|
||||
|
||||
</div>
|
||||
|
||||
<div class="feedback" id="feedback">
|
||||
<span class="feedback-q">本页内容是否对您有帮助?</span>
|
||||
<button class="fb-btn" data-v="yes"><svg class="i"><use href="#i-thumbs-up"/></svg> 有帮助</button>
|
||||
<button class="fb-btn" data-v="no"><svg class="i"><use href="#i-thumbs-down"/></svg> 没有帮助</button>
|
||||
<span class="fb-thanks" id="fb-thanks" hidden>感谢您的反馈!</span>
|
||||
</div>
|
||||
|
||||
</main>
|
||||
|
||||
<aside class="toc">
|
||||
@@ -199,7 +193,6 @@
|
||||
<a class="toc-l2" href="#sec-6">快捷键</a>
|
||||
|
||||
</nav>
|
||||
<button class="print-btn" id="print-btn"><svg class="i"><use href="#i-printer"/></svg> 打印 / 导出 PDF</button>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
Reference in new issue
Block a user