【DevOps】 Prometheus + Grafana (一)安装配置与系统级监控
文章目录
- 关于Prometheus
- 介绍
- 数据格式与实例
- 四种数据类型
- promql
- 相关组件
- Centos7 安装 Prometheus
- Centos7 安装 Go 环境
- Centos7 安装 Prometheus
- 配置 Prometheus
- 启动与使用
- Centos7 安装与配置 Grafana
- 安装 Grafana
- 配置数据源
- dashboards
- Prometheus + Grafana 监控案例
- 监控 Linux 服务器
- 监控 mysql
- 监控 redis
- 监控 kafka
- 监控 Nginx
- 监控业务
- Prometheus 查询
- 参考
关于Prometheus
介绍
1、prometheus 存储的是时序数据,适合监控一些随时间变化的场景
2、原理:通过HTTP协议周期性抓取(Pull方式)被监控组件的状态,好处是任意组件只要提供HTTP接口就可以接入监控系统,不需要任何SDK或者其他的集成过程。这样做非常适合虚拟化环境,比如VM或者Docker。输出被监控组件信息的Http接口叫exporter。
3、特点
Prometheus Server 负载定时在目标上抓取 metrics(指标)数据,每个抓取目标都需要暴露一个 HTTP 服务接口用于 Prometheus 定时抓取。这种调用被监控对象获取监控数据的方式被称为 Pull(拉)。Pull 方式体现了 Prometheus 独特的设计哲学与大多数采用 Push(推)方式的监控不同
Pull 方式的优势是能够自动进行上游监控和水平监控,配置更少,更容易扩展,更灵活,更容易实现高可用。简单来说就是 Pull 方式可以降低耦合。由于在推送系统中很容易出现因为向监控系统推送数据失败而导致被监控系统瘫痪的问题。所以通过 Pull 方式,被采集端无需感知监控系统的存在,完全独立于监控系统之外,这样数据的采集完全由监控系统控制
4、时序(time series)是由名字(Metric)以及一组key/value标签定义的,具有相同的名字以及标签属于相同时序
5、metric名字:表示metric的功能,如 http_request_total
数据格式与实例
1、数据格式:<metric name>{<label name>=<label value>, ...}
2、实例
up{job="<job-name>", instance="<instance-id>"}: 1 表示该实例正常工作
up{job="<job-name>", instance="<instance-id>"}: 0 表示该实例故障
四种数据类型
1、Counter
Counter用于累计值,例如记录请求次数、任务完成数、错误发生次数。一直增加,不会减少。重启进程后,会被重置。
http_response_total{method=”GET”,endpoint=”/api/tracks”} 100
2、Gauge
Gauge 瞬时数据,比如内存使用率、CPU使用率等。
3、Histogram
<basename>_bucket{le="<upper inclusive bound>"}
<basename>_bucket{le="+Inf"}
<basename>_sum
<basename>_count
Histogram(直方图)可以理解为柱状图的意思,常用于跟踪事件发生的规模,例如:请求耗时、响应大小。它特别之处是可以对记录的内容进行分组,提供count和sum全部值的功能。
4、Summary
<basename>{quantile="<φ>"}
<basename>_sum
<basename>_count
Summary和Histogram十分相似,常用于跟踪事件发生的规模,例如:请求耗时、响应大小。同样提供 count 和 sum 全部值的功能。
count=7次,sum=7次的值求值。
它提供一个quantiles的功能,可以按%比划分跟踪的结果。例如:quantile取值0.95,表示取采样值里面的95%数据。
promql
做查询 与 报警
相关组件
参考:https://baijiahao.baidu.com/s?id=1689945188583938997&wfr=spider&for=pc
1、Prometheus Server:Prometheus 的核心部分,负责实现对监控数据的获取,存储以及查询;
静态或动态的配置管理监控目标;
本身具有时序数据库的功能;
对外提供自定义的 PromQL 语言,可以查询分析;
内置 Express Browser UI, 可以通过该 UI 用 PromQL 实现数据的查询以及可视化
2、push gateway:接收由 Client push 过来的指标数据,在指定的时间间隔,由主程序来抓取;
Prometheus Server 与 Exporter 无法直接通信时,可以利用 PushGateway 来进行中转。
3、Exporter:采集数据,并通过 HTTP 服务的形式暴露给 Prometheus Server;
例子:node_exporter、mysqld_exporter、haproxy_exporter 等。
4、Alertmanager:Prometheus 体系中的告警处理中心;
Prometheus Server 中支持基于 PromQL 创建告警规则,如果满足PromQL定义的规则,则会产生一条告警,而告警的后续处理流程则由 AlertManager 进行管理;
可以邮件、webhook 等方式预警。
Centos7 安装 Prometheus
参考:https://blog.csdn.net/baidu_36943075/article/details/91829364
Centos7 安装 Go 环境
wget https://studygolang.com/dl/golang/go1.10.3.linux-amd64.tar.gz #下载包
sudo tar -C /usr/local -xzf go1.10.3.linux-amd64.tar.gz #解压包
sudo vim /etc/profile #打开环境变量配置文件,写入如下内容(位置根据实际的存放位置为准)
export GO_HOME=/usr/local/go
export PATH=$GO_HOME/bin:$PATH
source /etc/profile # 重启环境变量
go version #查看版本号验证是否安装成功
Centos7 安装 Prometheus
cd /usr/softwarewget https://github.com/prometheus/prometheus/releases/download/v2.26.0/prometheus-2.26.0.linux-amd64.tar.gztar -zxvf prometheus-2.26.0.linux-amd64.tar.gz -C /usr/local/
配置 Prometheus
官网说明:https://prometheus.io/docs/prometheus/latest/configuration/configuration/
https://www.jianshu.com/p/b9d15f236e02
global:全局配置
alerting:Alertmanager相关配置
rule_files:规则文件列表,使用’evaluation_interval’ 参数抓取
scrape_configs:抓取配置列表
cd /usr/local/prometheus-2.26.0.linux-amd64
vim prometheus.yml # my global config
global:scrape_interval: 15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.# scrape_timeout is set to the global default (10s).# Alertmanager configuration
alerting:alertmanagers:- static_configs:- targets:# - alertmanager:9093# Load rules once and periodically evaluate them according to the global 'evaluation_interval'.
rule_files:# - "first_rules.yml"# - "second_rules.yml"# A scrape configuration containing exactly one endpoint to scrape:
# Here it's Prometheus itself.
scrape_configs:# The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.- job_name: 'prometheus'# metrics_path defaults to '/metrics'# scheme defaults to 'http'.static_configs:- targets: ['localhost:9090']
启动与使用
1、启动
注意:prometheus 没有自带任何加密措施,因此尽量不要暴露所使用的端口,通过 grafana去查看监测数据,实在要用 prometheus 的UI 的话,可以做 Nginx 加密;
# 后台启动,并修改开放端口
nohup ./prometheus --config.file=prometheus.yml --web.enable-lifecycle --web.listen-address=:19908 &
# 查看启动状态
ps -ef | grep prometheus
lsof -i:19908# 查看启动的命令行参数
./prometheus -h
2、常用启动参数
# 启动使用的配置文件
--config.file=prometheus.yml
# 是否启用 API,启用API后,可以通过 API指令完成 Prometheus 的 停止、热加载配置文件 等
--web.enable-lifecycle
# 服务监听端口
--web.listen-address=:19908
# 是否启用 admin api 的访问权限(TSDB管理API)
--web.enable-admin-api
# 保留数据的天数
--storage.tsdb.retention.time=7d
3、API
# 查看当前配置
curl http://localhost:9090/api/v1/status/config# 使修改后的配置生效
curl -XPOST http://localhost:19908/-/reload
4、强行关闭 Prometheus
lsof -i:19908
kill -9 pid
Centos7 安装与配置 Grafana
官网:https://grafana.com/grafana/download
配置文件说明:https://blog.csdn.net/liumiaocn/article/details/104027047
Dashboards :https://grafana.com/grafana/dashboards
安装 Grafana
wget https://dl.grafana.com/oss/release/grafana-7.5.3-1.x86_64.rpm
sudo yum install grafana-7.5.3-1.x86_64.rpm
yum clean allvim /etc/grafana/grafana.ini
# 编辑
http_port = 13818
# 保存systemctl enable grafana-server
systemctl start grafana-server访问 ip:13818
配置数据源
访问 ip:3000,初始用户名和密码都是 admin,修改新密码后进入
1、点击 Configuration -> Add data source
2、选择 Prometheus
3、Dashboards 选择 Prometheus 2.0 Stats ,Import
4、Settings 写入 Prometheus 的 IP 和 端口,我这里写为 http://localhost:19908
5、点击 Save & Test
6、进入 Dashboards,选择 prometheus-2-0-stats,即可看到监控数据
dashboards
网址:https://grafana.com/grafana/
服务器推荐:https://grafana.com/grafana/dashboards/8919
Docker 推荐:https://grafana.com/grafana/dashboards/8321
Prometheus + Grafana 监控案例
exporter 案例:https://prometheus.io/docs/instrumenting/exporters/
监控 Linux 服务器
参考: https://www.jianshu.com/p/7bec152d1a1f
1、被监控服务器 同步时间
yum install ntpdate -yntpdate ntp5.aliyun.comdate # 或 timedatectl
2、在被监控的机器下载与安装 node_exporter
查看最新 Release:
https://github.com/prometheus/node_exporter/
cd /usr/softwarewget https://github.com/prometheus/node_exporter/releases/download/v1.1.2/node_exporter-1.1.2.linux-amd64.tar.gztar -zxvf node_exporter-1.1.2.linux-amd64.tar.gz -C /usr/local/
3、启动 node_exporter
命令启动 (不推荐):
cd /usr/local/node_exporter-1.1.2.linux-amd64nohup ./node_exporter --web.listen-address=:19918 &
启动参数:
#node_exporter监听的端口,默认是9100,若需要修改则通过此参数。
--web.listen-address=":19918" #获取metric信息的url,默认是/metrics,若需要修改则通过此参数
--web.telemetry-path="/metrics" #设置日志级别
--log.level="info" #设置打印日志的格式,若有自动化日志提取工具可以使用这个参数规范日志打印的格式
--log.format="logger:stderr"
做成系统服务并启动 (优秀教程:https://blog.csdn.net/yuesichiu/article/details/51485147)
# centos 7.9
cat > /usr/lib/systemd/system/node_exporter.service << EOF
[Unit]
Description=node_exporter
Documentation=https://prometheus.io/
After=network.target
[Service]
Type=simple
ExecStart=/usr/local/node_exporter-1.1.2.linux-amd64/node_exporter --web.listen-address=:19918
Restart=on-failure
[Install]
WantedBy=multi-user.target
EOFchmod 754 /usr/lib/systemd/system/node_exporter.servicesystemctl daemon-reload && systemctl enable node_exporter.service && systemctl start node_exporter.service
systemctl daemon-reload && systemctl restart node_exporter.service && systemctl status node_exporter
systemctl status node_exporter# ubuntu 14.04
cd /usr/local/node_exporter-1.1.2.linux-amd64nohup ./node_exporter --web.listen-address=:19918 &# ubuntu 18.04
su # 进入 rootcat > /etc/systemd/system/node_exporter.service << EOF
[Unit]
Description=node_exporter
Documentation=https://prometheus.io/
After=network.target
[Service]
Type=simple
ExecStart=/usr/local/node_exporter-1.1.2.linux-amd64/node_exporter --web.listen-address=:19918
Restart=on-failure
[Install]
WantedBy=multi-user.target
EOFchmod 754 /etc/systemd/system/node_exporter.servicesystemctl daemon-reload && systemctl enable node_exporter.service && systemctl start node_exporter.service
systemctl daemon-reload && systemctl restart node_exporter.service && systemctl status node_exporter
systemctl status node_exporter
查看监控指标:
curl http://localhost:19918/metrics;# 简单的指标说明:node_boot_time: 系统启动时间
node_cpu: 系统CUP使用情况
node_disk_*: 磁盘io
node_filesystem_*: 文件系统使用量
node_load1: 系统负载
node_memory_*: 系统内存使用量
node_network_*: 网络宽带
node_time: 当前系统时间
go_*: node exporter中go相关指标
*process_ :**node exporter自身进程相关指标
5、prometheus 的配置文件添加监控项
Centos机器 29 台:
172、173、174、175、176、177、178、179、180、181、182、183、184、185、
186、·187、188、189、190、197、198
89、91、93、94
下载的四台
Ubuntu机器 13 台:
164、165、166、168、169、170、171
85、86、87、88、90、92
cd /usr/local/prometheus-2.26.0.linux-amd64
vim prometheus.yml - job_name: 'server_91'crape_interval: 8sstatic_configs:- targets: ['192.168.10.106:19918']labels:instance: Prometheus
# 保存# 热重启 Prometheus
curl -XPOST http://localhost:19908/-/reload
6、导入 dashboard
Dashboards -> Manage -> Import -> mport via grafana.com -> 输入8919 -> 点击 load
监控 mysql
参考:https://www.cnblogs.com/xiangsikai/p/11289675.html
1、在被监控的mysql所在的服务器安装 mysql_export
cd /usr/softwarewget https://github.com/prometheus/mysqld_exporter/releases/download/v0.12.1/mysqld_exporter-0.12.1.linux-amd64.tar.gztar -zxvf mysqld_exporter-0.12.1.linux-amd64.tar.gz -C /usr/local/
2、配置 被监控机器的 mysql
mysql -u root -pCREATE USER 'mysql_exporter'@'localhost' IDENTIFIED BY 'XXXXXXXX';
GRANT PROCESS, REPLICATION CLIENT, SELECT ON *.* TO 'mysql_exporter'@'localhost';cd /usr/local/mysqld_exporter-0.12.1.linux-amd64vim .my.cnf[client]
user=mysql_exporter
password=123456
3 、启动 mysql_export
命令启动(不推荐)
cd /usr/local/mysqld_exporter-0.12.1.linux-amd64# 如需修改端口,可加参数 --web.listen-address=:9104(默认是9104)
nohup ./mysqld_exporter --config.my-cnf=.my.cnf &curl http://localhost:9104/metrics
做成系统服务启动
# centos 7.9
cat > /usr/lib/systemd/system/mysqld_exporter.service << EOF
[Unit]
Description=mysqld_exporter
After=network.target
[Service]
Type=simple
ExecStart=/usr/local/node_exporter-1.1.2.linux-amd64/node_exporter --config.my-cnf /usr/local/mysqld_exporter-0.12.1.linux-amd64/.my.cnf
Restart=on-failure
[Install]
WantedBy=multi-user.target
EOFchmod 754 /usr/lib/systemd/system/mysqld_exporter.servicesystemctl daemon-reload && systemctl enable mysqld_exporter.service && systemctl start mysqld_exporter.service && systemctl status mysqld_exporter
systemctl daemon-reload && systemctl restart mysqld_exporter.service && systemctl status mysqld_exporter
systemctl status mysqld_exporter
4、配置 Prometheus 配置文件,并热重启
- job_name: 'mysql'static_configs:- targets: ['xxx.xxx.xx.164:9104','xxx.xxx.xx.165:9104','xxx.xxx.xx.166:9104']
curl -XPOST http://localhost:19908/-/reload
5、在 Grafana 中 添加 dashboard
Dashboards -> Manage -> Import -> mport via grafana.com -> 输入7362-> 点击 load
监控 redis
1、在要被监控的redis 所在的机器上下载与安装 redis_exporter
cd /usr/software/wget https://github.com/oliver006/redis_exporter/releases/download/v1.20.0/redis_exporter-v1.20.0.linux-amd64.tar.gztar -zxvf redis_exporter-v1.20.0.linux-amd64.tar.gz -C /usr/local
2 、启动 redis_exporter
命令启动(不推荐)
cd /usr/local/redis_exporter-v1.20.0.linux-amd64# 如需修改端口,可加参数 --web.listen-address=:9121(默认是9121)
nohup ./redis_exporter -redis.addr localhost:6379 -redis.password 123456 &curl http://localhost:9121/metrics
做成系统服务启动
# centos 7.9
cat > /usr/lib/systemd/system/redis_exporter.service << EOF
[Unit]
Description=redis_exporter
After=network.target
[Service]
Type=simple
ExecStart=/usr/local/redis_exporter-v1.20.0.linux-amd64/redis_exporter -redis.addr=IP:6379 -redis.password=passwd
Restart=on-failure
[Install]
WantedBy=multi-user.target
EOFchmod 754 /usr/lib/systemd/system/redis_exporter .servicesystemctl daemon-reload && systemctl enable redis_exporter .service && systemctl start redis_exporter .service && systemctl status redis_exporter
systemctl daemon-reload && systemctl restart redis_exporter .service && systemctl status redis_exporter
systemctl status redis_exporter
4、配置 Prometheus 配置文件,并热重启
- job_name: redis_exporterstatic_configs:- targets: ['xxx.xxx.xx.85:9121','xxx.xxx.xx.86:9121']
curl -XPOST http://localhost:19908/-/reload
5、在 Grafana 中 添加 dashboard
Dashboards -> Manage -> Import -> mport via grafana.com -> 输入763-> 点击 load
https://grafana.com/dashboards/763/revisions
监控 kafka
1、在被监控的kafka集群所在的任意一台服务器安装 kafka_exporter
cd /usr/softwarewget https://github.com/danielqsj/kafka_exporter/releases/download/v1.2.0/kafka_exporter-1.2.0.linux-amd64.tar.gztar -zxvf kafka_exporter-1.2.0.linux-amd64.tar.gz -C /usr/local/
2、启动 kafka_exporter
命令启动(不推荐)
cd /usr/local/kafka_exporter-1.2.0.linux-amd64# 如需修改端口,可加参数 --web.listen-address=:9308(默认是9308)
nohup ./kafka_exporter --kafka.server=localhost:9308 &curl http://localhost:9308/metrics
做成系统服务启动
# centos 7.9
cat > /usr/lib/systemd/system/kafka_exporter.service << EOF
[Unit]
Description=kafka_exporter
Documentation=https://prometheus.io/
After=local-fs.target network-online.target network.target
Wants=local-fs.target network-online.target network.target
[Service]
Type=simple
ExecStart=/usr/local/node_exporter-1.1.2.linux-amd64/node_exporter --kafka.server=localhost:9096
Restart=on-failure
[Install]
WantedBy=multi-user.target
EOFchmod 754 /usr/lib/systemd/system/kafka_exporter.servicesystemctl daemon-reload && systemctl enable kafka_exporter.service && systemctl start kafka_exporter.service && systemctl status node_exporter
systemctl daemon-reload && systemctl restart kafka_exporter.service && systemctl status kafka_exporter
systemctl status node_exporter
3、配置 Prometheus 配置文件,并热重启
- job_name: 'kafka'static_configs:- targets: ['xxx.xxx.xx.170:9308']
curl -XPOST http://localhost:19908/-/reload
4、在 Grafana 中 添加 dashboard
7589、10466、11963
Dashboards -> Manage -> Import -> mport via grafana.com -> 输入7589-> 点击 load
监控 Nginx
参考:
https://it.baiked.com/nginx/2697.html
https://www.cnblogs.com/xiao987334176/p/11180652.html
promethues监控nginx可选两个exporter,通过nginx_exporter主要是获取nginx-status中的内建的指标,nginx自身提供status信息,较为简单,promethues中对应的metrics也较少,想要监控更多的指标可以通过nginx-vts-exporter采集信息,依赖在编译nginx的时候添加nginx-module-vts模块来实现。
nginx virtual host traffic status模块是nginx第三方模块之一,vts提供了访问虚拟主机状态的信息,包含server,upstream以及cache的当前状态,类似于NGINX Plus 提供的在线活动监控功能。
1、安装 nginx-exporter
docker pull fish/nginx-exporterdocker run -it fish/nginx-exporter# 新开一个终端
docker ps|grep nginx-exporterdocker cp 容器ID:/usr/local/bin/nginx_exporter /opt/# 执行成功则说明安装成功
/opt/nginx_exporter --help# 退出容器mkdir -p /etc/nginx_exporter/bin/
mv /opt/nginx_exporter /etc/nginx_exporter/bin/
2、配置 nginx
vi /etc/nginx/sites-enabled/status.conf
server {listen 8011;server_name localhost;location /nginx_status {stub_status on;access_log off;allow 127.0.0.1;}
}
nginx -s reload
/etc/nginx/sites-enabled# curl 127.0.0.1:8011/nginx_status
3、封装为系统 service
vim /lib/systemd/system/nginx_exporter.service
[Unit]
Description=nginx monitor
After=network.target[Service]
ExecStart=/etc/nginx_exporter/bin/nginx_exporter -nginx.scrape_uri="http://127.0.0.1:8011/nginx_status"
ExecStop=-/sbin/start-stop-daemon --quiet --stop --retry QUIT/5
TimeoutStopSec=5
KillMode=mixed[Install]
WantedBy=multi-user.targetsystemctl daemon-reload
systemctl enable nginx_exporter.service
systemctl start nginx_exporter.servicenetstat -anpt|grep nginx_exportecurl 127.0.0.1:9113/metrics
4、配置 Prometheus
cd /usr/local/prometheus-2.26.0.linux-amd64
vim prometheus.yml - job_name: nginx_exporterstatic_configs:- targets: ['192.168.10.139:9113']# prometheus 热重启
curl -XPOST http://localhost:19908/-/reload
监控业务
Prometheus 查询
http_requests_total
http_requests_total{code="200", handler="query"}
http_requests_total{code~="2xx"}
http_requests_total > 100
http_requests_total[5m]
count(http_requests_total)
sum(http_requests_total)
avg(http_requests_total)
topk(3, http_requests_total)
irate(http_requests_total[5m])
参考
https://blog.csdn.net/ywd1992/article/details/85989259
prometheus 中文指南:https://yunlzheng.gitbook.io/prometheus-book/
Prometheus 官方文档:https://prometheus.io/docs/introduction/overview/
Grafana 官方文档:http://docs.grafana.org/
全面学习Prometheus:http://dockone.io/article/5716?tdsourcetag=s_pcqq_aiomsg
Prometheus 非官方中文手册:https://www.bookstack.cn/read/prometheus-manual/README.md
Prometheus 实战:https://songjiayang.gitbooks.io/prometheus/content/
prometheus-book:https://yunlzheng.gitbook.io/prometheus-book/
Grafana的一些实用技巧:https://segmentfault.com/a/1190000013565079
【DevOps】 Prometheus + Grafana (一)安装配置与系统级监控相关推荐
- Prometheus+Grafana监控安装及配置JVM实现企业微信告警
背景 本人Java开发工程师一枚,主攻后端,需要搭建一套Prometheus+Grafana的监控系统,采用企业微信告警通知.在网上各种查阅资料的同时,发现很多资料都大致相通且不完整,踩坑无数,经过多 ...
- linux redis数据库安装配置,Linux系统中redis的安装配置步骤
Linux系统中redis的安装配置步骤 发布时间:2020-06-23 10:13:36 来源:亿速云 阅读:87 作者:Leah 这篇文章将为大家详细讲解有关Linux系统中redis的安装配置步 ...
- mosek 安装配置python_Windows系统Python解释器的安装配置
视频讲解教程:Windows系统Python解释器的安装配置讲解视屏 Windows系统Python解释器的安装配置_哔哩哔哩 (゜-゜)つロ 干杯~-bilibiliwww.bilibili.co ...
- 《Linux就那么学》虚拟机安装配置及系统和配置的全过程
安装配置vm虚拟机 1.虚拟机程序的安装:链接:https://pan.baidu.com/s/16t-yBZRPZsgEl3vUnRkUNA 提取码:lcju 下载完成后点击安装,初始化界面 然后点 ...
- mysql5.6 安装配置 老系统_mysql 5.6 从陌生到熟练之-安装配置(windows系统)
mysql配置 1.安装文件的下载 免安装版下载地址 :http://dev.mysql.com/downloads/file.php?id=452189 下载后是一个压缩文件,解压后放在你想放的位置 ...
- 使用Clion开发C语言程序,环境安装配置,保姆级教程
墙裂推荐:C语言学习资源汇总,史上最全面总结,没有之一 C语言开发神器--Clion 首先我们到官网下载安装包 安装包下载后,鼠标双击下载的exe文件,然后点击next 选择安装目录,然后点击next ...
- MySQL5.6免安装配置与“系统找不到指定的文件”错误
1. 下载免安装版本的 mysql-5.6.11-winx64 (本机 win7 64 位) 2. 将文件解压到任意,不要有中文(有中文的情况没试过,不过最好避免这种情况) 3. 配置mysql 环 ...
- mysql5.6 安装配置 老系统_Windows系统 Mysql5.6下载安装以及配置
一:下载(借鉴:https://wenda.so.com/q/1470863138729940) 1.网址:https://dev.MysqL.com/downloads/MysqL/5.6.html ...
- linux mutt安装配置_Linux系统中安装配置Mutt来作为Gmail客户端
mutt是一个Linux终端下的著名的邮件客户端,如你所愿,mutt就是一个邮件客户端.没有其他浮华的功能,它可以帮助你提升效率,至于帮助你装X只能算是mutt的特殊加成. 由于mutt是一个有着un ...
最新文章
- memcache安装
- 在.Net项目中使用Redis作为缓存服务
- React后台管理系统-file-uploader组件
- springboot+security框架整合
- MAC下Android Studio快捷键的配置
- MyBatis映射表问题
- 在html插入数学公式,在网页中显示数学公式
- EDA课程设计(设计一个4时隙的时分复用模块)(岭)
- photoshop自定义画笔预设,工作中的应用。
- mpeg格式转换成mp4,mpeg转mp4
- 练习一万小时;2000-5000 小时计划和建议;现在开始!---读《异类》后刚好遇到的一篇文章
- Asp连接Oracle (包含绿色版12.2客户端和ODBC驱动安装)
- 使用Sendinput函数模拟鼠标键盘操作
- EM78系列单片机的开发工具及编程器
- Gitte (https://gitee.com/) 常用git指令--实例
- 个人收款码和个人经营收款码的区别,你知道吗
- 全球十大正规黄金期货交易APP平台排名(2023版榜单)
- :after伪类 content内容生成经典应用举例——张鑫旭
- shapefile文件转geojson 加载到openlayers上使用
- python int转bytes_Python中int与bytes相互转换的方法