简介
Yearning 开源的MYSQL SQL语句审核平台
提供数据库字典查询,查询审计,SQL审核等多种功能
功能
数据库字典自动生成
SQL查询
查询导出
查询自动补全
DDL可视化自动生成
INDEX 索引语句
ALTER 更改表结构语句
SQL审核
流程化工单
SQL语句检测
SQL语句执行
SQL回滚
历史审核记录
推送
站内信工单通知
E-mail工单推送
钉钉webhook机器人工单推送
其他
todoList
LDAP登陆
用户权限及管理
拼图式细粒度权限划分(共12项独立权限,可随意组合)
注意
Yearning 是基于Inception的web可视化SQL审核平台,其本身只提供可视化交互页面并不具备sql审核的能力。所以必须搭配Inception一起使用。建议使用者先熟悉Inception使用方法后再进行使用!
(文档) https://github.com/cookieY/inception-document
详细介绍 https://static.oschina.net/p/yearning
部署下载 https://github.com/cookieY/Yearning
一、安装
1.1 系统环境
CentOS Linux release 7.4.1708 (Core)
关闭iptables、selinux
本次安装采用的是外部MySQL 5.7
1.2 MySQL及Docker安装
MySQL安装:https://www.cnblogs.com/dukuan/p/9584357.html
Docker安装:yum install docker -y
启动MySQL、Docker
1.3 Inception及Yearning安装
下载Yearning源码:git clone https://github.com/cookieY/Yearning.git
登录到MySQL,创建Yearning库:createdatabase Yearningcharset utf8;
授权Yearning库相关用户权限,比如授权用户名及密码是Yearning
创建数据库文件:
cdYearning/install/yearning-docker-compose/init-sql
mysql -uYearning -pYearning Yearning
运行Inception(使用的是源码中作者编译好的Inception):
修改配置文件:cd Yearning/install/inception/bin/
[root@master2bin]# cat inc.cnf
[inception]
general_log=1
#日志路径
general_log_file=inception.log
#inception端口
port=6669
socket=/tmp/inc.socket
character-set-client-handshake=0
character-set-server=utf8
inception_support_charset=utf8mb4
inception_enable_nullable=0
inception_check_primary_key=1
inception_check_column_comment=1
inception_check_table_comment=1
inception_enable_blob_type=1
inception_check_column_default_value=1
inception_support_charset=utf8
inception_osc_on=OFF
inception_check_column_default_value=OFF
inception_check_column_comment=OFF
inception_check_table_comment=OFF
inception_enable_identifer_keyword=ON
#备份数据库的地址
inception_remote_backup_host = 192.168.10.220
#备份数据库的端口
inception_remote_backup_port = 3306
#备份数据库相关备份库的用户名,必须有权限
inception_remote_system_user = dukuan
#备份数据库相关备份库的密码,必须有权限
inception_remote_system_password = dukuan
前台启动Inception:./Inception--defaults-file=inc.cnf
后台启动:nohup./Inception --defaults-file=inc.cnf&
运行Yearning(此步可提前下载好镜像,防止超时):
dockerrun-d-eHOST=192.168.10.220 -eMYSQL_ADDR=192.168.10.220 -eMYSQL_USER=Yearning-eMYSQL_PASSWORD=Yearning-p8080:80 -p8000:8000registry.cn-hangzhou.aliyuncs.com/cookie/yearning:v1.3.4
二、相关配置
2.1 访问Yearning
访问Yearning(访问地址为你启动docker的IP地址):
登录管理员缺省值:admin/Yearning_admin
2.2 Inception配置
点击管理-设置
注:备份库及密码最好统一
三、添加数据库
四、配置权限
4.1 配置DML权限组
点击管理-权限组-添加权限组
4.2配置只能审批权限组
创建用户至该组
五、SQL工单审批
5.1 审批步骤
点击审核-工单-查看
点击检测-执行
状态变为已执行即为成功
5.2 查询回滚语句
点击-执行结果-查看回滚语句即可
注意:生成回滚语句一定要现在备份库上创建对应的表和库
具体操作方法:http://mysql-inception.github.io/inception-document/backup/
如果你上面看了半天么有看懂 ,就看现在的操作
1.下载Yearning,进入install/yearning-docker-compose目录
请注意本地不要占用8080和8000端口 如需要更改端口可再docker-compose.yml文件中更改,3306和8000端口不可更改!
之后访问8080端口。
默认用户admin 密码: Yearning_admin
登陆后请通过设置页面设置inception及其他配置信息
使用外部mysql
docker-compose中已经包含了mysql且挂载本地目录,不存在容器销毁数据消失的问题,但如果你还是想使用外部mysql,可使用以下步骤:
领取专属 10元无门槛券
私享最新 技术干货