数据库

详解MySQL中的存储过程和函数

储存过程和函数就是数据器将一些处理封装起来,调用 区别 调用储存过程只需要使用CALL,然后指定储存名称和参数,参数可以是IN、OUT和INOUT 调用储存函数只需要使用SELECT,指定名称和参数,储存函数必须有返回值,参数只能是IN 优点 良好的封装性...

分布式锁三种实现方式及对比

分布式锁三种实现方式: 1. 基于数据库实现分布式锁; 2. 基于缓存(Redis等)实现分布式锁; 3. 基于Zookeeper实现分布式锁; 一, 基于数据库实现分布式锁 1. 悲观锁 利用select … where … for update 排他锁...

SqlServer 注释符 单行注释与多行注释

环境:SQLServer 2008 R2 问题:不清楚SQLServer 里的注释用法。 解决: 单行注释:-- 多行注释:/*......*/ 使用示例: 单行注释: -选择列表中的列 ‘Student.sname’ 无效,因为该...

Redis进行相关优化详解

前言 Redis在项目中进行广泛使用,那么在日常的开发过程中,我们在使用Redis的过程中需要注意那些呢?本文将从三个维度来讲解如何进行Redis的优化。 内存维度 控制key的长度 key的一般都是采用字符串,而字符串的底层数据结构为SDS,SDS 结构...

教你如何让spark sql写mysql的时候支持update操作

如何让sparkSQL在对接mysql的时候,除了支持:Append、Overwrite、ErrorIfExists、Ignore;还要在支持update操作 1、首先了解背景 spark提供了一个枚举类,用来支撑对接数据源的操作模式 通过源码查看,很明显...

MongoDB系列教程(四):设置用户访问权限

我们知道mysql在安装的时候需要我们设置一个数据库默认的用户名和密码,mongodb也不例外,不过mongodb是默认的没有设置访问限制的,不需要输入用户名和密码都可以访问的,但是这样会十分的不安全,我们需要手动的为mongodb加上权限限制命令。 &n...

MySQL回表的性能伤害程度有多大

1 回表的性能消耗 无论单列索引 还是 联合索引,一个索引就对应一个独立的B+索引树,索引树节点仅包含: 索引里的字段值 主键值 即使根据索引树按条件找到所需数据,也仅是索引里的几个字段的值和主键值,万一你搞个select *,那就还得其他字段,就需回表,...