锁升级(Lock Escalation)是指将当前锁的粒度降低。举个例子:数据库可以把一个表的1000个行锁升级为一个页锁,或者将页锁升级为表锁。 如果在数据库的设计中认为锁是一种稀有资源,而且想避免锁的开销,那数据库中会频繁出现锁升级现象。 SQL Server 数据库的设计认为锁是一种稀有的资源 ...
分类:
数据库 时间:
2020-02-15 23:18:32
阅读次数:
91
今天在使用python爬取数据并将其写入mysql数据库时,使用该如下语句: cursor.execute( "insert into comments_p_spider(owner_id,from_name,content,create_time,score,comment_level) valu ...
分类:
数据库 时间:
2020-02-15 22:06:24
阅读次数:
228
配置信息: server: port: 56081 servlet: context-path: /sharding-jdbc-simple-demo spring: application: name: sharding-jdbc-simple-demo http: encoding: enabl ...
分类:
数据库 时间:
2020-02-15 21:52:20
阅读次数:
102
jsbc 数据库的查询 与增删改不一样,查询会返回具体的记录集合,我们使用ResultSet类的实例来接收,接收后,使用实例.next()获取下一条记录,使用对应的getInt()、getDouble()方法来获取一条记录对应的字段值。如下: 关键代码: conn = DriverManager.g ...
分类:
数据库 时间:
2020-02-15 21:46:34
阅读次数:
95
因为不同锁之间的兼容性关系,在有些时刻一个事务中的锁需要等待另一个事务中的锁释放它所占用的资源,这就是阻塞。 阻塞并不是一件坏事,其实为了确保事务可以并发且正常地运行。 在InnoDB存储引擎中, 参数innodb_lock_wait_timeout 用来控制等待时间(默认50秒); 动态参数,可随 ...
分类:
数据库 时间:
2020-02-15 20:35:58
阅读次数:
81
一、JDBC事务 说起事务相信学过数据库同学都有一些印象,在数据库中事务就是一段不可分割的代码,这段代码要么都执行要么都不执行。那么在JDBC中我们是如何创建一个事务的呢? 我们先来看一个例子,假如我有一个银行系统此时老王要给老李转账1000元,这时候我们通常是先判断老王的余额是否大于等于1000, ...
分类:
数据库 时间:
2020-02-15 20:34:47
阅读次数:
77
前两天突然收到运维说某个项目经常死锁,客户反馈操作很卡,我们公司是做的wms(仓储物流管理)系统,卡起来无疑会导致客户的发货效率降低,所以我马上进到服务器检查了死锁情况,发现在下午2点到4点大概每10分钟一个死锁。 我检查是否是性能到瓶颈了导致死锁卡顿,但是并没有看到性能有太大压力,执行缓慢的语句拿 ...
分类:
数据库 时间:
2020-02-15 20:30:27
阅读次数:
127
DbTool 是一个支持 CodeFirst/DbFirst/ModelFirst 的数据库小工具,原本是基于 dotnet framework WinForm 实现的,在 1.1.0 版本更新中使用 dotnet core 3.1 基于 WPF 重写了,并实现了一个简单的基于插件模式开发模式并引入... ...
分类:
数据库 时间:
2020-02-15 18:54:32
阅读次数:
79
一、为什么要分库分表 软件时代,传统应用都有这样一个特点:访问量、数据量都比较小,单库单表都完全可以支撑整个业务。随着互联网的发展和用户规模的迅速扩大,对系统的要求也越来越高。因此传统的MySQL单库单表架构的性能问题就暴露出来了。而有下面几个因素会影响数据库性能: 数据量 MySQL单库数据量在5 ...
分类:
数据库 时间:
2020-02-15 18:31:03
阅读次数:
96
在前面搭建的环境上加上mongodb配置文件,pom.xml增加mongo相关依赖,增加一些代码即可搭建成功。 1、增加mongdb-context.xml和mongodb.properties mongdb-context.xml 1 <?xml version="1.0" encoding="U ...
分类:
数据库 时间:
2020-02-15 18:28:11
阅读次数:
98
1、一致性的非锁定读 一致性的非锁定读(consistent nonlocking read)是指InnoDB存储引擎通过行多版本控制(multi versionning)的方式来读取当前执行时间数据库中行的数据。如果读取的行正在执行DELETE或UPDATE操作,这时读取操作不会因此去等待行上锁的 ...
分类:
数据库 时间:
2020-02-15 18:18:47
阅读次数:
84
什么是事务 在plsql中,我们在执行增删改后,并不会马上写到表中,而是要手动点击一下提交按钮提交按钮(f10),如果不想提交刚才执行的代码,则可以点击回滚按钮(shift+f10)。 提交和回滚在plsql中如图: jdbc事务的用途 在后台项目中,如果没有设置自动提交,则默认为自动提交true。 ...
分类:
数据库 时间:
2020-02-15 18:15:41
阅读次数:
95
步骤一:创建一个数据库 步骤二:配置activemq.xml配置文件 1.在persistenceAdapter加入如下配置 <!--createTablesOnStartup 启动是否创建表 第一次为true 后续为false--> <jdbcPersistenceAdapter dataSour ...
分类:
数据库 时间:
2020-02-15 17:08:50
阅读次数:
118
什么是 数据持久化? 数据持久化其实就是指期望把数据长期存储下来,而这个问题被拆分成很多场合,用这篇记录一下一些细节和过程。 起因 起因 electron vue serialport 使用的 electron vue 基础 vue admin template 在 yarn run dev 下 j ...
分类:
数据库 时间:
2020-02-15 17:06:53
阅读次数:
195
MySQL 的逻辑表达式为真,返回1,为假,返回0;1代表true,0代表false; -- IF(expr1[bool类型], expr2, expr3) 如果 expr1 的值为 true(不为 0 或 null),则返回 expr2,否则返回 expr3。类似于 Java 的三元运算符,ora ...
分类:
数据库 时间:
2020-02-15 15:51:08
阅读次数:
103
mycat的配置 cacheservice.properties:路由缓存相关配置文件 index_to_charset.properties:字符集映射关系 rule.xml:分片规则 schema.xml:逻辑库定义 sequence_conf:sequence配置信息(一般用基于db,time ...
分类:
数据库 时间:
2020-02-15 15:50:08
阅读次数:
96
安装好MySQL、sqlyog,连接成功后, MySQL中创建的一个数据库 db_book : IDEA项目中导入jar包, IDEA项目src目录下创建包,里面创建Java类(demo02.java): package com.reviewjdbc; import java.sql.Connect ...
分类:
数据库 时间:
2020-02-15 15:40:33
阅读次数:
100