MySQL自动化运维工具

优采云 发布时间: 2020-08-10 22:07

  数据字典DDM:查看DB表结构和数组的,应用开发人员使用的,参考设计时

  数据执行:写SQL句子的dml ,数据库人员给开发人员使用,执行句子、线上调试,发现数据问题,技术支持, 数据查看工具。ctrip和gd都有,phpMyAdmin

  数据DDL表结构评审和管理:提交给DBA进行初审,一般是ddl句子,一个集初审、执行、备份及生成回滚句子于一身的MySQL自动化运维工具。DBA自己开发的一个工具,给开发人员使用。

  ====================

  ======================

  Yearning SQL初审平台

  

  

  

  

  MYSQL web端 SQL初审平台。

  Website 官网

  Feature 功能SQL初审推送用户权限及管理其他Install 安装及使用日志

  使用及安装文档

  =====================

  Snapshot 效果展示

  

  

  

  

  

  ===============================

  archer

  基于inception的自动化SQL操作平台,支持工单、审核、定时任务、邮件、OSC等功能,还可配置MySQL查询、慢查询管理、会话管理等

  目录开发语言和推荐环境

  

python3.4及以上

django1.8.17

mysql : 5.6及以上

linux : 64位linux操作系统均可

  主要功能设计规范主要配置文件采取docker布署docker镜像制做谢谢@小圈圈 提供自动安装步骤环境打算安装python3,版本号>=3.4(由于须要更改官方模块,请使用virtualenv或venv等单独隔离环境!)

  

pip3 install virtualenv

virtualenv venv4archer --python=python3.4

  安装所需相关模块

  

source venv4archer/bin/activate

pip3 install -r requirements.txt

  pymysql模块兼容inception版本信息

  使用src/docker/pymysql目录下的文件替换/path/to/python3/lib/python3.4/site-packages/pymysql/对应文件启动前打算创建archer本身的数据库表创建admin系统root用户(该用户可以登入django admin来管理model)

  python3 manage.py createsuperuser启动,有两种方法

  (1)用django外置runserver启动服务,建议不要在生产环境使用

  bash debug.sh

  (2)用gunicorn+nginx启动服务

  安装模块pip3 install gunicorn==19.7.1

  nginx配置示例

  

server{

listen 9123; #*敏*感*词*的端口

server_name archer;

proxy_read_timeout 600s; #超时时间与gunicorn超时时间设置一致,主要用于在线查询

location / {

proxy_pass http://127.0.0.1:8888;

proxy_set_header Host $host:9123; #解决重定向404的问题

proxy_set_header X-Real-IP $remote_addr;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

proxy_set_header X-Forwarded-Proto $scheme;

}

location /static {

alias /archer/static; #此处指向settings.py配置项STATIC_ROOT目录的绝对路径,用于nginx收集静态资源

}

error_page 404 /404.html;

location = /40x.html {

}

error_page 500 502 503 504 /50x.html;

location = /50x.html {

}

}

  启动bash startup.sh即将访问

  使用前面创建的管理员帐号登入:port/login/其他功能集成在线查询settings中QUERY改为True到【后台数据管理】-【从库地址配置】页面添加从库信息到【后台数据管理】-【工作流配置】页面配置初审流程用户申请权限、审核通过后即可进行在线查询如须要使用动态脱敏,请将settings中DATA_MASKING_ON_OFF改为True,并且到【后台数据管理】-【脱敏配置】页面配置脱敏规则和数组慢日志管理settings中SLOWQUERY改为True安装percona-toolkit(版本=3.0.6),以centos为例

  

yum -y install http://www.percona.com/downloads/percona-release/redhat/0.1-3/percona-release-0.1-3.noarch.rpm

yum -y install percona-toolkit.x86_64

  使用src/script/mysql_slow_query_review.sql创建慢日志搜集表到archer数据库将src/script/analysis_slow_query.sh布署到各个监控机器,注意更改脚本上面的hostname="${mysql_host}:${mysql_port}"与archer主库配置信息一致,否则将难以筛选到相关记录SQLAdvisor优化工具安装SQLAdvisor,项目地址更改配置文件SQLADVISOR为程序路径,路径须要完整,如'/opt/SQLAdvisor/sqladvisor/sqladvisor'阿里云rds管理更改配置文件ALIYUN_RDS_MANAGE=True安装模块

  

pip3 install aliyun-python-sdk-core==2.3.5

pip3 install aliyun-python-sdk-core-v3==2.5.3

pip3 install aliyun-python-sdk-rds==2.1.1

  在【后台数据管理】-【阿里云认证信息】页面,添加阿里云帐号的accesskey信息,重新启动服务在【后台数据管理】-【阿里云rds配置】页面,添加实例信息,即可实现对阿里云rds的进程管理、慢日志管理admin后台加固,防暴力破解patch目录下,名称为django_1.8.17_admin_secure_archer.patch使用命令

  

patch python/site-packages/django/contrib/auth/views.py django_1.8.17_admin_secure_archer.patch

  集成ldap更改配置文件ENABLE_LDAP=True,安装相关模块,可以启用ldap帐号登入,以centos为例

  

yum install openldap-devel

pip install django-auth-ldap==1.3.0

  如果使用了ldaps,并且是自签名证书,需要打开settings中AUTH_LDAP_GLOBAL_OPTIONS的注释settings中以AUTH_LDAP开头的配置,需要按照自己的ldap对应更改系统体验

  点击体验

  角色帐号密码

  管理员

  archer

  archer

  工程师

  engineer

  archer

  审核人

  auditor

  archer

  DBA

  dba

  archer

  部分问题解决办法查看错误日志

  /tmp/default.log & /tmp/archer.err

  页面款式显示异常

  用户管理

  SQL上线

  检测SQL报错

  无法生成回滚句子

  脱敏规则未生效

  规则类型规则脱敏所用的正则表达式,表达式必须分组,隐藏的组会使用****取代须要隐藏的组规则描述

  手机号

  (.{3})(.*)(.{4})

  2

  保留前三后四

  *敏*感*词*号码

  (.*)(.{4})$

  2

  隐藏后四位

  银行卡

  (.*)(.{4})$

  2

  隐藏后四位

  邮箱

  (.*)@(.*)

  2

  去除后缀

  审核人看不到查询权限申请待初审工单

  查询权限申请待办列表被隐藏至右上角的消息图标中,当有待初审信息时会显示图标,可以步入查看待办数据

  慢日志不显示

  定时任务未执行

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线