在 https://dms.aliyun.com/查看数据库没有数据表,但是直接使用 navicat访问是有数据表的

在 DMS 中,查看你当前连接的数据库实例,确认登录使用的用户名是什么。
怎么确认,怎么修改
在阿里云 DMS 中,确认和修改数据库登录账号非常简单。请按照以下步骤操作:
一、 怎么确认(查看 DMS 当前使用的账号)
- 登录阿里云 DMS 控制台。
- 在左侧的 “数据库实例” 列表中,找到你要管理的那个数据库。
- 鼠标右键点击该实例(或者点击实例右侧的 “更多” -> “编辑实例”)。
- 在弹出的“编辑实例”窗口中,找到 “数据库账号” 这一栏。
- 这里显示的用户名,就是 DMS 目前正在用来连接数据库的账号。
- 进行对比:打开你的 Navicat,右键你的连接选择“编辑连接”(或“连接属性”),查看里面的“用户名”。对比两者是否一致。
二、 怎么修改(在 DMS 中更换账号)
如果确认 DMS 使用的账号和 Navicat 不一致,或者 DMS 的账号权限不够,你可以直接修改它:
- 就在刚才打开的 “编辑实例” 窗口中。
- 将 “数据库账号” 和 “数据库密码” 修改为和 Navicat 中完全一致的高权限账号(例如
root或你的主账号)。 - 点击下方的 “测试连接”。
- 如果提示“连接成功”,说明账号密码正确且网络通畅。
- 点击 “保存”。
三、 刷新 DMS 连接
修改保存后,DMS 不会立即生效,你需要重新登录该实例:
- 在 DMS 左侧实例列表中,右键点击该实例,选择 “关闭连接”(或注销登录)。
- 然后双击该实例,重新输入(或自动读取)刚刚修改后的账号密码进行登录。
- 登录成功后,再次查看数据表,应该就能正常显示出来了。

现在是免登录状态,我怎么切换
看到你截图中的 “免登录实例” 了,这就是问题的根源。
🔍 为什么免登录会导致看不到表?
免登录模式下,DMS 使用的是阿里云 RAM 角色授权(底层自动分配的系统账号),不是你手动输入的那个数据库账号。这个系统账号的权限通常非常有限,可能只有部分数据库的访问权,所以你看不到表。
而 Navicat 使用的是你手动配置的具体数据库账号(比如
root),权限更完整,所以能看到所有表。🔄 切换方法:从免登录切换为手动登录
免登录实例无法直接切换为手动登录,需要删除后重新添加。 按以下步骤操作:
第一步:删除当前免登录实例
- 在 DMS 左侧实例列表中,找到你的免登录实例
rm-2zepx...。 - 鼠标右键点击它,选择 “删除实例”(或点击实例旁边的
...更多按钮 → 删除)。 - 确认删除。
⚠️ 放心,这只是从 DMS 中移除该实例的显示,不会删除任何数据库数据。
第二步:重新添加实例(手动登录模式)
- 点击 DMS 左侧实例列表上方的 “+” 号按钮(添加实例)。
- 在弹出的页面中,选择 “手动录入” 或 “阿里云RDS”(根据你的情况)。
- 如果选择”阿里云RDS”,系统会自动列出你的 RDS 实例,选择你的实例。
- 关键一步:在”数据库账号”和”数据库密码”栏中,手动输入你在 Navicat 中使用的那个账号和密码(比如
root)。 - 点击 “测试连接”,确认成功。
- 点击 “保存”。
第三步:重新登录实例
- 在左侧实例列表中双击新添加的实例。
- 此时会弹出登录窗口,确认账号信息无误后点击登录。
- 登录后,再次查看数据表列表,应该就能看到了。

这张截图很关键,问题就出在 “访问方式” 这个选项上。
🎯 你当前选的是”安全托管-自动”
这个模式下,阿里云会自动生成托管账号,也就是你之前的”免登录”状态,权限受限所以看不到表。
✅ 正确选择:”安全托管-手动”
从下拉菜单中选择 “安全托管-手动”(第二个选项),然后会出现 “数据库账号” 和 “数据库密码” 的输入框。
操作步骤:
- 点击下拉菜单,选择 “安全托管-手动”。
- 在弹出的账号密码输入框中,填入你在 Navicat 中使用的那个账号和密码。
- 点击左下角的 “测试连接”,确认连接成功。
- 点击右下角的 “提交”。
- 提交成功后,双击该实例重新登录,就能看到所有数据表了。
💡 三种访问方式对比
表格
选择 “安全托管-手动” 后输入你的数据库账号密码,问题就解决了。
