- 博客(68)
- 收藏
- 关注
原创 MySQL中DROP、TRUNCATE和DELETE
操作影响范围删除方式事务支持性能触发器外键约束支持自动增长重置可恢复性DELETE删除表中的数据逐行删除支持较慢支持支持不重置可回滚TRUNCATE删除表中的所有数据批量删除不支持较快不支持不支持重置不可回滚DROP删除整个表删除表及数据不支持非常快不支持不支持无不可回滚。
2025-11-08 20:48:53
715
原创 MySQL 数据库连接池爆满问题排查与解决
在实际的应用开发中,我们可能会遇到 MySQL 数据库连接池爆满的情况。这种情况会严重影响系统的性能,导致响应时间急剧增加。本文将详细介绍如何排查和解决 MySQL 数据库连接池爆满的问题。
2025-11-08 20:26:41
643
原创 MS SQL Server 实战 统计与汇总重复记录
如图可以看出,统计汇总结果清晰的反映出了重复记录的情况,即 count(title)>1 的 ct 字段值,值大于1 的表示该题目出现的个数。另外命令结果增加了4个行,包括单选题统计共 248 题,多选题统计共 113 题,判断题统计共 293 题,总数统计共 654 题。主要是通过 case when 语句对 title 字段进行判断 ,为NULL值的表示汇总行,则进行 isnull(etype,‘总数’)+‘统计情况:’ 的字符串拼接,etype字段为 NULL 值的表示总数的统计行。
2025-11-08 20:04:23
797
原创 Java 进阶之路:探索更强大的编程世界
在编程的浩瀚海洋中,Java 如同一艘坚固的巨轮,引领着开发者们驶向创新与高效的彼岸。当我们掌握了 Java 的基础知识后,进阶之旅便悄然开启。
2025-11-08 16:34:48
785
原创 5分钟快速搭建一个 SpringBoot3 + MyBatis-Plus 工程项目
刷新后,在工程名 + Application的文件中可以启动这个。创建SpringBoot工程,这里有两种方式可选,一种是使用。为了测试是否配置成功,我们创建数据库mybatis。来检查是否连接成功,如下图所示,连接成功。在下方的终端输出可以看出,项目启动在。创建该项目的spring配置文件,在。在下方的终端输出可以看出,项目启动在。是用于简化类开发,修改后,记得更新。,没有修改配置需求时可以不写东西。最后,和自动创建一样,创建一个。等待项目创建完成,修改。自动创建,一种是通过。文件,配置数据库连接。
2025-11-08 16:00:32
302
原创 PostgreSQL 查看数据库及表中数据占用空间大小
指定OID或名的表或索引,通过指定fork(‘main’,‘fsm’ 或’vm’)所使用的磁盘空间。指定表OID或表名的表使用的磁盘空间,除去索引(但是包含TOAST,自由空间映射和可视映射)指定表OID或表名使用的总磁盘空间,包括所有索引和TOAST数据。, ‘main’)的缩写。关联指定表OID或表名的表索引的使用总磁盘空间。存储一个指定的数值需要的字节数(可能压缩过)指定OID的数据库使用的磁盘空间。指定OID的表空间使用的磁盘空间。指定名称的数据库使用的磁盘空间。指定名称的表空间使用的磁盘空间。
2025-11-07 16:31:49
441
原创 MySQL:数据查询-limit
LIMIT` 是 MySQL 中一个非常实用和强大的功能,能够帮助控制查询结果的行数,适用于各种场景,尤其是数据分页和结果集限制。对于大多数涉及大量数据的查询来说,合理地使用 `LIMIT` 可以显著改善性能。
2025-11-07 15:51:05
287
原创 MySQL——表的约束
真正约束字段的是数据类型,但是数据类型约束很单一,需要有一些额外的约束,更好的保证数据的合****法性。表的约束:表中一定要有各种约束,通过约束,让我们未来插入数据库表中的数据是符合预期的。约束的本质是通过技术手段,倒逼程序员去插入正确的数据。约束的最终目的,就是保证数据的完整性和可预期性。非空约束有两个值:null(默认的)和not null(不为空)。数据库中默认创建的字段,如果不添加非空约束,基本都是可以为空,但是实际开发时,有些字段可能被要求必须添加数据,因此必须设置为非空。同时应该尽可能保证字段不
2025-11-07 15:09:45
644
原创 Linux系统离线部署MySQL详细教程(带每步骤图文教程)
使用sftp工具上传到/usr/local目录上在/usr/mysql/目录下groupadd mysql #创建用户组# -r 参数表示mysql 用户是系统用户,不可用于登录系统;# -g 将用户mysql添加到用户组mysql中chown -R mysql /usr/local/mysql/ # 将文件的所有属性改为mysql用户chgrp -R mysql /usr/local/mysql/ # 将组属性改为mysql组mkdir -p /data/mysql #创建数据目录。
2025-11-07 14:28:11
714
原创 idea创建springBoot的五种方式
使用jar包创建就行,也是maven项目,jdk选1.8,但是下面的java没有8的,没关系,先选上,后面创建成功了再改。最后一种就是自己先创建一个普通的maven项目,然后自己手动搭建成一个springboot项目。点创建之后他会生成一个压缩包,然后解压,用idea打开就行了。其他选择跟第一种一样,不过这里jdk有8的版本了。也是下载成一个压缩包,然后解压,用idea打开。idea直接从spring.io官网下载。都选择好之后点获取代码,选下载就行。idea从阿里云官网下载。从spring官网上下载。
2025-11-07 12:40:00
300
原创 【SQL】Delete使用
子查询(Sub Query)或称为内查询(Inner Query)、嵌套查询(Nested Query),是SQL语言中一种常用的程序模块,用于在一个查询语句中嵌套另一个查询语句。当一个查询的结果是另一个查询的条件时,这个查询就被称为子查询。子句可以包含各种条件,这些条件可以基于一个或多个列的值。可以直接作笛卡尔积,比较id大小和电子邮箱,删除所有id较大且相同的电子邮箱。编写解决方案删除所有重复的电子邮件,只保留一个具有最小id的唯一电子邮件。id 是该表的主键列(具有唯一值的列)。
2025-11-06 15:42:40
534
原创 【Oracle11g SQL详解】INSERT INTO 的用法及插入数据注意事项
是向表插入数据的核心 SQL 语句,适用于单行插入、批量插入以及基于查询的插入。语句用于向表中插入数据,是数据写入操作中最常用的 SQL 语句之一。块或外部数据工具(如 SQL*Loader)实现批量插入。列的顺序必须与提供的值一一对应,否则可能出现错误。实现批量插入,但不支持单条语句直接插入多行。当需要插入某些列的默认值时,可以使用子查询。插入的值类型与列定义类型不匹配。在 Oracle 11g 中,的方式将查询结果插入目标表。确认新插入的数据主键是否唯一。检查并转换插入数据的类型。插入了重复的主键值。
2025-11-06 15:19:24
235
原创 【MySQL】CAST()在MySQL中的用法以及其他常用的数据类型转换函数
这在处理不同类型的数据时非常有用,比如将字符串转换为数字,或者将浮点数转换为整数等。函数在数据处理和转换中非常有用,尤其是在数据导入和报告生成时,可以确保数据类型的正确性和一致性。可以用于将字符串转换为日期时间,或者在转换时指定不同的字符集。: 返回参数的符号,-1 表示负数,0 表示零,1 表示正数。这些函数可以在不同的场景下使用,以实现数据类型的转换和处理。类似,但语法略有不同,并且可以用于转换为不同的数据类型。指定了小数点前的位数为 10,小数点后的位数为 2。: 将整数转换为二进制字符串。
2025-11-06 14:56:09
311
原创 Windows下redis安装
进入Redis安装包目录,安装服务:redis-server.exe --service-install redis.windows.conf --service-name redisserver1 --loglevel verbosewin+r -> services.msc,可以看到服务安装成功。
2025-11-06 14:32:40
416
原创 SQL中如何添加数据
INSERT INTO e_student SET id = 2, name = ‘李四’, age = 8, grade = ‘三年级’;| 1 | 张三 | 6 | 一年级 || 1 | 张三 | 6 | 一年级 || 1 | 张三 | 6 | 一年级 || 2 | 李四 | 8 | 三年级 || 1 | 张三 | 6 | 一年级 || 2 | 李四 | 8 | 三年级 || 2 | 李四 | 8 | 三年级 |
2025-11-06 14:09:10
733
原创 PostgreSQL异常:An IO error occurred while sending to the backend
在使用PostgreSQL。
2025-11-05 13:11:50
144
原创 nginx简单命令启动,关闭等
方法一:(1)输入nginx命令 nginx -s stop(快速停止nginx) 或 nginx -s quit(完整有序的停止nginx),这两个命令的区别在于nginx -s stop是快速停止Nginx,而nginx -s quit是有序的停止Nginx,前者可能会导致数据没有完全保存;方法二可以直接在cmd命令面板上使用,当第一种方法无效时可以尝试使用此方法,方法二适用于大部分版本的Nginx,但是个别版本的可能不实用,使用taskkill就可解决。注意:方法一必须要在Nginx的安装包目录下。
2025-11-05 12:48:20
252
原创 MySQL:顿悟了,添加索引时竟然不锁表?
在 MySQL 数据库中,“锁表” 指的是对数据库表进行锁定,以控制对表中数据的并发访问。锁表是数据库管理系统(DBMS)用来维护数据一致性和完整性的一种机制。当某个事务(Transaction)或操作需要对表中的数据进行修改(如 INSERT、UPDATE、DELETE)时,它可能会请求锁定该表或表的一部分,以防止其他事务同时访问或修改相同的数据,从而导致数据不一致或冲突。那么,在创建索引时一定会锁表吗?
2025-11-05 12:25:09
249
原创 Mysql官网下载Windows、Linux各个版本
查看箭头位置,高级选项,可自定义位置,软件安装路径和数据存储路径,根据自己需求改,这块我就默认了,我是虚拟机建项目,一个虚拟机一个项目,继续点击Next。第二个就是很多人用,会部署很多应用,比如MongDB、Redis、ES等等,占用很大的内存。最后一步,进行MySQL的配置,开始启动服务,创建配置文件等一系列操作,点击Excute。选择想要的下载类型后,点击后面的下载Download,在选择这个,就可以下载了。新增的文件存储插件,有需要可以添加,默认不选,继续Next。
2025-11-05 12:02:22
266
原创 MySQL——表操作及查询
MySQL的操作中,一些专用的词无论是大写还是小写都是可以通过的。"[]"表示可有可无,插入时,如果不指定要插入的列,则表示默认全部列都要插入数据,插入数据的顺序必须和列的顺序一致。如果插入单行数据,则只需一个"()“,如果想要多行插入,则可以同时追加多个”()"。此外,由于主键或者唯一键对应的值已经存在而导致插入失败,则可以更新数据:除这条语句之外,还有一条语句,名为替换,也可以解决主键或唯一键冲突问题:如果没有发生冲突,就相当于直接插入,如果发生冲突,则删除原有数据,重新插入新数据。全列查询指定列查询查
2025-11-05 11:39:08
330
原创 PhpStorm下载、安装、配置教程
前面的文章中,都是把.php文件放在WampServer的www目录下,通过浏览器访问运行。这篇文章就简单介绍一下PhpStorm这个php集成开发工具的使用。
2025-11-04 22:53:51
362
原创 MySQL中between and的基本用法、范围查询
是支持数值查询的,当字段类型是数值时 between A and B等同于>=A and <=B。not between and表示指定范围之外的值。not between A and B相当于 < A or >B。从上面示例可以看出,还有两条数据时间是在2024-10-30日范围内,但是并没有被查询出来。当between and用于数值查询时,常用于字段类型为int、decimal等。当查询时间范围时要注意可能会遇到时间精度问题,具体参考下面示例。示例:查询年龄不在24到25之间的用户。
2025-11-04 12:49:32
372
原创 MacOS升级ruby版本
但是如果我们使用“ruby -v”查看版本,发现使用的还是MacOS自带ruby版本是2.x。homebrew安装的ruby版本号可以通过“brew info ruby”命令参看。MacOS自带ruby版本是2.x,可以通过“ruby -v”查看版本号。如果没有安装,可以“brew install ruby”进行安装。或者通过“brew install ruby”进行升级。再次使用“ruby -v”查看一下版本。
2025-11-04 12:01:58
119
原创 IDEA搭建SpringBoot,MyBatis,Mysql工程项目
构建一个基于Spring Boot框架的现代化Web应用程序,以满足[公司/组织名称]对于[业务需求描述]的需求。通过利用Spring Boot简化企业级应用开发的优势,实现一个高效、可扩展且易于维护的应用系统。提高效率:通过集成微服务架构模式,减少系统的复杂度,并加速开发周期。增强用户体验:提供一个响应迅速、界面友好且功能齐全的用户交互平台。确保数据安全:实施严格的数据保护措施,保障用户信息安全。支持跨平台访问:设计RESTful API接口,确保应用程序可以在多种设备上无缝运行。
2025-11-04 11:15:12
655
原创 SQL Server Management Studio的使用
2.创建数据库:右键单击"数据库" --> 新建数据库:输入数据库名称,如Info,点击确定,如下图所示:可通过右键单击Info选择"属性"来修改数据库;(3).CHECK约束:限制表中列的值,确保数据的完整性和准确性。7.查询:右键单击数据库名Info,选择"新建查询",输入SQL语句,查询age>=20的所有内容,然后点击"执行",结果如下图所示。(2).删除列:单击表"dbo.student":右键单击要删除的列,然后选择"删除列",保存即可。(3).删除:选中要删除的行,右键单击:选择"删除"。
2025-11-03 13:15:07
366
原创 SpringBoot接口防抖(防重复提交),接口幂等性,轻松搞定
接口幂等性是指在分布式系统中,对于相同的请求,无论请求多少次,都应该返回相同的结果。这意味着,如果请求已经处理完毕,那么重复请求应该返回相同的响应,而不应该产生额外的副作用。这种特性对于确保系统的稳定性和一致性非常重要,尤其是在处理并发请求和网络异常的情况下。在编程中,可以通过一些特定的设计来实现接口幂等性,例如使用全局唯一的ID来标记请求,或者使用乐观锁机制来防止重复处理等。
2025-11-03 12:27:40
930
原创 Spring Cloud GateWay搭建
注册中心,常用的有:Eureka、Consul、Zookeeper、Nacos,此处要明白一点是注册中心本身就是一个服务,所以对注册中心而言,不仅仅局限于java编写的,也存在于是其他语言编写,本质是一个server软件,只需要满足注册中心的功能即可。注册中心服务已启动完毕,接下来启动两个微服务作为注册中的client。针对两个服务各自创建两个控制层接口,顺便在配置文件中定义下服务的请求上下文路径。简单搭建一个,有注册中心,两个微服务,一个网关的组成的微服务架构。此时证明我们的注册中心服务以启动完毕!
2025-11-03 11:41:55
312
原创 Redis主从配置
#修改redis-slave1.conf redis-slave2.conf 设置“跟从”----127.0.0.1 6381(可以理解为从库指定主库)#分别打开对应文件添加主库的ip地址和端口 如果有密码则设置密码(需要注意我这里密码是123456和直接6380里面不一样)在启动从库时候可以看到控制台打印的信息已经连接了对应端口的主库。主从配置:在多个redis实例建立起主从关系,当。通过主从配置可以实现redis数据的备份(通过主从配置还可以实现redis的读写分离。的备份),保证数据的安全性;
2025-11-03 10:55:42
225
原创 Nginx环境安装
双击nginx目录下的nginx.exe应用程序,一般情况下,会有一个黑色的弹窗一闪而过,这就代表启动成功了。直接输入 nginx 或者 start nginx,然后回车,就可以启动nginx了。Nginx的配置文件是在conf目录下的nginx.conf文件。Nginx默认端口是80,可通过配置文件查看,(最好修改一下)#1查看Nginx安装路径whereis nginx。在nginx安装目录的绝对路径的框框内输入 cmd。关闭nginx的命令:nginx -s stop。# 启动Nginx服务。
2025-11-03 10:09:47
236
原创 MySQL如何删除binlog日志文件
1、使用命令手动在操作系统中删除,但是这种删除并没有从数据库逻辑层面删除,数据库里还记录着这条日志,可能会有一些问题。2、使用SQL命令删除,该命令执行成功后,Linux系统中的binlog物理文件也会被删除。然后重启数据库服务,数据库就会自动删除7天前的binlog日志。登录到数据库中,查询binlog日志文件信息。MySQL如何删除binlog日志文件呢?2> 删除某个日期前的binlog日志文件。3> 删除某天前的binlog日志文件。1> 删除单条binlog日志文件。
2025-11-03 09:17:46
151
原创 湖仓一体架构解析:数仓架构选择(第48天)
本文解析了Lambda 架构,Kappa 架构,湖仓一体架构,流批一体架构,以及在大数据场景中,如何选择架构。
2025-11-02 16:47:32
369
原创 开放自己本机的mysql允许别人连接
需要在左下角搜索记事本应用,右键以管理员身份运行,之后按照上述地址找到my.ini文件,ctrl+F搜索到[mysqld],修改或添加 bind-address 设置,将其更改为 0.0.0.0 或你的计算机的 IP 地址。打开 MySQL 的配置文件 my.ini。username和密码是第3步创建能从远程地址访问的用户和密码,ip地址是ipconfig查看的地址(前提是能ping通,才能连接该地址对应的数据库)。使用 MySQL 命令行连接到自己的数据库,并创建一个能够从远程地址访问的用户。
2025-11-02 16:23:44
307
原创 在Spring Boot项目中使用MySQL数据库
通过本文,你已经了解了如何在 Spring Boot 项目中集成 MySQL 数据库,并通过简单的 API 来管理用户数据。Spring Boot 的简洁性和 MySQL 的强大功能结合,使得开发高效且愉快。
2025-11-02 16:00:02
822
原创 使用Springboot实现MQTT通信
MQTT(Message Queuing Telemetry Transport)是一种基于发布/订阅模型的轻量级消息传输协议,常用于物联网(IoT)场景中。它设计简洁、带宽占用少,非常适合资源受限的设备和网络环境。
2025-11-02 15:34:50
837
原创 【学术会议论文投稿】Spring Boot实战:零基础打造你的Web应用新纪元
在Spring框架的发展历程中,随着项目的规模不断增大,Spring的配置也变得越来越复杂。Spring Boot的出现,正是为了解决这一问题,它基于Spring Framework提供了一套自动配置的解决方案,让开发者能够通过少量的配置快速启动一个Spring应用。
2025-11-02 15:10:05
818
原创 【Redis】设置Redis访问密码
网上查询后的办法:创建redis-server.exe 的快捷方式, 右键快捷方式属性,在目标后面增加redis.windows.conf, 这里就是关键,你虽然修改了.conf文件,但是exe却没有使用这个conf,所以我们需要。疑问: redis目录下有两个配置文件redis.windows.conf和redis.windows-server.conf,看到网上有的人用前者有的人用后者,不清楚到底该用哪一个。命令行设置的密码在服务重启后失效,所以一般不使用这种方式。客户端再重新登录,OK了。
2025-11-02 14:44:28
166
原创 【MySQL】MySQL升级
例:/usr/local/mysql80/bin/mysqld --defaults-file=/data/3306/my.cnf --user=mysql &MySQL的版本更新很快,新版本中往往包含了很多新功能,并且解决了很多旧版本中的BUG,因此在很多情况下用户需要对数据库进行升级。,如果升级到一个比较新的版本,可能会在不知不觉中在你的环境中引入bug或引起性能问题,如果版本过旧,又会有一些旧版本中的BUG。mysql-shell工具,8.0以后,可以调用这个命令,升级之前的预检查。
2025-11-02 14:17:03
578
原创 Windows操作系统部署Tomcat详细讲解
如果修改为小于1024的端口(如80),在Linux和macOS系统中可能需要以管理员权限运行Tomcat,因为这些端口是特权端口。Tomcat是一个开源的Java Servlet容器,用于处理Java Web应用程序的请求和响应。文件中,可以修改Tomcat监听的端口。文件中配置虚拟主机,使得Tomcat能够根据不同的域名来提供不同的Web服务。表示当应用程序的类文件或配置文件发生变化时,Tomcat会自动重新加载应用程序。),当用户访问不同的域名时,Tomcat会根据虚拟主机的配置提供相应的服务。
2025-11-02 13:53:03
632
原创 【spring】Spring事件监听器ApplicationListener的使用与源码分析
Override@AutowiredapplicationEventPublisher.publishEvent(new CustomEvent("自定义事件"));applicationEventPublisher.publishEvent(new CustomEvent("自定义事件"));@Override。
2025-11-01 16:00:45
471
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