![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据库
文章平均质量分 71
人工智
个人记录博客,不推荐阅读
展开
-
【数据库系列】MQSQL历史数据分区
数据库分区原创 2023-03-05 20:21:24 · 788 阅读 · 0 评论 -
「事务一致性」事务afterCommit
事务消息原创 2023-02-21 22:43:38 · 1274 阅读 · 0 评论 -
mysql批量kill某个类型会话
使用GROUP_CONCAT获取KILL脚本。原创 2023-02-09 00:18:04 · 204 阅读 · 0 评论 -
【设计模式篇】设计模式3类23种
设计模式总结原创 2023-01-03 22:29:26 · 495 阅读 · 0 评论 -
【连接池性能之druid】Connection Close的问题,通过配置Druid的泄露检测机制解决
druid转载 2022-12-21 23:08:37 · 5867 阅读 · 1 评论 -
【spring系列】SpringBoot整合Mybatis实现多数据源配置与跨数据源事务实例
多数据源转载 2022-11-30 00:35:28 · 1455 阅读 · 0 评论 -
【数据库之postgreSQL】全文索引之飞快
全文索引原创 2022-11-29 23:17:10 · 1537 阅读 · 1 评论 -
【数据库】Mysql的日志文件说明
mysql日志转载 2022-11-06 23:59:22 · 1005 阅读 · 0 评论 -
「翻译」关系型数据库的工作原理
关系型数据库转载 2022-09-29 23:26:25 · 274 阅读 · 0 评论 -
「中间件系列二」redis缓存
Redis(Remote Dictionary Server) 是一个使用 C 语言编写的,开源的(BSD许可)高性能非关系型(NoSQL)的键值对数据库。Redis 可以存储键和五种不同类型的值之间的映射。键的类型只能为字符串,值支持五种数据类型:字符串、列表、集合、散列表、有序集合。与传统数据库不同的是 Redis 的数据是存在内存中的,所以读写速度非常快,因此 redis 被广泛应用于缓存方向,每秒可以处理超过 10万次读写操作,是已知性能最快的Key-Value DB。另外,Redis...原创 2021-12-05 00:52:58 · 1057 阅读 · 0 评论 -
SpringAOP中通过JoinPoint获取值,并且实现redis注解
在Java8之前,代码编译为class文件后,方法参数的类型固定,但是方法名称会丢失,方法名称会变成arg0、arg1….。在Java8开始可以在class文件中保留参数名public void tet(JoinPoint joinPoint) { // 下面两个数组中,参数值和参数名的个数和位置是一一对应的。 Object[] args = joinPoint.getArgs(); // 参数值 String[] argNames = ((MethodSi转载 2022-02-10 00:00:26 · 4068 阅读 · 0 评论 -
「数据库系列四」分布式数据库CAP理论与最终一致性
传统关系型数据库中事务有四个重要的特性,简称ACID,即原子性: 事务是一个不可分割的工作单位,事务中的操作要么都成功,如果有一个执行失败,所有的SQL将都被撤销,恢复到事务开始的状态 一致性: 事务前后数据的完整性必须保持一致。 例如转账前AB两账户金额之和是2000元,事务结束后,金额之和仍然是2000元 隔离性:当多个用户并发的访问数据库时,数据库为每一个用户开启的事务之间是隔离的,一个事务不能被其他事务的操作所干扰 持久性: 持久性是指一个事务一旦被提交,它对数据库中数据的改变就是...原创 2021-12-05 13:51:49 · 546 阅读 · 0 评论 -
postgresql、mysql数据库varchar、char、text的比较
MYSQL:1、char长度固定, 即每条数据占用等长字节空间;2、varchar可变长度,可以设置最大长度,而varchar只会占用实际字符应该占用的空间+1,并且实际空间+1<=n。3、超过char和varchar的n设置后,字符串会被截断。4、char的上限为255字节,varchar的上限65535字节,text的上限为65535。5、txt在小于216字节的时候,实际空间会+2官方说明: Data Type Storage Req.原创 2021-09-16 23:04:44 · 4899 阅读 · 0 评论 -
如何查看数据库索引的利用率?
数据库性能调优,不止是加索引,索引建多了,会导致索引数据过去庞大,也会严重影响性能。了解索引的利用率可以帮助我们更好处理垃圾索引。1、mysql查看索引利用率:SELECT t.TABLE_SCHEMA, t.TABLE_NAME, INDEX_NAME, CARDINALITY, TABLE_ROWS, CARDINALITY / TABLE_ROWS AS SELECTIVITY FROM information_schema.TABLES t, (S..原创 2021-08-10 22:15:21 · 1327 阅读 · 0 评论 -
PostgreSQL 9.6.0 手册
搜索PostgreSQL 9.6.0 手册PostgreSQL 全球开发组翻译:彭煜玮,瀚高软件及其他贡献者版权© 1996-2016 The PostgreSQL Global Development Group《PostgreSQL9.6.0手册》基于彭煜玮副教授翻译的《PostgreSQL 9.6.0 文档》。"版本说明"中的大部分翻译内容提取自PostgreSQL中国用户会组织翻译的上一个版本《PostgreSQL9.5.3中文手册》。 "版本说明"中9.6...转载 2021-07-03 00:02:56 · 178 阅读 · 0 评论 -
大数据概述(三)
redis,mysql,manggoelasticsearch,hbase,hive对比区别几种数据库对比如下: redis mysql elasticsearch hbase hive 容量/容量扩展 低 中 大 海量 海量 查询时效性 极高 中等 较高 较高 低 查询灵活性 较差 非常好 较好 较差 非常好 写入速度 极快 中等 较快 .原创 2021-06-20 22:57:14 · 118 阅读 · 1 评论 -
postgresql如何优雅地清理磁盘空间碎片VACUUM
第一步:查询哪些表占用空间太大:--数据库中单个表的大小(不包含索引)select pg_size_pretty(pg_relation_size('表名'));--查出所有表(包含索引)并排序SELECT table_schema || '.' || table_name AS table_full_name, pg_size_pretty(pg_total_relation_size('"' || table_schema || '"."' || table_name || '"')) A原创 2021-02-21 15:30:43 · 8779 阅读 · 0 评论 -
MyBatis中使用#{}和${}的区别
1 2 3 select * from table_name where id=#{id}; select * from table_name where id=${id}; 区别:在动态SQL解析阶段,#{}会被解析为JDBC预编译语句的参数标记符(占位符),例如上面的#{}语句将被解析为: 1 select * from table_name where id=? ; 而$...转载 2020-12-29 21:57:52 · 255 阅读 · 0 评论 -
MySql分表、分库、分片和分区知识(转载)
一、前言 数据库的数据量达到一定程度之后,为避免带来系统性能上的瓶颈。需要进行数据的处理,采用的手段是分区、分片、分库、分表。二、分片(类似分库) 分片是把数据库横向扩展(Scale Out)到多个物理节点上的一种有效的方式,其主要目的是为突破单节点数据库服务器的 I/O 能力限制,解决数据库扩展性问题。Shard这个词的意思是“碎片”。如果将一个数据库当作一块大玻璃,将这块玻璃打碎,那么每一小块都称为数据库的碎片(DatabaseShard)。将整个数据库打碎的过程就叫做分片,可...转载 2020-12-03 22:09:21 · 278 阅读 · 0 评论 -
Mysql中,21个写SQL的好习惯
每一个好习惯都是一笔财富,本文分SQL后悔药, SQL性能优化,SQL规范优雅三个方向,分享写SQL的21个好习惯,谢谢阅读,加油哈~1. 写完SQL先explain查看执行计划(SQL性能优化)日常开发写SQL的时候,尽量养成这个好习惯呀:写完SQL后,用explain分析一下,尤其注意走不走索引。explain select * from user where userid =10086 or age =18;2、操作delete或者update语句,加个limi..转载 2020-11-14 17:46:28 · 127 阅读 · 0 评论 -
SpringBoot+Mybatis加载Mapper.xml文件的两种方式
前言:我们在平常工作中用到mybatis去加载Mapper.xml文件,可能mapper文件放的路径不一样,由此我们需要配置多个路径,幸运的是Mybatis支持我们配置多个不同路径。现在介绍两种方法。一、配置文件:SpringBoot和Mybatis整合已经天然支持这种方式,只需要在配置文件添加多个路径用逗号隔开mybatis: mapper-locations: classpath*:com/pab/cc/fas/mapper/*Mapper*.xml,classpath*:co.转载 2020-11-03 23:14:34 · 4155 阅读 · 0 评论 -
PostgreSQL 中的引号与大小写
单双引号单引号用来标识实际的值,双引号用来标识表名(table name)或列名(column name)等数据库中存在的值。select "name" from "students" where "id"='1'加上引号的好处在于,当在程序中进行sql拼装的时候,可以简化对值的校验,同时又可以避免sql注入。即在数据库层面完成了事故的避免。大小写1. PostgreSQL的数据库内核对大小写敏感。数据库名,数据表名,列名区分大小写。2. 在PostgreSQL中,执行SQL语句时.原创 2020-07-27 22:05:27 · 1056 阅读 · 0 评论 -
PostgreSQL mysql 兼容性之 - 字符编码转换 CONVERT
PostgreSQL 字符集转换方法postgresql支持的转换函数如下:mysql中的blob类型在pgsql中以bytea类型替代,但是在解析bytea格式的时候mysql使用convert函数来转换。而在pgsql中使用convert_from, convert_to或者直接使用convert即可完成Oracle convert的功能。例如如果像返回依旧是bytea的话: select convert('abc中国'::bytea, 'UTF8', 'GBK');.原创 2020-07-24 22:17:36 · 5231 阅读 · 0 评论