跳转到正文

每天都用 TablePro?购买许可证即可使用付费功能,并支持下个版本的开发。 购买许可证购买许可证,支持 TablePro

连接、隧道和凭据

如果数据库位于堡垒机、集群或云账户登录之后,只需设置一次连接所需的访问路径和密码来源,并为生产连接制定更严格的规则。本页介绍的功能均在 Mac 应用中,最后一节介绍 iPhone 和 iPad。
MaciPhone與iPad

本页的付费功能:Environment Variables (Starter)。其余功能全部免费。

管理连接库

每个连接都在一个包含 General、Network、Options 和 Appearance 标签页的表单中编辑。导入连接 URL 后,表单会自动填充,包括 jdbc: URL 和包含 SSH 中转信息的 +ssh URL;如果剪贴板中已有 URL,表单会提供 Use clipboard URL。

为连接设置颜色、任意数量的标签和嵌套分组,并将常用连接加星标为收藏。环境以标签表示,内置 local、development、production 和 testing,也可以添加自定义标签。空连接库会提供 Open Sample Database,打开随应用附带的 Chinook SQLite 副本。

在同一窗口打开多个连接,通过左侧的连接栏切换;每个连接都会回到上次使用的标签页。Open in New Window 可让两个连接并排显示。

Welcome 窗口以带颜色标签的 Production 和 Staging 分组列出已保存的连接,同时显示 Chinook 示例数据库。

导入已有连接

通常无需从空列表开始:TablePro 可以从其他客户端、项目配置文件或 AWS 账户读取连接。

从其他数据库客户端导入

Import from Other App 读取 TablePlus、Sequel Ace、DBeaver、DataGrip、Beekeeper Studio和Navicat 中保存的连接,包括 TablePlus 的 Setapp 版,并从这些应用的存储位置导入密码,也支持 DBeaver 和 Navicat 保存的加密密码。Navicat 连接从 .ncx 导出文件读取。

Import from DataGrip 面板列出在 DataGrip 中找到的三个连接,每个都标记为可以导入。

从项目配置文件导入

Open Project Folder 在项目中扫描数据库配置,支持 .env、wp-config.php、Prisma schema、Rails 的 config/database.yml、docker-compose.yml、Spring 的 application.properties 或 application.yml,以及 appsettings.json。它会列出每组配置及其来源文件,选择后填入连接表单;密码直接存入钥匙串。如果文件路径、主机或数据库名称中出现独立单词 prod、production 或 live,该连接的安全模式默认设为 Alert 级别。

acme-shop 项目的 Open Project Folder 结果,显示在 .env 和 .env.production 中找到的连接。

从 AWS 账户导入

Import from AWS 列出 AWS 配置文件在所选区域中可见的 RDS 实例和 Aurora 集群,并添加选中的项目。配置文件需要 rds:DescribeDBInstances 和 rds:DescribeDBClusters 权限。

访问堡垒机、代理或集群后的数据库

SSH 和 TLS

SSH 隧道支持密码、私钥、1Password 等 SSH 代理或键盘交互提示登录,可依次经过跳板机,也可遵循 ~/.ssh/config 中的 ProxyJump。一次性验证码可以根据钥匙串中的密钥生成,或在每次连接时要求输入;未知主机密钥会在 TablePro 信任前显示指纹。将隧道保存为 SSH 配置文件即可复用。

TLS 支持 Disabled、Preferred、Required、Verify CA 和 Verify Identity 模式,可使用自己的 CA、客户端证书和密钥。Required 仅加密,不检查服务器证书;Verify 模式会验证证书。

连接表单的 SSH 设置:主机 bastion.acme.internal、用户 deploy、密钥认证,以及一个跳板主机。

代理、Cloudflare、Cloud SQL 和隧道命令

不通过 SSH 访问时,Network 标签页可使用支持远程 DNS 的 SOCKS5 代理、Cloudflare Access 或 Cloud SQL Auth Proxy。使用 Cloudflare Access 时,TablePro 运行 cloudflared 并通过浏览器或服务令牌登录;使用 Cloud SQL Auth Proxy 时,TablePro 为 PostgreSQL、MySQL和SQL Server 下载、校验并运行该代理。

Tunnel Command 启动 kubectl port-forward、aws ssm start-session 或自定义命令,再连接到它打开的本地端口。连接还可在建立前执行 shell 脚本,每个会话先征求确认,并在连接后立即执行 SQL 语句。

通过 kubectl port-forward 隧道连接 svc/orders-db 的连接,显示将执行的命令。

使用云账户登录

AWS IAM 数据库认证在每次连接时签发新令牌,可使用访问密钥、~/.aws 中的配置文件(支持 credential_process 和角色代入)或 AWS IAM Identity Center,并将 TLS 提升为 Required。Amazon ElastiCache for Redis、Amazon Keyspaces 和 DynamoDB 使用各自的 AWS 签名。

SQL Server 可使用提供的应用注册客户端 ID,在浏览器中通过 Microsoft Entra ID 登录,或使用票据、主体和密码进行 Kerberos 登录。Google BigQuery 支持服务账户密钥、Application Default Credentials,或使用自有客户端的 Google OAuth;Google Cloud Spanner 和 Cloud SQL Auth Proxy 可使用 Google 账户。

RDS 和 Aurora 的 AWS IAM 认证
PostgreSQL、MySQL、MariaDB

