9 木子叶

尚未进行身份认证

我要认证

暂无相关简介

等级
TA的排名 7w+

mysql事务,select for update,及数据的一致性处理

mysql事务,select for update,及数据的一致性处理在MySQL的InnoDB中,预设的Tansaction isolation level 为REPEATABLE READ(可重读)在SELECT 的读取锁定主要分为两种方式:SELECT … LOCK IN SHARE MODESELECT … FOR UPDATE这两种方式在事务(Transaction) 进行当中SELECT 到同一个数据表时,都必须等待其它事务数据被提交(Commit)后才会执行。而主要的不同在于LOC

2020-09-11 15:18:24

MySQL乐观锁与悲观锁

悲观锁悲观锁(Pessimistic Lock),顾名思义,就是很悲观,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会block直到它拿到锁。悲观锁:假定会发生并发冲突,屏蔽一切可能违反数据完整性的操作。Java synchronized 就属于悲观锁的一种实现,每次线程要修改数据时都先获得锁,保证同一时刻只有一个线程能操作数据,其他线程则会被block。乐观锁乐观锁(Optimistic Lock),顾名思义,就是很乐观,每次去拿数据的时候都认为别人

2020-09-11 15:06:34

MySQL分区和分表的概念

文章目录一、概念二、分区1.分区的类型:2.分区管理3.分区应该注意的事项:三、分表1.垂直分表2.水平分表(1)按时间结构(2)按版块结构(3)按哈希结构一、概念1.为什么要分表和分区?日常开发中我们经常会遇到大表的情况,所谓的大表是指存储了百万级乃至千万级条记录的表。这样的表过于庞大,导致数据库在查询和插入的时候耗时太长,性能低下,如果涉及联合查询的情况,性能会更加糟糕。分表和表分区的目的就是减少数据库的负担,提高数据库的效率,通常点来讲就是提高表的增删改查效率。2.什么是分表?分表是将一个大

2020-09-11 12:15:29

Oracle基础知识总结

文章目录Oracle基础知识总结一、基础知识(DML)1、Select语句2、Order By 、Group By子句3、Distinct子句4、Where子句5、And子句6、Or子句7、 Fetch子句OFFSET子句FETCH子句8、IN子句9、Between子句10、Like子句通配符2、Insert语句3、Update语句4、Delete语句二、DDL语句1、数据库创建2、数据库删除3、创建表4、修改表5、删除表6、截断表(彻底释放表占用空间)7、闪回8、约束9、视图三、索引1、建设原则2、创建索

2020-09-10 22:47:22

MySQL高性能优化规范建议

