服务器运维
服务器运维
Batac_
中国北方小镇的田园村落
展开
-
go-正则匹配身份证号码
var ( //身份证号码 //rePersonCode = `<span>身份号码:[\s]?(([1-6]\d{5})(\d{4})(\d{2})(\d{2})(\d{4}))</span>` //rePersonCode = `<span>身份号码:[\s]?(([1-6]\d{5})((19\d{2})|(20\d{2}))(\d{2})(\d{2})(\d{4}))</span>` rePersonCode = `<span>.原创 2020-11-21 21:44:10 · 1064 阅读 · 0 评论 -
go-正则匹配超链接
\s 表示:匹配任意空白字符,等价于[ \t\n\r\f]\S 表示:匹配任意非空字符var ( //超链接 reSuperUrl = `<a[\s\S]+?href="(http[\s\S]+?)"` //以<a开头 [\s\S] \s匹配任意空白字符 \S匹配任意非空字符 +一次到多次 ?当匹配到后边的href的时候停止前面的匹配 //()分组 以http开头 匹配非空字符或者空字符任意一种 +一次或者多次 ?匹配到后边的"则停止匹配,...原创 2020-11-21 21:01:05 · 1226 阅读 · 0 评论 -
程序员的自我修养-堆与栈
1.栈内存、堆内存布局从上到下由高地址到低地址, 最上边分配给内核使用,接着是栈内存, 动态库使用内存, 堆内存, 其他内存栈内存是向下扩容, 增加元素, 则栈顶地址降低, 推出元素, 则栈顶地址升高;堆内存是向上扩容;栈内存特点: 栈上的数据在函数返回后就会自动释放;堆内存特点: 程序主动放弃之前都会保持不变;2.函数入栈过程void f(int y){ printf("y=%d", y);} int main(){ int x = 1; ..原创 2020-11-21 11:59:44 · 202 阅读 · 1 评论 -
shell脚本-监控内存使用率
#!/bin/bash#Description:#Author: Batac#Created Time: 2020/11/18 09:16#监控内存使用率# /proc/meminfo#内存申请顺序 free-cache-buffer-swapmember_use(){ memory_used=`head -2 /proc/meminfo | awk 'NR==1{t=$2}NR==2{f=$2;print (t-f)*100/t"%"}'` memor.原创 2020-11-18 09:49:53 · 380 阅读 · 0 评论 -
shell脚本-监控端口是否开启
#!/bin/bash#Description:#Author: Batac#Created time: 2020/11/17 21:20# 监控端口是否开启 服务是否存在port_status(){temp_file=`mktemp port_status.XXX`#1, 判断依赖命令是否存在[ ! -x /usr/bin/telnet ] && echo "telnet: not found command" && exit 1# 测试端口 $1.原创 2020-11-17 21:40:36 · 1094 阅读 · 0 评论 -
shell脚本-检测一台机器存活状态
#!/bin/bash#Desription:#Author: Batac#Created time: 2020/11.17 20:46#监控主机状态#监控方法 ping ICMP协议# 1分钟ping一次# main# 连续ping3次 如果都不通, 则服务器downfor ((i=0;i<4;i++));do #测试代码 -c 1 表示发送一次ICMP包 if ping -c1 $1 &>/dev/null;then #定义全局变量 .原创 2020-11-17 21:10:12 · 608 阅读 · 0 评论 -
shell脚本-awk简单使用
1. awk '{print $3}' test //打印第3列2. awk '{print $0}' test //打印所有列3. awk 'NR==3{print $0}' test //打印第3行的所有列4. awk -F ":" '{print $1}' passwd //打印第一列 以:分割5. awk -F ":" 'NR==1{print $1}' passwd //打印第一行第一列 以:分割每列6. awk -F ":" 'NR==1{print $1,$2, $...原创 2020-11-16 21:18:58 · 422 阅读 · 0 评论 -
shell脚本-sed简单使用
p: 打印d: 删除s: 查找替换c: 更改y: 转换 N D P1. sed 'a\hello word' data //在每一行末尾添加hello world2. sed '3a\hello word' data //在第三行末尾添加hello world3. sed '2,4a\hello word' data //在第2行到第4行末尾添加hello world4. sed '/3.the/a\hellowolrd' data //匹配模式 以3.the开头的一行, 然后在.原创 2020-11-16 20:09:46 · 197 阅读 · 0 评论 -
shell脚本-ping监听任务
监控服务器ip是否在线:#!/bin/bashfor((;;)) do#$1 输入ip ping -c1 $1 &>/opt/sleep.txt if [ $? -eq 0 ] then echo -e "`date +"%F %H:%M:%S"` : $1 is \033[32m UP \033[0m" sleep 600 else echo -e "`date +"%F %H:%M:%S"` : $1 is \033[31m Down原创 2020-11-15 16:46:51 · 377 阅读 · 0 评论 -
shell脚本-nginx启动管理脚本
#Decription:#Author: Batac_lzp#Created Time: 2020/11/15 14:47#nginx service manage script# 变量 下方函数中会使用#variablesnginx_install_doc=/application/nginxnginxd=$nginx_install_doc/sbin/nginxpid_file=$nginx_install_doc/logs/nginx.pid# Source functio.原创 2020-11-15 16:32:24 · 241 阅读 · 0 评论 -
shell脚本-九九乘法表
打印效果:代码:#!/bin/bashn=1while [ $n -lt 10 ];do for (( m=1;m<=$n;m++ ));do echo -n -e "$m * $n = $((n*m))\t" done echo n=$((n+1))done# -lt 小于# -n 不换行# -e 后边语句中有转义意义的# \t 空格# $((n+1)) 累加...原创 2020-11-15 13:43:17 · 334 阅读 · 0 评论 -
centos7安装pip
安装epel-releaseyum -y install epel-release安装python-pipyum -y install python-pip升级pippip install --upgrade pip原创 2020-10-17 11:25:28 · 107 阅读 · 0 评论 -
centos7 卸载和重新安装yum
rpm -qa | grep yum | xargs rpm -e --nodeps第二步:去镜像网站下载以下包,下载完成后传到linux服务器http://mirrors.163.com/centos/7/os/x86_64/Packages/手动下载包如下(包的版本会升级,实际下载时自行对应下载)rpm-4.11.3-40.el7.x86_64.rpmpython-urlgrabber-3.10-9.el7.noarch.rpmyum-plugin-fastestmirror-1.1.31.原创 2020-10-17 11:12:12 · 1636 阅读 · 0 评论 -
字节序(Byte Order)之大端小端
大端: Big-Endian 小端: Little-Endian MSB: 最重要的位或者最重要的字节; LSB: 最不重要的位或者最不重要的字节; 数据: 0x12 0x34 0x56 0x78 Big-Endian规定: MSB在存储的时放在低地址, 在传输时, MSB放在流的开始;LSB在存储的高地址, 在传输时放在流的末尾; Little-Endian则相反; Little-Endian 主要用于我们现在的pc的cpu中, Big-Endian则主要应用在Mac机器中, 一般指Pow.原创 2020-05-31 17:57:51 · 681 阅读 · 0 评论 -
(Redis)缓存处理的几个问题
目录目录问题一: 缓存穿透问题二: 缓存击穿问题三: 缓存雪崩测试代码问题一: 缓存穿透说明: 利用redis与mysql数据库的机制(redis中一旦不存在查询的ksy, 就访问mysql), 直接绕过缓存, 访问myslq, 而制造db的请求压力;解决: 将从mysql请求出的空存入redis一定时间;问题二: 缓存击穿说明: 某一热点key在高并发访问...原创 2020-04-09 11:57:03 · 503 阅读 · 0 评论 -
整合Redis(SpringBoot)
整合步骤:第一步:添加依赖<dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId></dependency>第二步:添加全局配置文件 private JedisPool jedis...原创 2020-04-08 17:11:42 · 240 阅读 · 0 评论 -
Nginx简单配置HTTPS.
server { listen 443 ssl; server_name www.batac.com batac.com; #证书 ssl_certificate /root/ssl_nginx/1_www.batac.com_bundle.crt; ssl_certificate_key /...原创 2020-04-05 22:30:32 · 168 阅读 · 0 评论 -
Mac安装FastDFS的说明
说明: Mac环境比较完备, 很多依赖都已经具备;1. 在mac机器上, 如果文件路径建在桌面, 则可能由于权限问题, 无法访问, 注意查看nginx日志;2.几个配置文件的base_path尽量保持一致;3.整合nginx与fastdfs-nginx-module./configure --prefix=/usr/local/nginx --pid-path=/var/run/...原创 2020-04-05 22:20:52 · 265 阅读 · 0 评论 -
virtualenv虚拟环境配置
3,用virtualenv命令建立一个虚拟环境mxshop。mkdir batacenvvirtualenv batacenv --pyhon=pyhon3.7命令后部是指定虚拟环境要使用的pyhon版本。4,找到batacenv->bin,执行命令:source activate 启动mxshop这个虚拟环境。5,在当前环境下输入python,应查看验证当前环境pyth...原创 2020-03-14 22:07:24 · 171 阅读 · 0 评论 -
mac安装homebrew失败怎么办?
第一步:通过命令创建一个文件夹sudo mkdir /usr/local/Homebrew第二步:git克隆sudo git clone https://mirrors.ustc.edu.cn/brew.git /usr/local/Homebrew第三步:创建一个快捷方式到/usr/local/bin目录sudo ln -s /usr/local/Homeb...原创 2020-03-14 21:17:16 · 1709 阅读 · 0 评论 -
docker之简单使用
Docker 是一个开源的应用容器引擎,基于Go 语言并遵从 Apache2.0 协议开源。Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。1. $ yum install do...原创 2019-11-25 18:14:03 · 99 阅读 · 0 评论 -
CentOS7 安装与配置vsftpd
1、FTP的安装#安装yum install -y vsftpd#设置开机启动systemctl enable vsftpd.service#启动systemctl start vsftpd.service#停止systemctl stop vsftpd.service#查看状态systemctl status vsftpd.service2、配置FTP...原创 2019-10-14 11:27:58 · 148 阅读 · 0 评论 -
MYSQL安装与部署
1.简单命令:# rpm -qa | grep mysql // 查看该操作系统上是否已经安装了mysql数据库# rpm -e mysql // 普通删除模式# rpm -e --nodeps mysql // 强力删除模式,如果使用上面命令删除时,提示有依赖的其它文件,则用该命令可以对其进行强力删除# yum list | grep mysql# yum instal...原创 2018-10-30 13:52:02 · 185 阅读 · 0 评论 -
vmware中无法使用键盘与鼠标:
解决办法:1.虚拟机设置中允许同步键盘与鼠标打开;2.mac系统设置虚拟机权限;原创 2018-10-30 14:28:19 · 13264 阅读 · 2 评论 -
VM虚拟机
在虚拟机中,可以模拟真实的机器环境,例如:windows与linux,黑苹果效果不是很好;1>2>3>4>5>7>接下来就是一步一步的安装,需要说明几点:1.安装系统前,需要对虚拟机使用的硬盘控件进行格式化处理,请了解windows磁盘分区知识;有一部分系统已经有PE环境,装机步骤中可以进入进行设置磁盘分区,然后将...原创 2018-10-30 14:45:01 · 306 阅读 · 0 评论 -
Redis单机部署与安装
REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-value存储系统。Redis是一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。它通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Map...原创 2018-10-30 15:07:05 · 504 阅读 · 0 评论 -
Redis之二
简介:redis 本质上是一个高性能的 Key,Value 数据库;支持存储的类型相对更多;(String、list、set、hash);ps : 查询频率高,且查询的是相同的内容,就用 redis 做缓存;典型的非关系型数据库,不用写sql语句的数据库;(在高并发的时候对关系型数据库起到一个很好的补充作用)默认端口redis 的默认端口是 6379安装 redis官...原创 2019-08-08 16:48:50 · 119 阅读 · 0 评论 -
MYSQL之简单语句查询一
使用命令行方式操作mysql数据库:登录数据库:mysql -uroot -p 创建数据库:create database python_test charset=utf-8;查看创建的数据库:show databases;使用刚才创建的数据库:use python_test;查询当前使用的数据库:select database();创建表:create ...原创 2019-08-12 14:48:50 · 121 阅读 · 0 评论 -
Tomcat安装与部署
1.下载最新的Tomcat包apache-tomcat-7.0.91.tar.gz;2.从本地上传到服务器:scp /Users/Batac/Desktop/apache-tomcat-7.0.91.tar.gz root@192.168.0.153:/root/java/apache-tomcat-7.0.91.tar.gz;//需要输入服务器密码;3.在服务器解压apache-tomc...原创 2018-10-30 14:22:44 · 1731 阅读 · 0 评论