将密码保存在合适的位置

密码保存在 macOS 钥匙串中;启用 iCloud Sync 后,密码同步通过 iCloud 钥匙串将其传至其他设备。SSH 密钥始终是连接所引用的磁盘文件,只有口令会存入钥匙串。

凭据配置文件可让多个连接共用一组登录信息,并在连接时从 1Password(op)、HashiCorp Vault、AWS Secrets Manager、shell 命令、文件或环境变量读取密码。这些密码来源免费且从不同步;各命令行工具必须位于 PATH、/usr/local/bin 或 /opt/homebrew/bin 中。PostgreSQL、Amazon Redshift 和 CockroachDB 连接还可使用 ~/.pgpass,或每次都要求输入密码。

环境变量

Environment Variables:Starter 方案

在连接的主机、数据库、用户名、SSH 主机、用户和密钥路径、SSL 路径、启动命令或驱动字段中填写 $DB_HOST,TablePro 会在连接时从自身环境填入其值。端口和密码不会通过这种方式读取,请为密码指定来源。

每个连接的规则

连接的安全模式级别决定语句是直接执行、先询问、要求 Touch ID 或密码,还是被拒绝。External Clients 的 Blocked、Read Only 或 Read & Write 级别决定 MCP 客户端和 AppleScript 可执行的操作,设置仅保存在此 Mac 上。AI 策略决定 AI 助手可直接使用连接、仅在确认后使用,或永不使用;Never 也会阻止 MCP 客户端。

组织可通过配置描述文件强制所有连接的最低安全模式级别,并控制更新。

连接和查询超时

每个连接可设置自己的连接超时,涵盖网络、TLS、登录及任何隧道或代理,也可设置查询超时替代全局值。查询超时在重新连接后对支持该功能的驱动生效。

在 iPhone 和 iPad 上

iPhone 和 iPad 应用有专用于 MySQL、MariaDB、TiDB、OceanBase、PostgreSQL、SQLite、DuckDB、Redis、SQL Server和Oracle 的连接表单,支持分组、每个连接一个标签以及收藏。SSH 隧道使用密码或从文件读取、直接粘贴的私钥登录,并检查主机密钥;iPhone 和 iPad 不支持 SSH 代理和跳板机。TLS 可验证服务器证书,但 SQL Server 仅加密而不验证。证书保留在设备上,从不同步。

密码和粘贴的密钥保存在钥匙串中。从 Mac 同步的 SQL Server 连接可通过 Microsoft Entra ID 登录。从其他应用导入、AWS IAM、Kerberos 和 Google 登录、代理与隧道命令、密码来源及超时设置仅在 Mac 应用中提供。

支持范围

本页各项能力、Mac 上所需方案及 iPhone 和 iPad 上的对应功能
能力
连接表单、分组、标签和收藏Mac: 免费iPhone和iPad: 每个连接一个标签;不支持颜色
从 URL 或剪贴板导入Mac: 免费iPhone和iPad: 不支持
从其他应用、项目文件夹和 AWS 导入Mac: 免费iPhone和iPad: 不支持
使用密码或私钥的 SSH 隧道Mac: 免费iPhone和iPad: 免费
SSH 代理、一次性验证码和跳板机Mac: 免费iPhone和iPad: 不支持
带证书验证的 TLSMac: 免费iPhone和iPad: SQL Server 仅加密,不验证
SOCKS5、Cloudflare Access、Cloud SQL Auth Proxy 和 Tunnel CommandMac: 免费iPhone和iPad: 不支持
AWS IAM、Kerberos 和 Google 登录Mac: 免费iPhone和iPad: 不支持
Microsoft Entra IDMac: 免费iPhone和iPad: 用于从 Mac 同步的连接
密码保存在钥匙串中Mac: 免费iPhone和iPad: 免费
密码来源、凭据配置文件和 ~/.pgpassMac: 免费iPhone和iPad: 不支持
环境变量Mac: Starter 方案iPhone和iPad: 不支持
每个连接的安全模式Mac: 免费iPhone和iPad: Off、Confirm Writes和Read-Only
连接和查询超时Mac: 免费iPhone和iPad: 不支持
通过配置描述文件设置最低安全模式级别Mac: 免费iPhone和iPad: 不支持

值得了解的限制

  • 密码来源以及 Network 标签页的代理和隧道命令仅保存在设置它们的 Mac 上,从不同步,因此同步的连接需要在每台 Mac 上重新配置这些设置。
  • TablePro 读取启动时的环境。从 Dock 或 Finder 打开时,它无法看到 shell 配置文件设置的变量,这同时影响环境变量密码来源和环境变量功能。
  • 方案结束后,$DB_HOST 等引用不再替换,也不会警告,而是以输入的原文发送给服务器。
  • Open Project Folder 是一次性导入,不会监控任何变化;重复导入同一组配置会创建两个连接。
  • AWS IAM 认证支持 PostgreSQL、MySQL和MariaDB,不支持 Amazon Redshift。配置描述文件只能强制最低安全模式级别和更新设置,无法控制其他项目。

获取 TablePro

TablePro 开源且可免费使用。付费方案为 Mac 应用增加可选功能。
下载 Mac 版

macOS 13 Ventura 或更新版本Apple silicon或Intel

从 App Store 下载

iPhone和iPadiOS和iPadOS 18 或更新版本

查看定价