本篇文章给大家谈谈yearning,以及years ago什么意思的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
文章详情介绍:
Web端 SQL审核平台——Yearning Mysql
介绍
Yearning MYSQL 是一个SQL语句审核平台。提供查询审计,SQL审核等多种功能,支持Mysql,可以在一定程度上解决运维与开发之间的那一环,功能丰富,代码开源,安装部署容易!
开源地址
功能介绍https://gitee.com/cookieYe/Yearning
SQL查询查询导出查询自动补全
SQL审核流程化工单SQL语句检测SQL语句执行SQL回滚
历史审核记录
查询审计
推送E-mail工单推送钉钉webhook机器人工单推送
其他LDAP登陆用户权限及管理拼图式细粒度权限划分(共12项独立权限,可随意组合)
模块介绍Dashboard
dashboard主要展示Yearning各项数据包括用户数/数据源数/工单数/查询数以及其他图表,个人信息栏内用户可以修改密码/邮箱/真实姓名,同时可以查看该用户权限以及申请权限
我的工单
展示用户提交的工单信息.,对于执行失败/驳回的工单点击详细信息后可以重新修改sql并提交
对于执行成功的工单可以查看回滚语句并且快速提交SQL
工单DLL
DDL相关SQL提交审核,查看表结构/索引,SQL语法高亮/自动补全
DML审核
DML相关SQL提交审核,SQL语法高亮/自动补全
查询
查询/导出数据 SQL语法高亮/自动补全 快速DML语句提交
工单审核
DDL/DML管理员审核并执行
查询审核
用户查询审核
权限审核
用户权限审核
用户管理
创建/修改/删除用户
数据库管理
添加/编辑/删除 数据源
用户权限
用户权限修改/清空
基础设置和进阶设置
设置消息推送相关信息 包括钉钉机器人/email,设置LDAP相关信息,全局配置信息,全局配置开关
审核规则
设置SQL检测规则
审核流程
Yearning采用二级/多级的审核模式,可根据实际需求变更相关使用流程,执行人角色必须在开启多级审核之后才可指定(开启请前往设置页面),如果需要将多级审核改为二级审核,请先确保所有多级审核的工单都已确认执行。否则未执行工单将无法找回。当多级审核关闭后系统并不会自动将角色为执行人的用户重置角色,请自行重置相应用户角色
二级审核流程:
1.使用人根据自己拥有的权限向对应的工单提交单元(DDL,DML)提交工单
2.管理员收到消息后在审核工单页面审核该工单请求并执行/驳回 对应工单
3.执行记录将会记录在该管理员用户下
多级审核流程:
1.使用人根据自己拥有的权限向对应的工单提交单元(DDL,DML)提交工单,
2.管理员收到消息后在审核工单页面审核该工单请求并同意/驳回 对应工单并选择对应执行人(执行人必须是角色为执行人的用户)
3.执行人收到工单后 执行/驳回该工单
4.执行记录将会记录在该执行人用户下
安装(这部分可以直接接到码云或者官网查看)Yearning 不依赖于任何第三方SQL审核工具作为审核引擎,内部已自己实现审核/回滚相关逻辑。仅依赖Mysql数据库。mysql版本必须5.7及以上版本,请事先自行安装完毕且创建Yearning库,字符集应为UTF-8/UTF8mb4 (仅Yearning所需mysql版本)Yearning日志仅输出error级别,没有日志即可认为无运行错误!Yearning 基于1080p分辨率开发仅支持1080p及以上显示器访问(可到官网下载二进制文件)
填写配置文件
cat conf.toml [Mysql] Db = "Yearning" Host = "127.0.0.1" Port = "3306" Password = "xxxx" User = "root" [General] #数据库加解密key,只可更改一次。 SecretKey = "dbcjqheupqjsuwsm"
初始化数据库
./Yearning -m
启动服务
默认启动
参数启动
打开浏览器对应端口 ,默认密码:admin/Yearning_admin
总结Yearning是一个SQL审核平台,在一定程度上可以解决运维与开发中间的问题,遗憾的是只支持Mysql,感兴趣的可以尝试下!
基于docker环境一键部署Yearning sql审核平台
概述
今天主要分享一个开源的MYSQL数据库SQL语句审核平台--Yearning,提供数据库字典查询,查询审计,SQL审核等多种功能。下面基于docker环境来部署。
环境:
os:CentOS Linux release 7.4.1708 (Core) docker:Docker version 19
一、环境准备
1、关闭防火墙
systemctl stop firewalld systemctl disable firewalld
2、关闭selinux
setenforce 0 sed -i 's/enforcing/diabled/g' /etc/selinux/config
3、配置yum
for i in /etc/yum.repos.d/*.repo;do cp $i ${i%.repo}.bak;done rm -rf /etc/yum.repos.d/*.repo wget -P /etc/yum.repos.d/ http://mirrors.aliyun.com/repo/Centos-7.repo >/dev/null 2>&1 yum clean all && yum makecache
二、准备docker环境
1、卸载老的docker
yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine
2、安装依赖包
yum install -y yum-utils device-mapper-persistent-data lvm2
3、新增docker稳定版源
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
4、安装docker
yum install docker-ce docker-ce-cli containerd.io -y
5、下载docker-compose(这部分其实不用)
curl -L https://github.com/docker/compose/releases/download/1.24.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose chmod +x /usr/local/bin/docker-compose
ps:docker和compose兼容性
6、启动docker
systemctl start/stop docker ## 启动后才能继续后面的Yearning安装
三、准备mysql环境
1、yum安装
下载地址:
https://dev.mysql.com/downloads/repo/yum/
--CentOS7中默认安装有MariaDB,这个是MySQL的分支,但建议还是在系统中安装MySQL rpm -Uvh http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm yum install mysql-community-server -y
2、创建库
#grep "password" /var/log/mysqld.log #mysql -uroot -p mysql> set global validate_password_policy=0; mysql> alter user 'root'@'localhost' identified by 'xxxx'; mysql> create database Yearning DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
3、授权
grant all privileges on *.* to root@'%' identified by 'xxxx';
三、Yearning安装
1、注意
Yearning 不依赖于任何第三方SQL审核工具作为审核引擎,内部已自己实现审核/回滚相关逻辑。
仅依赖Mysql数据库。
mysql版本必须5.7及以上版本,请事先自行安装完毕且创建Yearning库,字符集应为UTF-8/UTF8mb4 (仅Yearning所需mysql版本)
Yearning日志仅输出error级别,没有日志即可认为无运行错误!
Yearning 基于1080p分辨率开发仅支持1080p及以上显示器访问
由于使用较多新的前端技术栈,请使用Chrome最新版本(不包括360等其他魔改版本)
2、Yearning下载
Yearning-go提供二进制下载包
下载地址
https://github.com/cookieY/Yearning/releases
请选择最新版本 在Assets中选择
Yearning-x.x.x.linux-amd64.zip 包进行下载
由于部分闭源,源码无法直接编译 (二次开发问题,请前往二次开发页面查看)
wget https://github.com/cookieY/Yearning/releases/download/v2.1.0/Yearning-2.1.0.linux-amd64.zip unzip Yearning-2.1.0.linux-amd64.zip -d Yearning
3、容器化
Yearning安装包内已含有Dockerfile文件,可直接进行build打包成镜像
docker build -t yearning/v2.1 .
Yearning 从v2.0.4版本开始支持环境变量传参容器启动时可通过环境变量的方式传入数据库地址。
docker run -d -it --name yearning -p8001:8000 -p 3308:3306 -e MYSQL_USER=root -e MYSQL_ADDR=172.16.10.123:3306 \ -e MYSQL_PASSWORD=xxxxxx -e MYSQL_DB=Yearning yearning/v2.1
报错处理:
解决:这里需要把127.0.0.1改为容器宿主IP。
四、 Yearning维护
1、启停
docker start/stop yearning
2、查看容器日志
docker logs -f yearning
第二次启动容器:
3、 Yearning访问
访问地址:http://宿主机IP:8001
初始账号:admin / Yearning_admin
数据库访问:mysql -h宿主机IP -P3306 -uroot -p
有一个sql审核平台还是很重要的,最起码也可以规范下语法,建议大家有空搭建试一下。后面会分享更多devops和DBA方面的内容,感兴趣的朋友可以关注下~