本文已参加「新人创造礼」活动,一起敞开创造之路。

前语

平常工作过程中,关于长途衔接Linux,我们通常会运用SSH东西如:putty、xshell等,关于mysql、mongodb数据库办理通常会运用Navicat、Dbeaver这类东西,redis则有RedisDesktopManager,部分软件或许还需求破解才干运用。每次都要装置来装置去、装置多个软件,这样不免有些繁琐。那么有没有一款东西能够提供一站式办理呢,答案是有的。mayfly-go便是最近比较火的,一款开源的web版linux、mysql、redis、mongo统一办理操作渠道。

一、关于mayfly-go

1.简介

web版linux、mysql、redis、mongo统一办理操作渠道。

项目地址:gitee.com/objs/mayfly…

项目文档:objs.gitee.io/mayfly-go-d…

下载地址:gitee.com/objs/mayfly…

开发言语与首要框架

  • 前端:typescript、vue3、element-plus
  • 后端:golang、gin、gorm

2.功能介绍

  • linux: ssh终端(终端操作记载回放),文件检查(可根据常见后缀名高亮显示关键词等)、修改、上传、下载、删去等,脚本办理履行,进程操作,运转状况检查等(可当做堡垒机运用)。
  • dbms(现在支持mysql、postgres): 可视化数据增修改查,sql句子提示,表信息、索引信息、建表句子检查,建表等(类似mini版navicat)。
  • redis(单机、岗兵、集群): 增修改查redis数据,redis基本信息检查,如版别,内存,cpu等运用情况、集群信息节点检查。
  • mongo: 增修改查mongo文档数据,数据库、调集状况检查,新建删去调集等。
  • 支持ssh tunnel拜访: linux机器、数据库、redis、mongo都支持ssh隧道拜访操作。
  • 体系办理: 同时具有完善的账号、人物、资源权限控制等,也可基于该项目进行二次开发作为体系后台体系。

二、装置

1.下载解压

wget https://gitee.com/objs/mayfly-go/releases/download/v1.2.12/mayfly-go-linux-amd64.zip  # 在线下载
unzip mayfly-go-linux-amd64.zip  # 解压
mv mayfly-go-linux-amd64 mayfly  # 改名

解压后会得到以下文件

一站式Linux&数据库管理平台mayfly-go

readme.txt文件中提示了布置办法:

相关配置文件:
  后端:
    config.yml: 服务端口,mysql,aeskey(16 24 32位),jwtkey等信息在此配置即可。
    建议务必将aes.key(资源暗码加密如机器、数据库、redis等暗码)与jwt.key(jwt秘钥)两信息运用随机字符串替换。
服务发动&重启:./startup.sh
服务封闭:./shutdown.sh
直接经过 host:ip即可拜访项目
初始账号 admin/admin123.

2.配置数据库

1)创立数据库

布置mayfly-go的机器上需求提前装置准备好mysql数据库服务,并创立mayfly-go所运用的数据库

# 登录数据库
mysql --host 192.168.1.123 --port 3307 -uroot -p123456
# 在mysql命令行创立mayfly数据库
create database mayfly character set utf8 collate utf8_general_ci;

一站式Linux&数据库管理平台mayfly-go

2)导入mayfly-go.sql

# 因为我的是用docker搭建的mysql容器,所以需求把要履行的文件从宿主机拷贝到容器内
docker cp mayfly-go.sql mysql:/home/
# mysql命令行履行mayfly-go.sql文件
source /home/mayfly-go.sql

检查mayfly数据,此时已创立多张相关表:

一站式Linux&数据库管理平台mayfly-go

3.修改配置文件config.yml

server:
  # debug release test
  model: release
  port: 8888
  cors: true
  tls:
    enable: false
    key-file: ./default.key
    cert-file: ./default.pem
  # 机器终端操作回放文件存储路径
  machine-rec-path: ./rec
jwt:
  # jwt key,不设置默许运用随机字符串
  key: 
  # 过期时刻单位分钟
  expire-time: 1440
# 资源暗码aes加密key
aes:
  key: 1111111111111111
mysql:
  # 改为你自己的ip地址和端口号
  host: 192.168.1.123:3307
  # 改为你自己的用户名和暗码
  username: root
  password: xxxx
  db-name: mayfly
  config: charset=utf8&loc=Local&parseTime=true
  max-idle-conns: 5
log:
   # 日志等级, trace, debug, info, warn, error, fatal
  level: info
  # file:
  #   path: ./
  #   name: mayfly.log

4.发动mayfly-go

./startup.sh

