- 博客(135)
- 收藏
- 关注
原创 主从同步binlog
另外我们还需要注意的是,不是所有版本的 MySQL 都。进行主从同步的内容是二进制日志,它是一个文件,在进行网络传输的过程中就一定会存在。主库可以将二进制日志发送给从库,当主库读取事件的时候,会在 Binlog 上加锁,读取完。给客户端,这样做的好处是不会影响主库写的效率,但可能会存在主库宕机,而 Binlog 还。MGR 将 MySQL 带入了数据强一致性的时代,是一个划时代的创新,其中一个重要的原因。从库 SQL 线程会读取从库中的中继日志,并且执行日志中的事件,从而将从库中的数据与。
2024-07-02 18:05:56 676
原创 SQL执行慢排查以及优化思路
我今天梳理了 SQL 优化的思路,从步骤上看,我们需要先进行观察和分析,分析工具的使用在日常工作中还是很重要的。今天只介绍了常用的三种分析工具,实际上可以使用的分析工具还有很多。我在这里总结一下今天文章里提到的三种分析工具。我们可以通过慢查询日志定位执行慢的 SQL,然后通过 EXPLAIN 分析该 SQL 语句是否使用到了索引,以及具体的数据表访问方式是怎样的。我们也可以使用 SHOW PROFILE 进一步了解 SQL 每一步的执行时间,包括 I/O 和 CPU 等资源的使用情况。
2024-07-02 17:46:31 1360
原创 MVCC学习
今天关于 MVCC 的内容有些多,通过学习你应该能对采用 MVCC 这种乐观锁的方式来保证事务的隔离效果更有体会。我们需要记住,MVCC 的核心就是 Undo Log+ Read View,“MV”就是通过 Undo Log 来保存数据的历史版本,实现多版本的管理,“CC”是通过 Read View 来实现管理,通过 Read View 原则来决定数据是否显示。同时针对不同的隔离级别,Read View 的生成策略不同,也就实现了不同的隔离级别。
2024-07-02 17:13:59 650
原创 augular模态框改普通页面
2、需要在js中对应定义params,只有定义了才能使用{{ }}获取。1、改造获取参数 params.validNum。1、需要把模态框子函数改为普通函数。3、子函数改造成普通函数。2、子参数改为普通参数。
2024-06-07 16:22:50 161
原创 Mybatis报错解决
mybatis-spring提供了 MapperScannerConfigurer 这个类,它将会查找类路径下的映射器并自动将它们创建成 MapperFactoryBean。这段配置会扫描 org.mybatis.spring.sample.mapper 下的所有接口,然后创建各自接口的动态代理类。MapperScannerConfigurer 是 spring和mybatis 整合的 mybatis-spring 的jar包中提供的一个类。实际上Mybatis可以自动生成接口对象。
2024-05-11 15:02:46 279
原创 spring使用内置jetty创建提供http接口服务
通过mvc:annotation-driven/配置,Spring MVC会启用对注解的支持,使得可以在控制器类和方法上使用注解来定义请求映射、参数绑定等操作。支持@ResponseBody注解,用于将方法返回值直接作为HTTP响应体返回。如果没有mvc注解支持。支持@PathVariable注解,用于绑定URI模板变量。支持@RequestMapping注解,用于定义请求映射。支持@RequestParam注解,用于绑定请求参数。支持@Controller注解,用于标识控制器类。
2024-03-26 11:57:27 1206
原创 使用dbever连接 hsqldb
注意,hsqldb跟随应用启动和停止,所以当应用断点时,hsqldb也会连接不上导致查询数据失败,可以断点前进一步。jdbc:hsqldb:hsql://ip:端口/别名。
2024-01-16 10:49:14 671
原创 解决渗透测试js文件泄露
2、添加请求头Cache-Control解决首次访问浏览器直接访问硬盘缓存。1、思路:如果是直接url访问js文件,不会有Referer请求头。解决办法:使用过滤器过滤。
2023-11-13 14:40:05 508
原创 JVM常用命令
jstat -gcutil 4364 1000 2000 —查看堆内存占用百分比,每秒打印1次,总共打印2000次。jmap -heap 4364 —查看该进程的堆内存信息。jinfo 4364 —查看该进程虚拟机配置信息。FGCT:老年代垃圾回收消耗时间。S0:幸存1区当前使用比例。S1:幸存2区当前使用比例。YGC:年轻代垃圾回收次数。FGC:老年代垃圾回收次数。GCT:垃圾回收消耗总时间。jps —查看pid。E:伊甸园区使用比例。M:元数据区使用比例。CCS:压缩使用比例。
2023-11-03 14:32:55 468
原创 渗透测试tomcat错误信息泄露解决办法
showServerInfo:如果发生任何错误,用于在错误页面上显示当前服务器标志(默认true)showReport:如果发生错误用于返回错误页面的错误信息和状态码(默认true)1、使用tomcat8.5.16,会重定向非法url到登录url。2、配置server.xml,加上。3.项目web.xml配置。状态码4.1跳转到指定页面。
2023-10-23 17:38:14 1308
原创 springboot1.5升2.6跨域问题
升级2.6后AllowedOrigin不能使用 通配符 * ,而是需要具体的域名或ip端口,如。springboot1.5可以使用。如果需要使用使用通配符,可用。
2023-09-20 10:33:29 134
原创 springboot1.5.12升级至2.6.15
升级心得:大部分报错是因为依赖冲突导致,可以先在网上找到兼容的版本相对应进行升级,或者找到能够正常运行的项目或demo进行对比,之后排除依赖冲突。首先依赖冲突就是一个项目中,使用了不同版本的依赖,那么解决办法就是找到这两个版本的依赖然后排除掉其中一个。方法2:如果方法1排除不掉的话,直接在pom文件中加入依赖冲突的依赖坐标以及项目所需要的依赖版本号。首先,加入springboot升级大版本依赖,会在升级过程中打印出错日志提示(升级完毕可去除)shiro不进入鉴权过滤器,但能进入realm问题。
2023-08-29 11:34:45 710
原创 SynchronousQueue阻塞与ArrayBlockingQueue设置容量为1阻塞的区别
而ArrayBlockingQueue设置容量为1阻塞的地方是在下一次put,也就是说,put一个元素之后还能继续往下执行代码。SynchronousQueue阻塞的地方是在put进去一个元素即阻塞,没办法继续执行,除非。take该队列的元素。
2023-08-21 18:35:16 184
原创 Linux定时任务crontab
执行启动java程序时必须在脚本中加入引入linux服务器本身的环境变量,因为crontab的环境变量跟linux环境变量不一样的,如果不引入读取环境变量,则会导致执行失败。需要首先排查下crond服务是否启动,可使用systemctl status crond 命令查看,如果未启动,则启动即可。定时任务设置的格式正确,手动执行也没问题,但是定时任务就是不执行,这种情况的出现,一般是由下面几个原因造成的。定时任务要执行的脚本中涉及文件路径时,一定要写全局路径,不能写相对路径。
2023-08-19 16:55:34 907
原创 AppScan Unix 文件参数变更漏洞修复
未检查用户输入中是否包含“…”(两个点)字符串,比如 url 为 /login?cookie为Cookie: JSESSIONID=…/webapps/RTJEKSWTN26241;使用AppScan扫描之后可以通过这样的方式进行指定问题手动测试。解决办法:使用过滤器过滤参数以及cookie中的…原因:未对用户输入正确执行危险字符清理。
2023-08-05 12:07:00 1399
原创 Token与Cookie、Session登录机制
session 和 token 本质上是没有区别的,都是对用户身份的认证机制,只是他们实现的校验机制不一样而已(一个保存在 server,通过在 redis 等中间件获取来校验,一个保存在 client,通过签名校验的方式来校验),多数场景上使用 session 会更合理,但如果在单点登录,一次性命令认证上使用 token 会更合适,最好在不同的业务场景中合理选型,才能达到事半功倍的效果。详细跳转。
2023-08-02 14:44:21 1096
原创 常见锁例子
常见的信号量包括二进制信号量(只有0和1两种状态)和计数信号量(可以有多个状态)。自旋锁是一种忙等待的锁机制,线程在获取锁时会循环检查锁是否可用,而不是被阻塞。自旋锁适用于锁的持有时间很短,且线程冲突的概率较低的情况。条件变量用于线程之间的通信和同步,允许线程在某个条件满足时等待或被唤醒。是一种用于多线程编程中的同步机制,用于保护共享资源,防止多个线程同时访问造成数据不一致或竞态条件的情况发生。1、信号量:即设置一个值比如10,多个线程设置每次执行消耗的信号量比如1,则最多只能同时执行10个线程。
2023-07-28 09:52:51 106
原创 IDEA创建目录使用 . 和使用 /
resource目录下如果使用 . 作为分隔符,则不会分层成功,而是把 . 作为该目录名字的一部分,典型的例子就是mybatis接口映射配置文件路径报错。
2023-06-27 15:56:55 763
原创 InfluxDB数据库使用
InfluxDB 使用时需要首先打开Influxd.exe,直接打开会使用默认配置,需要使用已配置的配置文件的话,需要指定conf文件进行启动服务端。InfluxDB 的数据存储主要有三个目录。默认情况下是 meta, wal 以及 data 三个目录,服务器运行后会自动生成。设置需要账号密码登录,输入auth命令回车之后输入账号密码。双击Influx.exe 启动客户端。
2023-06-02 14:26:13 2753 2
原创 windows启动和关闭oracle数据库
sqlplus输入账号密码system/sa$ sqlplus / as sysdba关闭:shutdown immediate启动:startup
2023-05-22 10:20:14 1426
原创 跨域问题理解
这种url携带参数以post方式发送请求属于简单请求,不会出现跨域,而如果使用平常的json方式传参设置content-type,则出现跨域问题。1、简单请求不存在跨域。
2023-05-19 15:27:49 164
两款好用的shiro检测漏洞工具 ShiroExploitV2.5.1 和 shiro-attack-2.2,jdk8亲测可用
2022-12-16
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人