更新时间:2026-07-09 GMT+08:00
分享

数据库实例连接

什么是数据库实例连接?

数据库实例连接ID(ConnectionID)是DAS(数据库管理服务)中用于标识一条数据库登录记录的唯一标识符。当您想在DAS中操作某个数据库时,首先需要创建一个“连接”,系统会为这个连接分配一个唯一的数据库实例连接ID。

可以把数据库实例连接ID理解为您与数据库之间的“钥匙”——有了它,您才能登录数据库、执行SQL、查看表结构、进行性能诊断等操作。

数据库实例连接ID的核心作用

一个数据库实例连接ID承载了访问数据库所需的全部信息,具体包括:

表1 数据库信息

信息类别

包含内容

实例信息

实例ID、实例名称、引擎类型、引擎版本

登录凭据

数据库用户名、密码(加密存储)、是否保存密码

网络地址

IP地址、端口号

归属信息

租户ID、项目ID、用户ID

功能开关

元数据采集、SQL记录、默认登录

连接类型

普通连接/共享连接

数据库实例连接ID的生成方式

数据库实例连接ID在创建连接时由系统自动生成,采用UUID格式,例如:

a1b2c3d4-e5f6-7890-abcd-ef1234567890

生成规则如下:

UUID.randomUUID().toString()

您无需手动指定数据库实例连接ID,系统会在您创建连接时自动分配。

数据库实例连接ID的生命周期

  1. 创建连接。
    创建连接时系统会进行以下校验:
    • 配额检查:每个项目可创建的连接数有上限。
    • 重复检查:同一实例+同一数据库用户不能重复创建。
    • 连通性检查:测试数据库是否可达、用户名密码是否正确。
  2. 使用连接。

    通过数据库实例连接ID,您可以:

    • 登录数据库,执行SQL查询。
    • 查看数据库表结构、索引等元数据。
    • 进行SQL性能诊断和调优。
    • 查看数据库会话、锁信息。
    • 导入导出数据。
  3. 连接状态。
    表2 连接状态

    状态值

    状态名

    含义

    0

    INIT

    正常,可使用

    300

    EXPIRED

    已过期

    400

    DELETED

    已删除

    500

    NO_INSTANCE

    对应的数据库实例已不存在

    连接删除是软删除(状态标记为400),而非物理删除,这样可以保留操作历史记录。

  4. 删除连接。

    删除连接时:

    • 系统将状态标记为400(软删除)。
    • 自动清理相关的缓存和登录会话。
    • 发送Kafka消息通知其他模块。

数据库实例连接ID与实例的关系

核心关系:
  • 一个实例可以有多个连接(不同用户、不同数据库)。
  • 一个连接只属于一个实例。
  • 当实例被删除时,其下所有连接状态会自动更新为NO_INSTANCE。

共享连接

  • 什么是共享连接?

    共享连接允许您将自己创建的连接分享给团队其他成员使用,无需他们再次输入用户名密码。

  • 共享方式
    • 原始连接和共享连接是独立的两条记录,各自有独立的数据库实例连接ID。
    • 共享连接的类型为SHARE(普通连接为NORMAL)。
    • 共享连接可以设置过期时间。
    • 不能将连接共享给自己。
  • 共享限制
    • 共享数量有上限。
    • 共享连接不允许执行DDL SQL(仅可查看)。
    • 取消共享后,对方的共享连接会被标记为已删除。

支持的数据库类型

DAS的连接功能支持多种数据库引擎:

表3 支持的数据库类型

数据库来源

支持的引擎

RDS

MySQL、PostgreSQL、SQL Server

TaurusDB

TaurusDB

GaussDB

GaussDB

DDS

MongoDB

GeminiDB

Cassandra、Redis、MongoDB、InfluxDB、DynamoDB

DDM

DDM

ECS

自建数据库

相关文档