- 博客(24)
- 收藏
- 关注
原创 将MySQL数据库定时备份到另一台服务器
查看日志是否有报错,可能会报属组属主,rwx权限等错误。一般将属组属主都改为root,rwx改为644即可。可以将cron表达式先改成每分钟,检查效果,之后再改回实际时间。然后将S的公钥复制到D的/root/.ssh/authorized_keys文件中,之后就可以免密进行scp。没有运行在Docker中时,只需要执行后半部分常规的mysqldump即可。这里用S指代source服务器,D指代destination服务器。当MySQL运行在Docker中时。注意crontab语法,参考。
2022-08-20 17:15:01 1827 1
原创 Linux下使用crontab的正确姿势
文件,这里一定要看清注释,网上找的cron表达式放进来会有语法错误,造成crontab不生效。sh文件可以放在任意路径,不必放在/usr/sbin。出现类似红框内记录即为执行成功。重启crontab服务。
2022-08-20 12:30:44 1288
原创 关于UDP的两个小问题的研究
问题一:UDP是长连接还是短连接?答:长连接是指连接建立以后,可以收发多条消息,不会断开;短连接是指连接建立以后,发送一条消息就断开。长连接和短连接的前提都是“建立连接”,都需要有连接,因此是定义在TCP协议中的,UDP协议中没有连接,所以并没有长连接还是短连接的定义。问题二:UDP能否找到发送来源并回传消息?答:可以。UDP的报文段中只有消息来源和消息目的地的端口号,并没有IP地址。要定位消息来源,还需要IP地址。IP地址来源于网络层,而UDP在运输层,网络层在向上传递数据到运输层时,可以保留消息来
2022-05-26 10:03:14 2848
原创 用Nexus搭建Maven私服
Step 1 在Linux服务器上安装Nexus前提:Java环境在Nexus官网或百度网盘下载安装包官网:https://download.sonatype.com/nexus/oss/nexus-2.14.20-02-bundle.tar.gz网盘:nexus-2.14.20-02-bundle.tar.gz v0ud解压到习惯的目录下配置运行用户cd /你的目录/nexus-2.12.0/nexus-2.12.0-01/vim bin/nexus
2022-04-20 18:01:25 1280
原创 Windows下安装解压版MySQL
本文参考:mysql-5.7.20-winx64.zip Zip版、解压版MySQL安装 - 终难遇 - 博客园 (cnblogs.com)下载压缩包https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.20-winx64.zip解压到喜欢的位置,在bin同级目录下创建my.ini3. 文件里面添加[mysqld]port=3306character-set-server=utf8basedir ="D:\\mysql-
2022-03-18 18:07:53 557
原创 单机ELK环境搭建
公司新上线了ELK分布式日志系统,本着好奇的心态自己动手搭建一套单机系统,特此记录。本文主要参考了ELK实践(一):基础入门,有些小坑做了改动。整体架构Step 1 准备一台干净的虚拟机准备一台干净的虚拟机接入本地局域网,可参考本人文章Ubuntu 16虚拟机原型创建,之后ELK所有的软件都在这一台服务器上安装并运行。Step 2 安装JDK1.8环境这个就不再赘述,网上有很多教程,后面有时间会整理一期。Step 3 安装ELK和Filebeat总共安装四个软件:ElasticSearch,
2022-03-08 15:53:42 2518
原创 Ubuntu 16虚拟机原型创建
家里有几台废旧电脑,可以当作服务器,通过路由器组建局域网。每台电脑上面跑几台虚拟机,互相连通可以测试服务集群。本文介绍如何创建一个虚拟机原型,每次需要新的虚拟机服务器时,只要克隆这个原型就可以。主要借鉴了这篇文章:人手一套Linux环境之:Windows版本教程,该文章是基于CentOS的,自己摸索了基于Ubuntu 16的创建方法。Step1 创建操作系统Step2 开启root用户sudo passwd -u rootStep3 配置网卡如果没有网卡信息,用 dhclie
2022-03-08 14:26:02 764
原创 用IDEA生成文档注释
使用文档注释模板作用是固定不变的注释不用每次手写,减少工作量。一、类和接口注释settings里面搜索File and Code Templates,按下图设置,接口注释同理。二、方法注释见此文自定义JavaDoc标签作用是自定义一些个性标签,供JavaDoc自动识别进说明文档中。原理是javadoc命令的-tag参数。添加方法:在自定义标签上alt+Enter,添加到custom tags。删除自定义标签,按下图操作:生成说明文档在Idea中的上方栏目中,找到 tools,打开菜
2021-05-28 14:35:35 1340
原创 Redis系列(三)持久化,主从复制,哨兵,集群
Redis有两种方式进行持久化一、RDB方式持久化这种方式保存的是数据。执行方法:手动:save(已废弃)/bgsave自动:在配置文件中 save m n配置文件常用参数RDB文件保存路径:配置文件中的dirRDB文件保存文件名:配置文件中dbfilenameRDB文件是否压缩:配置文件中rdbcompression二、AOF方式持久化这种方式保存的是写命令,更主流。默认关闭,要开启,配置文件中:appendonly yesAOF重写:将当前数据转化为写命令,与旧AOF文
2021-05-26 12:31:26 223
原创 Redis系列(二)整合 Spring Boot 简单使用
在Spring Boot中使用Redis,就是通过Jedis,Redisson,lettuce或者将三者封装的其他工具类,操作远程Redis服务器数据的增删改查。直接操作Jedis,Redisson和lettuce偏底层,本文使用将三者封装的spring-data-redis。Step 1 导入依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spr
2021-05-24 16:08:33 95
原创 Redis系列(一)与同类对比,底层数据结构,阿里云简单部署
Redis与Memcache,Ehcache对比有持久化需求或者对数据结构和处理有高级要求的应用,选择redis,其他简单的key/value存储,选择memcache。Memcache适合多读少写,大数据量的情况(如人人网大量查询用户信息、好友信息、文章信息等)Redis适用于对读写效率要求都很高,数据处理业务复杂和对安全性要求较高的系统(如新浪微博的计数和微博发布部分系统,对数据安全性、读写要求都很高)。Ehcache直接在jvm虚拟机中缓存,速度快,效率高;但是缓存共享麻烦,集群分布式应用不
2021-05-23 10:29:39 243
原创 Spring Boot多环境文件夹
不同于在application.properties中配置spring.profiles.active=xxx,这里是用文件夹配置,能容纳更多的配置文件。需要结合Maven的项目pom.xml文件,通过profiles标签设定,mvn命令激活,resources标签读取。Step 1: 通过profiles标签设定环境ID,和环境对应的属性名、属性值。<profiles> <profile> <!--不同环境Profile的唯一id-->
2021-05-22 17:50:19 394
原创 用Logback记录日志,告别sout
为自己的程序记录日志,是好的程序员需要用多年时间培养的好习惯。慢慢地要用日志代替sout。日志好处多多,可以持久化,便于分析程序运行状态,分析用户行为等。之前的Commons Logging+Log4J组合已经略显老旧,目前主流的日志框架是SLF4J+Logback。SLF4J可以看成是一个接口,Logback可以看成是该接口的具体实现。编写Java代码时,只需要调用接口。Logback不在Java代码中出现,只需要配置好XML文件即可。Logback会根据不同的优先级,在classpath中读取XML
2021-05-22 11:44:46 569
原创 FastJSON常用功能
FastJSON是阿里巴巴开源的一款序列化与反序列化Java第三方库,可以方便地把Java对象和JSON字符串互相转换,用于数据传输。类似的还有Jackson和Gson,Jackson适合数据量较大的场景,Gson是Google出品,使用简单,速度不及FastJSON。JSON对象有JSONObject和JSONArray介于Java对象和JSON字符串之间,可以和Java对象、JSON字符串互相转换有getXxx()方法,入参一个key,key对应value是一个Xxx,返回这个Xxx继承自J
2021-05-16 19:54:48 799
原创 初识enum(二)
enum的实例方法enum 被编译器编译为 final class Xxx extends Enum {...}, enum实例有几个继承自父类Enum的方法:name() 返回enum实例名字的字符串表示;ordinal() 返回enum实例所在位置的索引;toString() 和 name() 一样,但 toString() 可以被重写, name() 不行。enum的构造函数创建一个诸如 Weekday.MON 的enum实例时,会调用Weekday的构造函数, 并且把预先定义好的参数
2021-03-12 15:42:36 120
原创 初识enum(一)
enum是Java的枚举类。可以把它看成是能够替换class关键字。从JDK5开始出现。枚举类里面的值约定都用大写表示,中间用逗号隔开,默认是static final的,比如:enum Gender { MALE, FEMALE}枚举类的两大作用MALE和FEMALE的数据类型都是Gender。所以enum可以把一组值限定为某种类型,例如把MALE, FEMALE限定为Gender类。enum还能限定一个类里面所有能取出的值,例如限定Gender类里只能取出MALE,FEMAL
2021-03-12 14:42:30 209
原创 聊聊Spring的核心模块
引言Spring官网上明确列出了Spring Framework的几大核心模块,就是这张经典图片:Spring Framework大概由20个模块组成。这些模块分成以下几组:核心容器(Core Container)、数据访问/数据集成(Data Access/Integration),Web,AOP,工具(Instrumentation),消息(Messaging)和测试(Test)。下面来逐个分析一下每个模块组的具体内容和作用,组里面子模块的名字和pom文件中导入依赖时的“Artifact ID”
2021-03-10 13:52:22 984 1
原创 2021-03-03
上一篇大概总揽了Logback,这一篇集中精力看xml配置文件。以下是一个涵盖大部分常用配置项的典型xml文件,每一项功能以注释方式标出,比较直观。文件名是logback-spring.xml,放在Spring Boot的resources目录下。<?xml version="1.0" encoding="UTF-8"?><!--scan默认true,当xml发生改变,会被自动重新加载;debug默认false,为true将打印出日志的日志--><configuratio
2021-03-03 12:32:03 104
原创 玩转Logback(一)理解篇
为什么要用日志对于程序开发,经常要写print语句测试运行结果,开发完成之后又要删除print语句,操作繁琐,又有较强的侵入性。作为替代,我们要使用日志。为什么使用Logback记录日志的方式有很多种,有java.util包中自带的logging,又叫JDK Logging,或者JUL;也有第三方日志库。早期使用的第三方日志库是Commons Logging + Log4j的组合,现在的趋势是SLF4J + Logback组合。SLF4J可以类比Commons Logging,提供了日志接口;Logb
2021-03-03 10:30:19 90
原创 CentOS7虚拟机上的RabbitMQ服务器连接速度慢的解决办法
在虚拟机系统上跑RabbitMQ服务器时,从windows连接速度很慢,往往超时导致任务失败。以下是解决方法,适用于一切从虚拟机上跑的服务器,如Tomcat等。Step1 找到CentOS7系统的hostname$ hostname本例hostname为"bogon"Step2 将本机主机和ip加入hosts文件$ vim /etc/hosts打开后看到127.0.0.1 localhost localhost.localdomain localhost4 localhost4.loc
2021-01-14 22:46:37 622 1
原创 Win10下用SecureCRT连接Centos7虚拟机
什么是SecureCRTSecureCRT可以简单理解为带图形界面的PuTTYCentos7虚拟机配置配置centos网卡i. 进入网卡配置文件目录 cd /etc/sysconfig/network-scripts/ii. 查看目录,找到ifconfig-eXXX文件。这个就是网卡的配置文件。iii. 修改这个配置文件,把ONBOOT=no改为yesiv. 重启网络服务即可 service network restart使用$ ip address show来查看ip地址(或者简写
2021-01-10 20:43:56 511 2
原创 过滤配置文件中的注释
我们在查看某些配置文件时,里面包含大量注释,影响我们提取功能性语句。可以用此方法把注释去掉。例如redis的配置文件里包含了大量注释,影响观瞻。去除注释的方法:$ cat redis.conf | grep -v "#" | grep -v "^$" > redis-6379.conf过程很好理解,就是提取原来注释文件里不包含的#行,再去除空行,存储到一个新的文件里。redis-6379文件名是自定义的,一般以端口号命名,方便知道是哪个端口号的注释文件。...
2021-01-10 20:42:19 550
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人