全部产品
云市场

跨库查询

更新时间:2019-09-19 20:33:54

背景

跨库查询DSQL在阿里云上线后,吸引了大量用户的使用。为了让DMS企业版的用户更方便地使用跨库查询,现将跨库查询接入DMS企业版。后续,您在企业版中即可便捷地对已有实例的库表进行跨实例、跨库的关联查询。

如果您还不了解什么是跨库查询,可先查看跨库查询的相关文档:什么是跨数据库查询

支持范围

  • 目前跨库查询支持的数据库类型为PolarDB、MySQL、SQLServer、PostgreSQL、DRDS及Redis。
  • 跨库查询目前仅支持跨物理库查询,暂不支持跨逻辑库查询。

跨库查询入口

  • 在DMS企业版中您可以通过以下两种方式进入跨库查询页面:
    1)在企业版首页左侧的菜单栏中,点击跨库查询菜单入口1
    2)在跨库查询支持的数据库查询窗口中,点击跨库查询按钮!入口2

跨库查询Console

  • 当您进入跨库查询Console时,界面左侧将默认呈现您有访问权限的实例所对应的的DBLink。这里的访问权限指的是您是否有对该实例下面库、表的访问权限(管理员和DBA对所有实例都有访问权限)。

  • 您也可以选择查看企业内全部DBLink,但是当您访问具体的库表时,需要申请对应的权限。您可以直接在当前跨库查询Console中申请该权限。树状菜单1

  • 单击DBLink名称,您可以看到您有权限的数据库列表。同理,当您单击数据库名称时,您可以看到您有权限的表列表。
    table

  • 您也可以通过关键字搜索有权限的数据库或者企业内的全部数据库。这里”有权限的数据库”指的是您本身有权限的数据库或者有权限的表所在的数据库。search

SQL查询

  • 当您双击有权限的表的名称或者拖拽表名到SQL编辑器中,会自动生成对应的SQL语句。
  • 在SQL编辑器中,您可以对您有访问权限的任意实例的库表进行关联查询。您只需通过DBLinkName.databaseName.tableName的形式指定您想要查询的数据表。
    console1

权限申请

  • 当您右击数据库的名称时,您可以看到”前往单库查询”和”查看该库权限”按钮。

    • 当您点击”前往单库查询”按钮时,您可以通过该按钮跳转到对应库的单库查询窗口。
    • 当您点击”查看该库权限”按钮时,您可以查看您在对应库的权限。若没有访问权限,您可以直接申请相应权限。数据库右击菜单
      库权限提示
      库权限申请
  • 当您想要展开表或者双击表名生成SQL进行查询时,如果您没有该表的权限,也会进行提醒。与库权限申请类似,您可以直接申请相关表权限。
    表权限申请提示
    表权限申请

查看更多数据

  • 如果您想要查看更多、但不超过3000条的数据,您可以联系管理员,在配置管理中对“单次查询SQL最大的行数”进行修改。
  • 如果您想要查看超过3000条的跨库查询结果数据,您可以通过数据开发进行操作。

DBLink的生成和修改

  • 对于功能发布上线前您在企业版中已经存在的实例,系统已经自动为这些实例创建了对应的DBLink。系统默认取名为DBLink_{number}。
  • 管理员/DBA可以在【系统管理】-【实例管理】页面看到实例对应的DBLink名称。DBLink名称列表

  • 在批量导入实例时,系统也会为批量导入的实例自动创建DBLink名称。

  • 在新增单个实例时,可以手动为该实例对应的DBLink取名(操作界面与实例编辑相同)。
  • 系统默认为支持的实例开启跨库查询功能,如果您想要对某个实例关闭该功能,可在实例编辑页面进行操作。
    关闭功能
  • 在实例编辑页面,您可以对系统默认取名的DBLink名称进行修改。
  • 如果您有管理员/DBA权限,您也可以在跨库查询窗口直接对系统默认取名的DBLink名称进行修改。您只需右击DBLink名称即可修改。
    dblink

跨库查询日志

  • 您可以在操作日志-跨库数据查询中查看与跨库查询相关的日志(前提是您拥有查看操作日志的权限) log

注意事项

  • 新增单个实例时,在为DBLink取名后,该DBLink名称无法再更改。
  • DBLink名称需要在本企业内保持全局唯一性。
  • 对于系统自动创建的DBLink(针对已经存在的实例和批量导入的实例),允许修改DBLink名称一次。