本文用于指导使用达梦 DM 管理工具 Manager 连接数据库、查看 SQL 预估执行计划,以及通过自动跟踪观察实际执行情况。
启动 DM 管理工具,在左侧“对象导航”工具栏中点击带加号的插头图标,即原手册红框位置。
在“新建数据库连接”窗口填写以下信息。
| 字段或控件 | 用途与填写方式 |
|---|---|
| 常规 | 设置主机、端口、验证方式、用户名和口令等基本连接信息。 |
| 高级 | 配置高级连接选项;原手册未展开,具体字段以当前版本为准。 |
| 主机名及右侧下拉 | 填写数据库服务器 IP 或主机名;下拉候选内容以本机记录为准。 |
| 端口 | 填写实例监听端口。原手册示例为 5236,实际以目标实例配置为准。 |
| 验证方式下拉 | 选择身份验证方式;截图为“达梦服务器验证”。 |
| 用户名 | 填写有权访问目标对象的数据库用户;截图使用 SYSDBA,并不表示必须使用该用户。 |
| 口令 | 对应数据库用户的密码。 |
| 保存口令 | 选择是否由客户端保存口令。 |
| 生产环境 | 将连接标识为生产环境;不能据此认为已启用只读或禁止修改。其附加交互以当前版本为准。 |
| 连接名 | 为本机保存的连接填写便于识别的名称。 |
先点击“测试”检查连接,再点击“连接”进入数据库;需要保留配置时可使用“保存”。手册中的 IP 仅是示例。
选择目标连接后点击主工具栏“新建查询”。核对查询标签上的服务器、端口和登录用户,确保连接正确。
右侧显示“SYSDBA”的下拉框用于选择当前会话模式,即对象名称解析所使用的 schema。切换模式不会切换登录用户,也不会增加对象访问权限。为避免同名对象混淆,可直接写完整对象名。
SELECT COUNT(*)
FROM 目标模式.LOG_COMMIT;
将“目标模式”替换为实际 schema;原手册示例语句为 select count(*) from LOG_COMMIT;。
原手册没有展示“执行计划”图标的悬停提示,因此不宜仅凭图案认定按钮。可先在“查询”菜单确认命令,也可以执行以下文本方式,明确获得预估计划:
EXPLAIN
SELECT COUNT(*) FROM 目标模式.LOG_COMMIT;
EXPLAIN 为原 SQL 生成预估计划,不实际执行原查询,也不返回其业务结果集。查看预估计划不要求先开启会话 SQL 监控,也不要求切换为自动提交。
原手册中“柱状图带斜线”的按钮,其悬停提示明确为“打开当前会话SQL监控功能”。点击以开启当前查询会话的 SQL 监控,再执行需要分析的语句。补充截图中,同一位置显示为不带斜线的柱状图且处于按下外观,与原图的关闭状态形成对照,可作为已开启监控的界面参考;最终状态以悬停提示为准。
此按钮用于会话监控,不应当作“显示执行计划”按钮。监控数据能否取得,还取决于数据库端监控配置、权限和版本。若只有计划而没有实际监控信息,应先核实这些条件,不应将缺失数据理解为耗时为零。
点击“靶心图标”右侧下拉箭头,选择所需模式。原截图包含 INDEX、NL、TRACE、TRACEONLY 四项。
| 模式 | 是否实际执行原 SQL | 输出内容 | 使用场景 |
|---|---|---|---|
| INDEX | 否 | 计划存在表扫描时,展示扫描方式、表名和索引信息 | 核对表和索引访问方式 |
| NL | 否 | 计划存在 NL 操作时,展示 NL 及原始语句相关信息 | 聚焦嵌套循环操作 |
| TRACE | 是 | 结果集、执行计划和部分监控信息 | 对照查询结果分析执行情况 |
| TRACEONLY | 是 | 执行计划和部分监控信息,不展示查询结果集 | 分析执行情况并减少结果集展示 |
选定模式后,完整选中目标 SQL,点击自动跟踪主按钮触发分析;若当前版本交互不同,以其悬停提示和联机帮助为准。补充截图展示的是 TRACE 已选中,底部已出现“自动跟踪”标签,并输出执行计划与 Statistics。截图只能证明当前选择及结果状态,不能单凭红箭头确定每次点击的先后顺序。
TRACEONLY 仍然执行 SQL。 对查询可能产生实际扫描和计算开销;对数据修改语句可能修改数据。不能将“不显示结果集”理解为“不执行”。
“自动提交/手动提交”下拉框用于控制事务提交方式,与是否显示执行计划是两个独立设置。
| 模式或按钮 | 说明 |
|---|---|
| 自动提交 | 按客户端及数据库事务规则自动提交语句产生的修改。 |
| 手动提交 | 常规事务修改由用户决定提交或回滚。 |
| 蓝色对勾 | 提交当前事务中尚未提交的修改,不只针对编辑器选中的 SQL。 |
| 蓝色回转箭头 | 回滚当前事务尚未提交的修改;不能撤销已经提交的修改。 |
原手册展示了提交方式切换,但没有说明查看计划必须选择自动提交。对 DDL 等语句,也不能假定选择手动提交后所有操作都可以撤销。
下表按原手册查询窗口工具栏从左到右排列。分隔线不计为按钮;名称不明的图标仍保留位置,便于对照。
| 序号 | 图标或界面文字 | 功能与核实情况 |
|---|---|---|
| 1 | 蓝色三角形 | 执行 SQL。一般执行选中文本;未选择文本时可能执行全部编辑内容,应先选中目标语句。 |
| 2 | 文本线条加向下折箭头 | 执行相关按钮。截图没有悬停说明,无法确认具体执行范围或执行方式;使用前核对提示。 |
| 3 | 文本线条加横向折箭头 | 执行相关按钮。截图不能确认与第 2 项的差异,不宜直接认定为“执行当前语句”或“执行全部”。 |
| 4 | 纸张叠加蓝色三角形 | 执行或脚本相关按钮;正式名称、作用范围在原手册中未显示,需核对提示。 |
| 5 | 红色方块 | 停止正在执行的 SQL 操作;停止请求不等于事务回滚。 |
| 6 | 柱状图,关闭时带斜线 | 打开/关闭当前会话 SQL 监控;原图显示“打开”提示,补充图为不带斜线且按下的外观,可对照识别开启状态。 |
| 7 | 蓝色对勾 | 提交当前事务。 |
| 8 | 蓝色回转箭头 | 回滚当前事务尚未提交的修改。 |
| 9 | 自动提交/手动提交下拉 | 切换事务提交模式。 |
| 10 | 靶心图标及下拉箭头 | 自动跟踪,选择 INDEX、NL、TRACE、TRACEONLY 等模式。 |
| 11 | 日历叠加放大镜 | 截图没有功能文字,不能确认是历史记录还是时间相关查询入口;需核对提示。 |
| 12 | 闪电叠加放大镜 | 截图没有功能文字,无法仅凭图形确认正式名称;如用于执行计划,应先核对提示或改用“查询”菜单、F9、EXPLAIN。 |
| 13 | 蓝色三角形及两个向右箭头 | 截图没有功能文字,具体执行范围需核对提示,不能直接当成普通执行按钮。 |
| 14 | SYSDBA 下拉框 | 切换当前会话模式,决定未带 schema 的对象名称如何解析。 |
| 15 | 魔法棒图标 | 对应常见的 SQL 格式化入口;该截图未给出提示,准确名称以本机为准。格式化改变文本排版,不等于执行 SQL。 |
| 16 | 方框内嵌小方格 | 原截图未给出提示,正式名称和用途待当前版本确认。 |
灰色按钮通常表示当前状态下不可用,例如没有可提交事务或没有可撤销的编辑。仅凭颜色不能判断数据库语句是否成功。
| 按钮 | 说明 |
|---|---|
| 测试 | 按当前填写的信息尝试验证数据库连接,查看是否能连通、认证是否通过。 |
| 保存 | 保存本机连接配置;不是提交数据库事务。 |
| 取消 | 取消本次连接窗口操作。 |
| 连接 | 使用当前连接信息连接数据库。 |
| 左下角问号 | 打开当前对话框相关帮助。 |
| 右上角 × | 关闭连接对话框。 |
| 按钮或菜单 | 说明 |
|---|---|
| 文件 | 文件及相关操作入口,具体子菜单以当前版本为准。 |
| 编辑 | 编辑文本的相关操作入口。 |
| 查询 | 查询与 SQL 执行相关命令入口;打开查询窗口后在截图中出现。 |
| 窗口 | 窗口、视图与选项等设置入口。 |
| 帮助 | 帮助文档及产品相关信息入口。 |
| 新建查询 | 为所选数据库连接新建 SQL 编辑窗口。 |
| 新建及下拉箭头 | 选择需要新建的对象或资源;具体对象以展开菜单为准。 |
| 黄色文件夹 | 打开文件,例如已有 SQL 脚本。 |
| 单个软盘 | 保存当前编辑文件,不等于提交数据库事务。 |
| 两个软盘 | 保存全部可保存的编辑文件。 |
| 左弯箭头 | 撤销文本编辑。 |
| 右弯箭头 | 重做文本编辑。 |
| 剪刀 | 剪切选中内容。 |
| 双纸张 | 复制选中内容。 |
| 剪贴板 | 粘贴内容。 |
| 左箭头及下拉 | 后退导航;可用范围和历史项以当前窗口为准。 |
| 右箭头及下拉 | 前进导航。 |
| 主页 | 打开工具主页。 |
| SQL 调试 | 打开 SQL/DMSQL 调试功能,用于程序调试。 |
| 数据生成 | 打开测试数据生成相关功能。 |
| 终端及下拉箭头 | 打开或选择终端相关功能,支持的终端类型以本机菜单为准。 |
| 按钮或图标 | 说明 |
|---|---|
| 插头加号,原手册红框 | 新建数据库连接。 |
| 相邻插头带红色标记 | 从图形判断为连接断开或移除相关操作;截图无提示,不能确定是否只断开连接或还会删除本机配置,需先核对。 |
| 放大镜 | 查找或搜索对象的入口;搜索范围以弹出窗口为准。 |
| 重叠方框内带横线 | 通常用于折叠树节点,截图未显示正式提示,需以当前版本确认。 |
| 绿色四向箭头 | 导航视图相关操作;截图不能确认是展开、定位还是其他功能。 |
| 对象导航右侧小三角 | 打开该视图的附加菜单。 |
| 对象导航标签 × | 关闭对象导航视图。 |
| 查询标签 × | 关闭当前 SQL 编辑页,未保存文本可能提示保存。 |
| 面板右上角短横线 | 最小化该面板。 |
| 面板右上角方框 | 最大化或还原该面板。 |
| 应用最上方 × | 关闭 DM 管理工具。 |
| 左侧收起栏上的视图小图标 | 切换或恢复相应视图;截图未展示提示文字,各项名称需在本机核对。 |
SELECT COUNT(*) FROM LOG_COMMIT;;表不在当前模式时补充 schema。| 页面元素 | 说明 |
|---|---|
| 消息 | 切换到 SQL 执行消息区域,查看执行提示或错误信息。 |
| DUAL | 补充截图中可见的结果集标签名称。点击可切换对应结果集;不能仅凭标签名称认定上方 SQL 查询了 DUAL 表,也不能确认它就是本次 COUNT 查询的结果。 |
| 自动跟踪 | 展示自动跟踪输出;图中包含执行计划文本和 Statistics。 |
| 自动跟踪标签右侧 × | 关闭该标签,不等于回滚或停止 SQL。 |
| 结果区域右上角单个蓝色 × | 关闭相关结果页的入口;具体关闭当前页还是整个结果区,截图无提示,需在本机确认。 |
| 相邻的多个叉形图标 | 结果页批量关闭相关入口;是否保留当前页等范围无法从静态截图确认。 |
| 结果区域右上角方框 | 最大化或还原结果区域。 |
| 编辑区横向滚动条 | 横向查看较长 SQL 文本。 |
| 结果区右侧纵向滚动条 | 查看后续计划或 Statistics 项;本图底部还有未展示完整的内容。 |
| 情况 | 处理方法 |
|---|---|
| 只返回查询结果,没有计划 | 确认使用的是“执行计划”或自动跟踪功能;普通执行按钮默认不等同于查看计划。 |
| INDEX 或 NL 没有预期信息 | 检查计划中是否存在相应扫描或 NL 操作;需要整体预估计划时使用 EXPLAIN。 |
| 表不存在或对象无效 | 检查目标连接、会话模式、对象名大小写与访问权限,必要时使用 schema.表名。 |
| TRACEONLY 没有查询结果集 | 这是其预期行为,但 SQL 仍已实际执行。 |
| 有执行计划但缺少监控信息 | 核实当前会话监控状态、数据库端监控配置及权限。 |
| 某些按钮与手册不一致 | 核对 Manager 版本,悬停查看按钮提示,并在“帮助”中查阅该版本联机手册。 |
文章
阅读量
获赞
