mysql
狼的诱惑_LE
自律给我自由
展开
-
mysql存储过程
分100张表执行delimiter ;;create procedure iData()begin declare i int; declare s varchar(2); set i = 0; set s = ''; while (i <= 100) do set s = LPAD(i, 2, 0); ##每个表新增指定的num记录数 set @sqlStr = co原创 2020-09-03 17:06:22 · 105 阅读 · 0 评论 -
mybatis 批量插入返回主键id
1、首先mybatis必须是3.3.1以上版本org.mybatismybatis3.3.12、其次mybatis-spring必须是1.3.0以上版本org.mybatismybatis-spring1.3.0注意:低于1.3.0版本会报如下错误org.mybatis.spring.transaction.SpringManagedTransaction.getTime...原创 2020-03-26 10:53:25 · 385 阅读 · 0 评论 -
linux - MySQL安装
Mysql数据库的安装对于开发者来说,是我们必然会面对的问题,它的安装过程其实并不复杂,并且网络上的安装教程也非常多,但是对于新手来说,各种不同形式的安装教程,又给新手们带来了要选择哪种方式进行安装的难题,而且很多时候按照教程也没有能够安装成功,安装过程出现各种各样的错误。下面记录了我在Linux环境下安装Mysql的完整过程,如有错误或遗漏,欢迎指正。一 安装前准备1、检查是否已经安装过m...原创 2020-01-09 17:47:18 · 79 阅读 · 0 评论 -
MySQL是怎么保证高可用的?
mysql保证高可用的根本就在于减少HA备份的延迟时间导致主备延迟时间过长的几个原因:首先,有些部署条件下,备库所在机器的性能要比主库所在的机器性能差备库的压力大大事务(DDL,我觉得DDL也相当于一个大事务)大表 DDL主库DML语句并发大,从库qps高从库服务器配置差或者一台服务器上几台从库(资源竞争激烈,特别是io)主库和从库的参数配置不一样从库上在进行备份操作表上无主...原创 2019-02-11 11:41:16 · 883 阅读 · 0 评论 -
B+Tree:MySQL数据库索引是如何实现的
数据库是如何支持高性能查询及区间查询?根据某个值查找数据,比如 select * from user where id=101根据某个区间查询数据,比如 select * from user where id >100 and id < 200数据库需要支持快速查询和插入等动态的数据结构,查询尽可能的快速,占用空间尽可能的少。我们知道的数据结构有散列表,平衡二叉查找树,跳表散列...原创 2019-05-19 16:24:26 · 353 阅读 · 0 评论 -
06 | 全局锁和表锁 :给表加个字段怎么有这么多阻碍?
小结:根据加锁规则分为三类:全局锁(mysql实例加锁,整个数据库实例)表锁行锁:innodb引擎才支持MDL:读也是需要加锁的备份场景(全局锁):1、Flush tables with read lock (FTWRL),只读,一般在不支持可重复读这种隔离级别的2、借助innerDB场景的可重复读的隔离级别,我们还可以借助视图 MVCC,也就是innerDB的可重复读来进行备份。...原创 2019-08-31 11:24:11 · 128 阅读 · 0 评论 -
mysql 加锁原理
首先我们知道InnoDB默认支持的是行锁,但这并不代表InnoDB不支持表锁。必须明白这一点在InnoDB中并不是在数据行上加锁,而是在对应的索引上加锁,这一点和oracle并不同,后者是在数据行上加锁的。这种实现的特点是:只有通过索引条件检索数据的时候加的是行锁,否则加表锁!假如检索条件没有用到索引,也是加表锁!...原创 2019-08-31 19:38:19 · 271 阅读 · 0 评论