文章目录一、数据库命令规范二、数据库基本设计规范三、数据库字段设计规范四、索引设计规范常见索引列建议如何选择索引列的顺序索引SET规范五、数据库SQL开发规范六、数据库操作行为规范超100万行的批量更新操作,要分批多次进行操作对于大表使用pt-online-schema-change修改表结构。禁止为程序使用的账号赋予super权限对于程序连接数据库账号,遵循权限最小原则一、数据库命令规范所有数据库对象名称必须使用小写字母并用下划线分割。所有数据库对象名称禁止使用mysql保留关键字(如果表名中包含

2020-09-10 21:50:33

Linux打包与压缩命令

打包与压缩的概念及区别在讲解具体的归档命令和压缩命令之前,先来了解一下归档和压缩所各自代表的含义。归档,也称为打包,指的是一个文件或目录的集合,而这个集合被存储在一个文件中。归档文件没有经过压缩,因此,它占用的空间是其中所有文件和目录的总和。和归档文件类似,压缩文件也是一个文件和目录的集合,且这个集合也被存储在一个文件中,但它们的不同之处在于,压缩文件采用了不同的存储方式,使其所占用的磁盘空间比集合中所有文件大小的总和要小。压缩是指利用算法将文件进行处理,已达到保留最大文件信息,而让文件体积变小的目的。

2020-09-09 20:15:56

Linux 开关机命令

shutdown 命令可以用来进行关机程序,并且在关机以前传送讯息给所有使用者正在执行的程序,shutdown 也可以用来重开机。命令语法参数说明shutdownshutdown [-t seconds] [-rkhncfF] time [message]–-t seconds设定在几秒钟之后进行关机程序–-k并不会真的关机,只是将警告讯息传送给所有只用者–-r关机后重新开机(重启),示例: 立刻重启shutdown -r now–-h关机

2020-09-09 17:48:32

Linux 系统管理命令

命令说明示例stat显示指定文件的相关信息,比ls命令显示内容更多stat 1.txt 显示1.txt文件的详细信息who显示在线登录用户hostname显示主机名称uname显示系统信息top显示当前系统中耗费资源最多的进程 相当于windows中的任务管理器ps显示瞬间的进程状态ps aux显示当前系统进程的详细信息(也可以使用ps -ef),“ps aux 竖线 grep geo-” (markdown在表格中打不出竖线) ...

2020-09-09 17:32:37

Linux操作目录和文件的常用命令

命令说明参数说明示例ll管理员权限下,查看下级所有文件和目录列表的详细信息ls显示文件和目录列表 ls [-alrtAFR] [name…]-l 列出文件详细信息,-a 包含隐藏文件ls 查看下级目录和文件名称 ; ls -al 查看下级目录和文件的详细信息 ; ls -al test 查看test文件夹的下级目录及文件的详细信息。mkdir创建目录 mkdir [-p] dirName-p 父目录不存在情况下先生成父目录mkdir -p ptest...

2020-09-09 16:02:18

Linux的目录挂载详解

挂载的基本概念前面讲过,Linux 系统中“一切皆文件”,所有文件都放置在以根目录为树根的树形目录结构中。在 Linux 看来,任何硬件设备也都是文件,它们各有自己的一套文件系统(文件目录结构)。因此产生的问题是,当在 Linux 系统中使用这些硬件设备时,只有将Linux本身的文件目录与硬件设备的文件目录合二为一,硬件设备才能为我们所用。合二为一的过程称为“挂载”。挂载,指的就是将设备文件中的顶级目录连接到 Linux 根目录下的某一目录(最好是空目录),访问此目录就等同于访问设备文件。纠正一个误

2020-09-08 18:54:50

Linux的文件目录结构

学习 Linux,不仅限于学习各种命令,了解整个 Linux 文件系统的目录结构以及各个目录的功能同样至关重要。使用 Linux 时,通过命令行输入 ls -l / 可以看到,在 Linux 根目录(/)下包含很多的子目录(称为一级目录),例如 bin、boot、dev 等。同时,各一级目录下还含有很多子目录(称为二级目录),比如 /bin/bash、/bin/ed 等。Linux 文件系统目录总体呈现树形结构,/ 根目录就相当于树根。由于 Linux 系统免费开源,使得 Linux 发行版本有很多,利

2020-09-08 18:33:26

dependencyManagement与dependencies区别

dependencyManagement与dependencies区别  最近在阅读maven项目代码时,dependencyManagement与dependencies之间的区别不是很了解,现通过项目实例进行总结:项目epps-demob-pom下有一个模块是epps-demob-war。一、dependencyManagement应用场景  为了项目的正确运行,必须让所有的子模块使用依赖项的统一版本,必须确保应用的各个项目的依赖项和版本一致,才能保证测试的和发布的是相同的结果。在我们项目顶

2020-07-16 10:27:23

Spring Boot 日志集成 Logging 入门

摘要: 原创出处 http://www.iocoder.cn/Spring-Boot/Logging/ 「芋道源码」欢迎转载,保留摘要,谢谢!1. 概述 2. 快速入门 3. 动态修改日志级别 4. 调试模式 5. 日志分组 6. 不同环境下的日志配置 7. Logback 扩展 8. 集成 Log4j2 9. 访问日志 666. 彩蛋本文在提供完整代码示例,可见https://github.com/YunaiV/SpringBoot-Labs的lab-37目录。原创不...

2020-07-15 21:25:37

Mybatis出现异常java.lang.NullPointerException的解决办法

在使用Mybatis过程中,经常会遇到java.lang.NullPointerException的错误。错误效果如下:2020-07-10 12:03:31.038 DEBUG 12640 --- [ main] org.mybatis.spring.SqlSessionUtils : Releasing transactional SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@1e2db

2020-07-10 12:23:18

Spring配置中的“classpath:“与“classpath*:“的区别

概念解释及使用场景:classpath是指WEB-INF文件夹下的classes目录。通常我们一般使用这种写法实在web.xml中,比如spring加载bean的上下文时,如下:<!--系统自动加载文件--><!--这里使用的是classpath*:的形式--><context-param> <param-name>contextConfigLocation</param-name> <param-va.

2020-07-08 21:09:35

@RestControllerAdvice @ControllerAdvice注解无效 通用异常处理

简单记录下,今天打算写一个公共异常处理切面,主要是将所有抛出的异常拦截,然后返回给前端的时候,统一是错误码,错误原因等。防止直接在前端抛出错误。@RestControllerAdvice 或者 @ControllerAdvice 可以直接作为错误处理的切面对待。但是使用过程中发现这两个注解无效,原因是我将GlobalExceptionHandler定义在另一个包里面,@SpringBootApplication无法自动加载到该注解(springboot启动类的默认扫描路径是该类所在的包下面的所有jav.

2020-07-07 22:36:23

Error creating bean with name ‘tomcatServletWebServerFactory‘ defined in class path resource

启动报错:Error creating bean with name ‘tomcatServletWebServerFactory’ defined in class path resource。springframework.context.ApplicationContextException: Unable to start web server; nested exception is org.springframework.beans.factory.BeanCreationException:

2020-07-04 16:14:58

Nginx 413 Request Entity Too Large,文件上传过程中的问题

在上传时nginx返回了413错误,查看log文件,显示的错误信息是:”413 Request Entity Too Large”。以下介绍处理办法。1 处理方式如下1.打开nginx配置文件 nginx.conf, 路径一般是:/etc/nginx/nginx.conf,或者/usr/local/nginx。2.在http{}段中加入 client_max_body_size 20m; 20m为允许最大上传的大小。(设置超过20m可能无效)3.同时,还需要设置client_body_buff.

2020-07-02 15:21:50

【单点登录sso】一、单点登录原理与简单实现

(2017-09-22更新)GitHub:https://github.com/sheefee/simple-sso一、单系统登录机制1、http无状态协议  web应用采用browser/server架构,http作为通信协议。http是无状态协议,浏览器的每一次请求,服务器会独立处理,不与之前或之后的请求产生关联,这个过程用下图说明,三次请求/响应对之间没有任何联系  但这也同时意味着,任何用户都能通过浏览器访问服务器资源,如果想保护服务器的某些资源,必须限制浏览器请求;要限制浏览器

2020-06-28 23:29:42

lambda expression中的值传递以及匹配返回

1、lambda表达式中的值传递(1) Lambda与匿名内部类在访问外部变量时,都不允许有修改变量的倾向,即若:final double a = 3.141592;double b = 3.141592; DoubleUnaryOperator anotherDoubleUnaryOperator = x -> { a = 2; // ERROR b = 3; // ERROR return 0.0; };则报错:Cannot assign a va

2020-05-21 16:04:20

查看更多

勋章 我的勋章
  • 阅读者勋章Lv1
    阅读者勋章Lv1
    授予在CSDN APP累计阅读博文达到3天的你,是你的坚持与努力,使你超越了昨天的自己。
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv3
    勤写标兵Lv3
    授予每个自然周发布7篇到8篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。
  • 学习力
    学习力
    《原力计划【第二季】》第一期主题勋章 ,第一期活动已经结束啦,小伙伴们可以去参加第二期打卡挑战活动获取更多勋章哦。