检查nohup.out文件能够看出mayfly-go现已发动成功并衔接到mysql数据库

一站式Linux&数据库管理平台mayfly-go

假如前台依然拜访不了,或许是防火墙8888端口未开放,铺开端口即可:

firewall-cmd --zone=public --permanent --add-port=8888/tcp
firewall-cmd --reload

5.拜访前台页面

http://192.168.1.123:8888,初始账号 admin/admin123.(留意后面有个点)

一站式Linux&数据库管理平台mayfly-go

三、运用

1.前置准备工作

创立账号

【增加账号】 :体系办理-账号办理-增加-输入用户名-承认

一站式Linux&数据库管理平台mayfly-go

【设置账号暗码】 :体系办理-账号办理-勾选账号-修改-输入暗码-承认

一站式Linux&数据库管理平台mayfly-go

【分配用户人物】 :体系办理-账号办理-勾选账号-人物分配-勾选人物-承认

一站式Linux&数据库管理平台mayfly-go

增加项目

【增加项目】 :项目办理-项目列表-增加-输入项目名及描绘-承认

一站式Linux&数据库管理平台mayfly-go

【项目增加成员】 :项目办理-项目列表-勾选项目-成员办理-增加-搜索成员-挑选成员-承认

一站式Linux&数据库管理平台mayfly-go

只要项目增加成员,该成员账号在登录后增加机器时才干选到该项目,增加成功后如下所示:

一站式Linux&数据库管理平台mayfly-go

【增加环境】 :项目办理-项目列表-勾选项目-环境办理-增加环境-输入环境名及描绘-承认(后面增加数据库时会用到)

一站式Linux&数据库管理平台mayfly-go

增加机器

机器办理-机器列表-增加-输入机器相关信息-承认

一站式Linux&数据库管理平台mayfly-go

机器列表

一站式Linux&数据库管理平台mayfly-go

2.服务器操作

1)服务器状况监控

点击机器列表页ip:port列的机器ip即可检查该机器的体系资源监控

一站式Linux&数据库管理平台mayfly-go

2)SSH终端操作

点击机器列表页各个机器的“终端”即可进行终端命令行界面

一站式Linux&数据库管理平台mayfly-go

3)文件操作

【增加目录或文件】 :机器办理-机器列表-点击指定机器的“文件”-增加-输入称号、挑选类型、路径-承认

一站式Linux&数据库管理平台mayfly-go

检查目录】:例如上述增加了服务器的/home目录,检查该目录

一站式Linux&数据库管理平台mayfly-go

【检查文件详情】 :挑选任一文件,支持检查、下载、删去,例如检查某个文件:

一站式Linux&数据库管理平台mayfly-go

2.数据库操作

1)MySQL

【增加数据库】 :DBMS-数据库办理-增加-填写数据库相关信息-承认

一站式Linux&数据库管理平台mayfly-go

增加数据库成功后,即可在数据库列表中,找到对应的数据库,点击检查-数据库称号可检查数据表信息:

一站式Linux&数据库管理平台mayfly-go

【数据库操作】 :DBMS-数据库操作,顺次挑选项目、环境、资源、数据库、表,即可进行相关操作

一站式Linux&数据库管理平台mayfly-go

2)Redis

【新增redis】 :Redis-redis办理-增加-填写相关信息-承认,暗码没设置能够不填,假如敞开防火墙需求铺开6379端口。

一站式Linux&数据库管理平台mayfly-go

【数据操作】: Redis-数据操作,顺次挑选项目、env、redis、库,例如我想增加一个称号为age的key:

一站式Linux&数据库管理平台mayfly-go

检查增加的key:

一站式Linux&数据库管理平台mayfly-go

3)MongoDB

【衔接MongoDB】 :Mongo-Mongo办理-增加-填写相关信息-承认,需留意uri格局:

  • 假如没有用户名和暗码直接填写mongodb://ip:端口号,如:mongodb://192.168.1.123:27017 ;
  • 假如有用户名和暗码,则格局为:mongodb://用户名:暗码@ip:端口号,例如mongodb://root:123456@192.168.1.123:27017

一站式Linux&数据库管理平台mayfly-go

【数据操作】:Mongo-Mongo操作,顺次挑选项目、env、实例、库、表,例如:我想往test111数据库的user表中刺进一条数据,内容如下:

一站式Linux&数据库管理平台mayfly-go

检查刺进后的数据:

一站式Linux&数据库管理平台mayfly-go

以上便是mayfly-go渠道的搭建布置过程,以及简略运用介绍。