自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Tongyao

主页地址:https://ityao.cn,公众号:张童瑶

  • 博客(352)
  • 资源 (5)
  • 问答 (8)
  • 收藏
  • 关注

原创 MySQL 唯一索引 UNIQUE KEY 会导致死锁?

命令添加unique:删除:唯一性索引作用:先行插入部分数据:再次查看表定义:这时的Auto_Increment=5再次执行sql:此时再次查看表定义,会发现Auto_Increment=6具体的区别:insert ignore:insert ignore会忽略数据库中已经存在的数据(根据主键或者唯一索引判断),如果数据库没有数据,就插入新的数据,如果有数据的话就跳过这条数据。执行上面的语句,会发现并没有报错,但是主键还是自动增长了。此时会发现吕布的班级跟年龄都改变了,但是id也变成最新的

2022-06-08 17:17:31 971

原创 MySQL 优化建议详解

看完这篇SQL优化建议,此时我只想说‘基尼太美!’

2022-05-08 14:18:12 594

原创 MySQL EXPLAIN 性能分析工具详解

自从学会EXPLAIN SQL性能分析后,感觉小破公司容不下我了!

2022-05-07 17:02:23 621

原创 MySQL 索引详解和什么时候创建索引什么时候不适用索引

自从我学会什么时候创建索引,老板激动地说要给我涨3k

2022-05-07 16:29:32 732

原创 MySQL 索引检索原理和B+Tree数据结构详解

MySQL教程从入门到优化,从删库到跑路,只要3天!

2022-05-06 18:25:25 1229

原创 Cute Http File Server 使用文章

Cute Http File Server 是国内免费开源的局域网传输服务器软件。可以不用借助QQ、某信软件传输文件,并且文件大小不受限制,速度基于你的网线、路由器速度。真正的跨平台,只要移动设备有浏览器,输入网址即可交互文件。

2024-01-25 15:03:10 480

转载 Windows 11 技术优化文章

Windows11 最大劝退点就是这个右键菜单,复制粘贴都变成一点点的小图标,最气人的是点击底部的显示更多选项才能展示全部功能。让许多本来点一次就能完成的操作变成两次。其实使用一个小命令就能修改回win10版本的菜单。本期将分享四个简单的bat脚本,却能完美解决windows使用的四个痛点。

2024-01-25 14:52:26 80

原创 MySQL 安装 audit 日志审计插件

我的MySQL版本是 5.7.37的,用的是日志审计插件(audit-plugin)是1.1.10的,大家可以对应自己版本去下载。后来去的GitHub中找到了解决问题,解决问题很简单,只需要关闭当前Linux系统中的。1、进入到/opt目录下载 audit,可以从本地下载完上传到你的linux系统中。垃圾csdn,翻来翻去都是相同的帖子,都他妈复制过来复制过去的,一点脑子也不带!2、生成坐标,并且复制坐标,前两个字段不用复制!5、登录到你的MySQL,安装 audit插件。3、永久性关闭,重启后不会失效。

2023-08-17 11:16:22 1846

原创 MySQL 在CentOS下安装

2、启动MySQL服务。

2023-08-02 11:24:51 1215

原创 Iotdb 0.13配置集群和数据同步共享

1、新开一个xshell窗口,随便连接个服务器,只要这个服务器能给前2台服务器ping通,并且有iotdb就可以。1、iotdb 0.13版本下载(如果已安装请跳过),进入opt目录并下载。如果出现这种情况不用管,是因为集群后其他节点没有启动所抛出了个连接超时异常。至此iotdb集群配置完成,其他集群跟这个配置一样,但需要修改。是所有集群的IP和iotdb的端口,多个集群以英文逗号隔开。是当前服务器的本机IP,并修改如下配置。机器查看数据是否同步和写入。数据成功写入并同步,至此完。插入成功,并且有数据。

2023-08-02 10:43:38 901 1

原创 MySQL 双主配置

同样,当Slave_IO_Running: Yes Slave_SQL_Running: Yes 都为yes表示同步成功。在130中创建数据库, 在132查看数据库生成了,在132的库中插入表 ,130中有数据表了。两台MySQL服务器双方Ping通,且3306端口telnet互通。1、操作基本相同,查看132 MySQL的状体信息。1、先查看130 MySQL的状体信息。2、在第二台机器(132)上操作。2、在第二台机器(130)上操作。1、登录MySQL后配置账户。2、查看MySQL用户信息。

2023-07-31 10:17:10 362

原创 Keepalived 在CentOS 7安装并配置监听MySQL双主

