The English version of CloudQuery is officially launched!

FAQ | 为什么在创建数据库连接时会报错?

 二维码
发表时间:2023-12-05 17:11作者:CloudQuery

图片


FAQ · 第二弹




Q:为什么我新建连接之后,在 SDT 栏中看不到刚新建的连接?

A:这个问题是大家在初次使用 CloudQuery 时经常会感到困惑的,同时也是使用 CloudQuery 平台纳管数据库的最基本的前提。

  • Step1:数据库管理 -> 连接管理->连接->资源管理->批量操作->批量启用
图片

  • Step2:数据库管理->手动授权->连接->用户授权->添加用户,添加相应的用户,并授予默认权限。
图片
注意:虽然 admin001 是默认系统管理员,但并不意味着 admin001 拥有最高权限或有所有连接的编辑权限,只是他的系统角色相对最高。因此,当新建好一个连接后,同样也要给 admin001 进行授权才行哦!

Q:搞不懂 CloudQuery 的授权体系?例如,为什么我已经给了“可管理”权限,但执行 CREATE 语句时仍报错?终端窗口在哪里授权?Oracle 存储过程组、同义词又在哪里授权?

A:每一次的版本迭代,除了丰富 CQ 功能的同时,授权体系也更加细化。

目前,每种数据源的系统默认权限分为 5 种,分别是:无权限、仅浏览、仅访问、可编辑、可管理。“可管理”只是这 5 种默认权限中相对较高的权限,拥有 DQL、DML、DDL 权限,但仅此而已!

  • 隐藏工具:“编辑”,往往被忽略,终端窗口、结果集操作、导出权限都在这里进行额外授权。
图片

  • 表、视图、函数、存储过程、其他权限,包括用户管理、事件管理、索引管理、日志......都可以在这里新建一个权限,然后赋权给相应的用户。
    PS:这些权限不在系统默认权限“可管理”中哦!
图片

  • 不仅可以赋权整个连接,连接下的表级别也可以分别授权,同时可以设置高危操作,进行安全设置等,这里也经常被忽略。
图片

Q:在进行数据变更时,每次审批人都是 admin001 这个可以进行更改吗?
图片

A:目前数据变更默认的审批人都是连接管理员-admin001,如果想要更改审批人,只能在单个数据库的【连接设置】中找到连接管理员进行修改。
图片

关于自动流程设计,我们会在后续的版本进行开放。

Q:个别菜单栏报错,例如点击访问申请或审计分析后报错:“服务器内部异常”,如下图:
图片

A:由于大家的环境不一样,所以每种情况的解决方法也不太一样,在这里只给出大致的排查思路仅供参考:

  • 首先,F12(或右键“检查”)看看是哪个服务哪个接口报错,如上面案例中展示的,访问申请一般是 flow 模块:
图片

  • 找到报错服务后,去服务器看看相应模块的日志,通过查看日志看是否能找到原因。常用命令:


docker ps                                //查看正在运行的容器及基本信息docker logs -f --tail 500 [镜像名称]     //查看某个镜像的日志
图片

  • 查看日志,看是什么原因导致。比如可能是底层数据库中,表重复、表缺失导致;可能是网络原因......
  • 在找不到原因的时候,试试重启服务吧,正如江湖传言,重启能解决 99% 的问题,常用命令:



docker restart cloudquery-flow          //重启flow服务./cloudquery.sh stop_all                    //停止整个服务(进入cloudquery安装目录)./cloudquery.sh start                       //启动整个服务

Q:数据库管理->连接管理->新建连接,添加连接时报错,如:
图片
图片

A:检查数据库信息是否正常,如账户密码等
      检查本地数据库是否正常运行
      检查网络是否正常、是否能Ping通
      检查防火墙是否关闭
常用命令:


Ping[数据库IP]Telnet[数据库IP][端口]

Q:社区版安装完成或者升级完成后,显示:“服务未启动或网络异常”,是什么原因?

A:有时候服务启动比较慢,安装完成后不要着急去 WEB 端访问,可以先看看 dms、user 是否正常启动,有无报错。
  • docker ps 查看异常服务,查看日志排查原因。
  • 认前端是否正常启动:docker logs -f --tail 200 enterprise_web