Releases: hhyo/Archery
Releases · hhyo/Archery
Release v1.6.4
Release date: 2019年6月30日
代码变更:v1.6.3...v1.6.4
本次迭代主要为 bug 修复和易用性改进
易用性改进:
- MySQL 查询结果增加同步延迟状态展示 #303
修复说明:
升级步骤:
Release v1.6.3
Release v1.6.2
Release date: 2019年6月16日
代码变更:v1.6.1...v1.6.2
变更说明:
- 拆分资源组关联表,用户和实例添加页面新增资源组关联操作,便于维护 #190 #239
- 增加 SQL 上线可执行时间范围选择,且审核人可修改这个时间 #251 #260
- 实例配置增加默认字符集设置,适用于 MySQL、Oracle、MsSQL #274
- MySQL 在线查询的权限校验放行 explain 和 show create 语句ed0caf2
- MsSQL 在线查询添加可执行命令白名单及允许执行 sp_helptext 命令 #246 #273
易用性改进:
- django-admin 的链接调整为后台窗口打开 c2c44c9
- 使用 title 属性替换 selectpicker 的默认选择项,解决在 Safari 中出现的无法选择库表的问题 9da79d3
- 使用 marked.js 转 html 替换设计规范页面,自行调整 md 文档即可替换页面内容 4344c76
- 实例参数管理中,参数模板已配置的参数可以点击进入编辑页面 9a96d3b
- 优化 docker-compose,启动 Archery 时前置判断 mysql 和 redis 端口是否正常 09390ee
修复说明:
- 修复 Oracle 在线查询中,查询列包含 clog 类型时不能正常查询的问题 #250
- 修复 Django 后台查询权限列表,筛选用户时报500错误的问题 #261
- 修复 pyodbc 不识别 GO 语句的问题,使用 GO 作为关键字切分 sql 再执行通过 #263
- 修复 MsSQL 数据库过滤项错误的问题 #267
- 修复 MySQL 在线查询中,用户仅申请表权限,当查询语法错误时却提示没有库权限的问题ed0caf2
升级步骤:
Release v1.6.1
Release date: 2019年6月1日
代码变更:v1.6.0...v1.6.1
变更说明:
- 支持 mssql 上线执行,不支持备份 #212
- SQL 工单详情增加日志列表,MySQL 工单增加 osc 执行控制,包括进度查看、暂停、恢复、终止 #220
- 实例参数管理支持动态管理 goInception/inception 的参数,提供 goInception 参数模板 #221
- oracle 上线支持高危语句检测 203de9d
易用性改进:
- 增加静态资源版本控制,启动静态资源哈希,解决浏览器缓存问题 b0906fd
- 支持上线、支持查询的实例标签不存在时自动创建,不抛错 48d7ac7
- docker 内 qcluster 启动方式改为 supervisor 启动,增加稳定性 #230
- 消息通知内容添加发起时间、目标实例、数据库 #217 #238 #240
- 完善 engine、脱敏、工作流、消息模块的单元测试用例
修复说明:
- 修复执行异常不修改工单状态的问题 #156
- 修复 LDAP 启用后报错,找不到 LDAPSearch 方法的问题 #222
- 修复 sql 导出字段的引号问题,fix #228
- 修复定时执行上线工单超时的问题,fix #231
- 修改 mssql 连接串,解决实例不能连接问题 #235
- 修复实例列表搜索报错的问题 fix #237
- 修复注册用户时密码复杂度不够仍能注册成功的问题 fix #243
升级步骤:
Release v1.6.0
Release date: 2019年5月22日
代码变更:v1.5.3...v1.6.0
变更说明:
本次更新新增了两个重要的功能点
其它功能点:
- redis 查询增加说明文档 #157
- redis 查询禁止keys命令 #157
- mysql引擎默认字符集改为utf8mb4 #161
- 新增手工执行工单逻辑, 仅使用archery做工单流程记录, 实际执行由手工完成 #178
- 新增了一个添加注释的sql语句, 可供规范化使用, 方便dba管理 #155
- 新增了一个权限 query_all_instances , 拥有该权限的用户, 永久拥有查询所有数据库的权限, 不需申请. #199
- 新增了一个系统配置项, enable_backup_switch , 当这个配置项打开时, 才能在提交工单时看到并选择关闭备份, 不打开或未设置时, 不显示备份选项, 系统强制备份 #200
修复说明:
升级步骤:
Release v1.5.3
Release date: 2019年4月25日
代码变更:v1.5.2...v1.5.3
变更说明:
- 支持自主配置系统index路径,新增配置项INDEX_PATH_URL
- 增加Redis查询帮助说明
修复说明:
- 解决在线查询选择max后报错的问题 #151
升级步骤:
Release v1.5.2
Release date: 2019年4月21日
代码变更:v1.5.1...v1.5.2
变更说明:
- 支持使用goInception替代Inception审核,Inception已停止维护,推荐切换到goInception #136
- 加密数据在不做修改的情况下,不做二次加密 #114
- docker内增加Microsoft ODBC Driver for SQL Server,配置实例地址即可使用,无需再次安装 #135
- 去除SQL上线输入框的提示信息,避免配置多数据库时误导用户
- 修改获取实例元数据的返回格式,便于展示异常信息 #135
易用性改进:
- 增加权限清理脚本,可使用该脚本清理非业务权限,但不推荐,del_permissions.sql #133
- Redis上线默认不显示备份选项(未实现备份)
- SQL分析先提交分析再弹出提示信息
- 回滚页面表格样式调整
升级步骤:
Release v1.5.1
Release v1.5.0
Release date: 2019年4月14日
代码变更:v1.4.5...v1.5.0
对应开发计划:https://github.com/hhyo/Archery/projects/4
本次迭代主要改动Engine相关模块,方便其他数据库的接入,Engine贡献者 @LeoQuote 🎉🎉🎉
ps: gh-ost和pt-osc的接入和进度展示推迟,会和原生执行一并实现,欢迎在对应issue中交流:#4
变更说明:
- 增加实例参数配置模块,可修改实例动态参数并记录修改历史,目前仅支持MySQL,rds_param_template.sql #115 感谢 @yyukai ❤️
- 清理查询模块和工单模块代码,便于接入各种类型的数据库 #83 #92
- 使用Engines接入Redis查询 #86
- 使用Engines接入PostgreSQL查询 #91
- 使用Engines接入Redis上线,审核不做判断,仅作为接入样例 #101
- 增加在线查询超时时间配置,对应配置项max_execution_time,超时连接主动关闭 #125
- 升级部分前端组件,具体升级列表可查看 #93
- 查询权限审核详情增加最后操作信息,比如驳回原因
- 调整部分列表的获取方式,由于存在效率问题,慢日志列表未做修改
- 部分字段模型定义修改为布尔值
- Engines的测试用例覆盖
安全改进:
- 配置项中增加会话过期和失效设置
易用性改进:
- 实例列表增加数据库类型筛选项
- 功能获取的实例列表按照支持的数据库类型进行过滤
- ace的language默认设置为mysql
- 表格样式细节优化
修复说明:
- 解决sql_tuning表解析失败时的前端展示问题, fix #122
升级步骤:
- 本次迭代涉及数据模型调整, 升级请注意数据备份,具体请查看 v1.4.5_v1.5.0.sql
- 升级步骤查看wiki:https://github.com/hhyo/Archery/wiki/升级
Release v1.4.5
Release date: 2019年3月24日
本次迭代涉及到比较多的数据模型调整, 升级请注意数据备份,具体请查看 v1.4.3_v1.4.5.sql
本次迭代对应开发计划:https://github.com/hhyo/Archery/projects/2
变更说明:
- 新增SQL分析模块,使用SORA分析MyBatis的XML文件和SQL脚本文件(初版待优化) #3
- SQL执行权限区分资源组粒度和提交人粒度,支持提交人自助执行审核通过的工单 #74
- binlog2sql以plugin的形式对接,降低代码复杂度 #78
- 增加binlog2sql解析结束的消息通知,支持异步获取binlog解析文件 #78
- 实例管理新增binlog清理功能,需要配置权限binlog_del
- 拆分SQL工单表的大字段到单独的内容表 #77
- 把一些关联字段从name改成ID 包括权限、用户、实例、查询日志等的互相关联 #71
- 删除注释使用sqlparse实现,提高可靠性
- 补充soar拓展方法,后续可以实现一个小工具页面
- 比较多的测试用例覆盖
易用性改进:
- 权限管理页面搜索易用性改进,支持用户名、库、表搜索 #75
- 支持刷新按钮获取新的实例锁信息
- themis添加规则页面易用性改进,支持显示规则详细,并且支持编辑 #76
- 发布themis任务时,非对象类型必须选择起止日期
- 工单列表名称超过20字的隐藏,悬浮显示
- 调整依赖,去除启动的DeprecationWarning日志
- 调整日志设置,避免多次打印错误信息
修复说明:
- 升级bootstrap-table和export插件版本到最新版,修复导出excel格式显示文件已损坏的问题
- 修复SQLTuning无法解析多个表的问题
- 更新实例信息中实例名称导致用户查询权限失效[ bug ] #67
- 解决关闭inception检测后子查询语句仍无法正常查询的问题
- 支持工单执行异常的信息展示和状态变更,例如执行过程中inception崩溃仍可以正常展示工单
升级步骤:
由于涉及数据变更,请注意数据备份,再执行数据库变更脚本 v1.4.3_v1.4.5.sql,更新服务
docker部署:
- 修改yaml文件为1.4.5版本,执行docker-compose -f docker-compose.yml up -d
- 系统设置内的BINLOG2SQL配置项路径调整为
/opt/archery/src/plugins/binlog2sql/binlog2sql.py
手动部署:
- 拉取tag1.4.5的代码,更新依赖
pip install -r requirements.txt
- 手工安装binlog2sql后修改系统设置内的BINLOG2SQL配置项路径
- 重新启动服务