指明Keepalived配置文件存放位置,必须放在/etc下面,为了后续Keepalived启动关闭不报错)执行完上面命令之后,这时候Keepalived目录里面多了个Makefile的文件,这时候我们可以进行安装了。有两种下载方式,一种为yum源下载,另一种通过源代码下载,本文章使用源代码编译下载。在外部平台下载好的软件包上传至linux系统,然后进行解压(此处解压是源码包)如果出现下面错误,则还是缺少openssl和openssl-devel包。:指明Keepalived的安装位置,

2023-07-28 16:10:26 767

原创 SpringCloud gateway调用openFeign抛出@org.springframework.beans.factory.annotation.Autowired(required=t

网关层进行统一鉴权和认证的过程中,需要远程调用鉴权服务器的接口进行鉴权的操作。但是在采用 OpenFiegn 进行远程调用的过程中,出现了如下的报错堆栈,导致了远程调用失败。堆栈分析:HttpMessageConverters 没有被注入到容器中管理。新提供的注解,它的作用是按照一定的条件进行判断,满足条件给容器注册。于是自己在配置文件中,直接复制源码的。中没有发现异常,于是开始查看是否存在。

2023-06-08 17:10:35 555

原创 Hexo 搭建博客并推送GitHub

拉到文件末尾,填上如下配置。创建好后可以在你的仓库里新建一个index.html,里面可以随意输入几个字符,保存。1、首先要注册一个Github账号,新建一个name.github.io的仓库,也就是new repository。稍等一会,在浏览器访问网址: https://你的用户名.github.io 就会看到你的博客啦!到了最后一步,需要将本地的博客项目(自己新建那个blog文件夹)部署到Github就好了。选择仓库的settings选项,在菜单栏找到pages,这样就能得到你的博客地址了。

2023-06-01 16:49:20 672

原创 Nginx 配置访问http默认跳转https

Nginx 可通过多种方式实现 http 跳转 https,以下列出各种方式的实现方法。

2023-05-26 10:18:32 607

原创 kafka 设置用户密码和通过SpringBoot测试

这篇配置Kafka账号密码的,看不会就是看不起我i Kun

2023-05-24 10:20:03 7070 1

原创 SpringBoot 整合 ES 进行各种高级查询搜索

elasticsearch中的内部对象无法按预期工作,这里的问题是elasticsearch(lucene)使用的库没有内部对象的概念,因此内部对象被扁平化为一个简单的字段名称和值列表。值得我们注意的是在进行聚合操作的fild上,如果我们该字段设置成key或者text,则会出现以下错误。因为本文都是数据的搜索,所以我们需要在我们的es服务器里先插入一些数据以供我们后面使用。由于我们需要频繁的使用map转对象,所以给大家一个比较好用的map转对象方法。有时候,我们需要查询一个。下面开始我们本文的重点。

2023-05-17 14:30:00 2475

原创 Elasticsearch 安装 ik分词器

以上字段“中国人民共和国万岁”,是主要测试分词故意写错的,纠正“中华人民共和国万岁”,大家可以分词测试。我的es版本是6.8.12的,所以下载的也是对应版本。下载下来的压缩包解压,后重命名文件夹为 ik,放入到。在kibana中测试的ik分词器。插件文件夹下,重启es即可。没安装ik分词器的。

2023-05-17 11:57:41 256

原创 Elasticsearch 安装 Kibana 6.8.12

因为我的Elasticsearch 版本是 6.8.12的,所以兼容情况下,最好下载一样的版本。如果你的es有设置密码,添加如下配置即可,没有可以不设置。,账号密码都是你的es的账号密码。

2023-05-17 11:46:44 225

原创 SpringBoot 使用 Rest api来操作ElasticSearch(使用接口做CRUD)

Service,这里的Service需要继承一个CrudRepository类,,接口名称自定义,跟Jpa类似。上一篇写的只是针对es做普通的CRUD,这次采用接口做CRUD,如果是小白的话,可以查看我以往的ES文章。先调用加入数据接口。

2023-05-17 11:10:33 222

原创 ElasticSearch 同步MySQL数据方案汇总

本文主要对Mysql和ES进行数据同步的常见方案进行了汇总说明。同步双写是最简单的同步方式,能最大程度保证数据同步写入的实时性,最大的问题是代码侵入性太强。异步双写引入了消息中间件,由于MQ都是异步消费模型,所以可能出现数据同步延迟的问题。好处是在大规模消息同步时吞吐量更、高性能更好,便于接入更多的数据源,且各个数据源数据消费写入相互隔离互不影响。基于Mysql表定时扫描同步。

2023-05-16 10:54:43 940

原创 SpringBoot 整合ElasticSearch实现模糊查询,批量CRUD,排序,分页,高亮

创建对应的请求 --> 设置请求(添加规则,添加数据等) --> 执行对应的方法(传入请求,默认请求选项)–> 接收响应结果(执行方法返回值)–> 输出响应结果中需要的数据(source,status等)

2023-05-15 16:52:21 1250 1

原创 ElasticSearch 设置密码

指令交互过程中,会让设置4个用户的密码,设置完重启即可。2、设置密码,进入bin目录下执行命令。,此时浏览器弹出需要密码了。配置文库,写入下面配置。默认账号:elastic。1、修改es根目录下的。

2023-05-12 15:16:14 3509

原创 ElasticSearch 在Windows下安装

你也可以在下面选择你需要的版本。,出现下面画面为成功。

2023-05-11 15:14:53 154

原创 ElasticSearch 安装控制台

时,出现问题(没截图,大概是中间有一段卡了很久,最后说 phantomjs-2.1.1-windows.zip 什么的问题)。参考:https://blog.csdn.net/xyy1028/article/details/126948634。安装Grunt工具,否则项目起不来。解压到ES的安装目录下。安装vue等相关依赖。

2023-04-26 15:50:14 880

原创 ElasticSearch 对应SpringBoot版本号

第二列SpringDataElasticSearch是pom依赖的版本。第三列ElasticSearch是linux上安装的es中间件版本。第五列SpringBoot是pom依赖的版本。

2023-04-26 15:16:20 2021

原创 MyBatis 逻辑删除

在实体类中,将该注解标识在deleted字段上,并在yml文件中对其进行全局配置,即可通过removeById自动实现逻辑删除,使用@Delete即可,不需要再使用@Update手动修改。在配置该注解之前,使用removeById后,查看数据库,会将数据真实删除,数据库中该数据会消失,而在配置后,使用removeById,会只修改deleted字段为1,并且在使用mybatis-plus中的查询方法,如 .list() 等,会让deleted = 1的数据不显示。而注释掉注解和配置后,该方法能够生效。

2023-04-23 14:21:27 850

原创 Mybatis 全局配置文件 mybatis-config.xml

properties resource = "类入类路径下的资源" > < / properties > < properties url = "网络或者磁盘路径" > < / properties >

2023-04-23 13:36:56 706

原创 Jenkins 实现自动化部署

内容是我们修改后的值,说明Jenkins确实重新拉取项目重新部署了,nice啊,以后我们修改完代码后直接提交就可以了,部署就不用管了,是不是很香。我Gitee上的SpringBoot项目地址是:https://gitee.com/colinWu_java/JenkinsTest.git。

2023-04-21 13:55:56 1273

原创 Jenkins 在Windows下安装配置

此时,你要么就升级你的JDK,要么就换一个低版本的jenkins,推荐换一个低版本的jenkins,因为JDK版本升级的话影响太广泛了。1、第一次运行jenkins后,会在C盘的用户目录中,生成一个.jenkins文件夹,进入到该文件夹。如果上面界面等待几秒,还是这个界面,那就是jenkins镜像有问题,按照下面步骤解决。下载支持JDK1.8最后的版本,这个版本以上的都是JDK11,12的。cmd窗口中,会打印密码,直接复制填入即可。镜像有很多种,大家可以自行百度一下。进入目录,运行war。

2023-04-21 13:48:51 1358

原创 Jenkins 升级版本和对应JDK说明

在 2.346.1 本本后就支持 JDK 11、12了。如果不需要,那么就下载支持JDK1.8最后war包即可。在JDK1.8环境下,升级到支持JDK1.8最后的包下,语言默认为中文。3、下载新的war包并替换后,赋予权限。快捷下载war包,只修改版本号即可。2、删除旧版本war包。

2023-04-21 13:22:03 6730

原创 Jenkins 在linux安装配置

不想让jenkins在8080端口启动,那我们就换一个,比如我换成了8087。使用rpm安装,i表示安装,v表示显示安装过程,h表示显示进度。因为我的是centos,所以我选择redhat的长期支持版本。2、我们需要查看linux中的密码,然后继续安装。1、访问地址,http://主机ip:开放端口。1、首先配置文件,写入你JDK的安装路径。安装完成之后就会出现这么几个目录。2、查找JDK安装位置。到这里,安装就结束了。3、执行命令刷新配置。

2023-04-21 10:35:08 1034 1

原创 Java Jvm中的垃圾回收机制

java相较于c、c++语言的优势之一是自带垃圾回收器,垃圾回收是指不定时去堆内存中清理不可达对象。不可达的对象并不会马上就会直接回收, 垃圾收集器在一个Java程序中的执行是自动的,不能强制执行,程序员唯一能做的就是通过调用System.gc 方法来建议执行垃圾收集器,但其是否可以执行,什么时候执行却都是不可知的。这也是垃圾收集器的最主要的缺点。当然相对于它给程序员带来的巨大方便性而言,这个缺点是瑕不掩瑜的。

2023-04-18 14:54:31 711

原创 Jenkins 在Docker中安装

https://blog.csdn.net/xuguxiong/article/details/125661734

2023-04-06 17:45:35 318

原创 Java lock和synchronized有什么区别?

震惊,我只能说震惊!根据当事人不知道叫什么,咱们况且先叫某猫吧!看到这个回答我也是惊掉下巴了,一本正经的回答,还tn的都挺对。天气晴朗,万里无云,我在群中随便了问了个问题。

2023-04-04 17:16:45 119

原创 Java synchronized详解

同步代码块简单来说就是将一段代码用一把锁给锁起来, 只有获得了这把锁的线程才访问,并且同一时刻,只有一个线程能持有这把锁, 这样就保证了同一时刻只有一个线程能执行被锁住的代码。跟Lock对象锁类似,但是synchronized是一个jvm中的函数,自动执行完锁里的任务后自动释放锁。

2023-04-04 11:22:32 484

原创 Java Lock锁使用场景

代码整体没有太大变化,只是在count–前后做了加锁和减锁操作,最后无论代码运行多少次,结果都是0(需要注意的是这里忽略了可见性),没有出现未加锁时的少减情况。首先,需要加锁的资源一定是临界资源,所谓临界资源就是在多线程的情况下,各个线程会进行抢占的资源。如果使用了tryLock(),他会在判断在使用锁的情况下,默认跳过count–操作,最终结果是51。这就是锁的使用场景,无论是数据库锁、java内置锁还是分布式锁,他们的使用场景都大同小异。其中,count就是临界资源,多线程就是我们常说的并发环境。

2023-04-03 16:25:29 805

转载 Java 双亲委派

2、避免核心类被串改:Java的核心API都是通过引导类加载器进行加载的,如果别人通过定义同样路径的类比如java.lang.Integer,类加载器通过向上委托,两个Integer,那么最终被加载的应该是jdk的Integer类,而并非我们自定义的,这样就避免了我们恶意篡改核心包的风险。一个应用程序总是由n多个类组成,Java程序启动时,并不是一次把所有的类全部加载后再运行,它总是先把保证程序运行的基础类一次性加载到jvm中,其它类等到jvm用到的时候再加载。每个类加载器都有一个父加载器。

2023-03-30 22:20:03 98

原创 Java 内存结构和内存模型

新生代(Young Generation)主要是用来存放新生的对象。新生代又被进一步划分为Eden区(伊甸园区)和Survivor区(幸存区,包含空间相等的S0、S1区,或者说From、To区,没有先后顺序,是Copying算法的需要)。大多数情况下,java中新建的对象都是在新生代上分配的,通过Copying算法来进行分配内存和垃圾回收。

2023-03-30 21:29:43 570

原创 SpringBoot @Transactional事务详解

当Java中一个方法内有多次对数据库的增删改查等操作,并且这些操作之间有一些关联关系,如果方法执行一半出问题报错,后面的操作将不会执行,造成数据异常,但是使用了事务以后可以如果中途执行失败,可以回退到方法执行之前,保证数据不出问题。事务要么全部都被执行,要么就全都不被执行,如果有子事务提交失败,那么其他子事务对数据库的操作将被回滚,数据库回到事务提交前的状态;注解,默认会回滚所有事务,前提下,一定要主动抛出异常,否则事务是不会生效的。下面是异常类和子类关系图,@Transactional,不加任何参数时,

2023-03-30 16:22:56 3180 1

nexus-3.15.2-01-linux.zip

官方原版nexus下载: nexus-3.15.2-01-unix.tar.gz 因nexus官网无法下载,希望帮助大家,先用unzip进行解压

2022-04-11

SQL-Front 5.3

轻量级的SQL客户端工具

2022-04-07

java-code-style.xml下载

这个xml文件是用于格式化Java代码插件,可以安装任意Ide上。欢迎大家下载和使用!

2019-09-30

响应式后端Ui框架 amazeUI.zip

这是一款后端管理系统响应式框架,包括了一些表格表单等等功能。

2019-09-22

C# winform利用socket实现聊天功能

C# winform利用socket实现聊天功能

2019-03-08

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除