之前在其他平台上看到有其他作者介绍CloudQuery,这不巧了么,我刚好也在用。但是看有些作者真的没讲清楚这款产品它的真实作用和特性,所以今天就来讲讲这个CloudQuery到底是干啥的。
不知道大家有没有用过阿里云DMS,它是阿里数据库服务平台的云版本,提供免安装、免运维、即开即用、多种数据库类型与多种环境容易的web数据库管理终端,好用,但是要钱,企业版一年算下来也要将近5000块,而CloudQuery可以说是它的免费替代品。
下面就具体来说下我的一些使用体验。
下载&安装
下载地址:http://cloudquery.club/download
有多种下载方式可供选择。官方主要是分了离线安装和在线安装。每种安装方式又分了完整版和标准版(不带审计模块),可以按自己需求选择。安装很方便,20分钟搞定,只要运行官方提供的一个脚本就可以直接拉取镜像启动服务。
因为他们使用容器化部署,所以支持所有操作系统,推荐配置如下:
需要注意的是,如果你要安装审计模块,那硬盘内存最好在200G以上。
安装成功后就可以访问登录页,访问 ip+9898端口,有3个内置账号可选,登录之后可以自己修改密码,变成自己的账户。
连接数据库
目前只支持MariaDB、MongoDB、MySQL、Oracle、Redis、SQLServer、达梦、PostgreSQL这几个数据源,虽然覆盖了目前只用最多的几个主流数据源,也有国产数据源支持,但总体来看数量还是不多。
哦,有一点,对于每个数据库的特性支持它还是做的挺好的。像Oracle这种元素特别丰富的数据库,也很好地保留了它的特性。
数据库常用操作
数据库常用操作没什么问题,语法提示、事务提交/回滚功能支持手动/自动模式、结果集都符合我们日常操作习惯。语句收藏、个人文件夹可以快捷提取常用SQL语句,被数据库脚本虐过的人大概都会爱这个功能。
权限管理
权限管理算是CloudQuery的一大特色,官方称基于RBAC模型,做了超细粒度划分。我看了一下,整体来看,他的权限管理还是分为两块,系统权限和操作权限。
系统权限可针对用户的基本信息、所属部门、角色进行管理,在「系统设置」-「系统权限」-「角色管理」中,可创建角色并分配对应权限至个人。
操作权限可以对用户进行访问连接和操作权限的分配。「Owner设置」-「连接管理」,在对应数据库下「权限管理」-「数据操作权限」中创建需要的权限,目前权限细粒度到表格,还没有到表格内行列权限。
同时,CloudQuery上还有一个「权限集管理」,可以更加便捷地授予或回收用户权限,不需要再一个一个去选择权限。在创建数据源成功的时候系统会自动生成一个初始权限集,这样对于这些基础权限就不需要再花时间去进行手动配置。
设置完数据操作权限后再进入「角色管理」创建角色,将权限分配至个人。
在进行权限设置的时候有一点不太便捷的是它的权限管理和组织架构还是有些分离。在组织架构中添加用户后无法直接在这个地方对配置用户权限,而是需要进入「系统权限」中去配置他的系统权限,再去「owner设置」中配置他的操作权限,路径有点分离也有点长。
应用管理
在对应数据库下可连接第三方应用,比如公司的报表系统或CRM系统之类的,如果应用语言是JAVA,CloudQuery可探到应用的数据,进行应用分析。
先在「系统设置」-「应用列表」中添加应用,再进入「Owner设置」,在数据库下连接应用。
应用分析主要有三块,可视化展示「今日常用图」;TOP SQL、慢SQL排行,可查看应用中SQL执行次数排行,对平均耗时比较长的SQL进行筛选,排查相关有问题的SQL(因为今日未执行,所以我这边的图就没有啦,下面这张图大家将就看哈哈)
审计分析
很多数据库工具都不具备数据库审计分析功能,只能记录操作日志,而CloudQuery配备了审计分析功能。
但是目前看来,审计功能还非常简单,只包含了执行语句的审计分析统计和审计明细。希望官方后期能对审计功能这一块进行更加完善的设计,让审计功能发挥出最大价值。
好了,对CloudQuery的使用体验大概就是这样,总体来说,这还是一个不错的产品,作为一款免费的数据管控工具,目前基本可以满足我的日常操作。就官方对产品的维护和对用户的反馈来说,这是一款值得我花时间去等待它变成熟的产品。我会持续使用和关注。