为了研究一下sql自动化检查和分析工具,是否有网上介绍的好用,我在本地进行soar 和 soar-web的安装和使用。
初步的实验结果,总结如下:
1. 安装相对来说较为麻烦,特别是soar-web的依赖包安装,涉及到python pip相关组件的下载安装。
2. 启动soar-web会遇到一些奇怪问题,提示 “ImportError: No module named xxx“ 没有安装,但是通过python -m pip list检查是有安装成功的。
3. soar-web的启动脚本run.sh,不能正常启动;但是使用python./soar-web.py install却可以正常启动。
4. 数据库类型,只支持MySQL一种
后续:
最后,综合感觉,soar-web的功能,距离自动化SQL检查和优化,还有很大空间。接下来,我将继续调研和对比剩下两个工具:see 和 Yearning
1.see 工具
https://github.com/myide/see
2. Yearning 工具
https://github.com/cookieY/Yearning
一 、soar主要步骤,如下:
step 1: 下载安装包
# prepare dir and install
mkdir -p /opt/soft/soar && mkdir -p /opt/install/soar/{log,conf}
wget -O /opt/soft/soar/soar -c https://github.com/XiaoMi/soar/releases/download/0.11.0/soar.linux-amd64
step 2: 复制和安装文件
# install server
mv /opt/soft/soar/soar /opt/install/soar
# 目录介绍:
# 配置文件为yaml格式。一般情况下只需要配置online-dsn, test-dsn, log-output等少数几个参数。即使不创建配置文件SOAR仍然会给出基本的启发式建议。
# 默认文件会按照/etc/soar.yaml, ./etc/soar.yaml, ./soar.yaml顺序加载,
# 找到第一个后不再继续加载后面的配置文件。如需指定其他配置文件可以通过-config参数指定。
# 关于数据库权限online-dsn需要相应库表的SELECT权限,test-dsn需要root最高权限。
# 修改默认配置参数,如下
# 参考
# # 1. 修改soar.conf的基本参数
root >> cat > /opt/install/soar/conf/soar.yaml << EOF
# 线上环境配置
onlin