1. Redis事务的概念 是什么: 可以一次执行多个命令,本质是一组命令的集合。一个事务中的所有命令都会序列化,按顺序串行化的执行而不会被其他命令插入 能干嘛:一个队列中,一次性、顺序性、排他性的执行一系列命令 (要和pipeline区分开) Redis其实是部分支持事务: 因为事务的错误模式并不 ...
分类:
其他好文 时间:
2020-03-11 15:38:08
阅读次数:
57
开发时,把测试数据拷贝到本地数据库时,需要把sql_mode也拷贝过来,让配置都一样。 缓存:读信息用的 缓冲:写信息用的 利用show profile查看sql的执行周期: 1.修改配置文件/etc/my.cnf 新增一行:query_cache_type=1 重启mysql 2.show var ...
分类:
数据库 时间:
2020-03-06 01:55:36
阅读次数:
101
一、存储引擎去区别 A、存储文件: 1. innodb有两个文件,frm文件存储表结构和元信息等,ibd存储数据(包括索引和数据) 2. myisam有三个文件,因为索引和数据分开存放的 B、事务区别 1. innodb支持事务 2. myisam、memory、archive都不支持事务 C、锁区 ...
分类:
数据库 时间:
2020-02-22 23:42:21
阅读次数:
101
这里的答案都是本人做的,非标准答案。如果错误,请在评论里指正,一起讨论共同进步!谢谢! 腾讯面试题 1、大端与小端的概念?各自的优势是什么? 【答】大端与小端是用来描述多字节数据在内存中的存放顺序,即字节序。大端(Big Endian)是指低地址端存放高位字节,小端(Little Endian)是指 ...
分类:
其他好文 时间:
2020-02-22 21:39:56
阅读次数:
103
锁升级(Lock Escalation)是指将当前锁的粒度降低。举个例子:数据库可以把一个表的1000个行锁升级为一个页锁,或者将页锁升级为表锁。 如果在数据库的设计中认为锁是一种稀有资源,而且想避免锁的开销,那数据库中会频繁出现锁升级现象。 SQL Server 数据库的设计认为锁是一种稀有的资源 ...
分类:
数据库 时间:
2020-02-15 23:18:32
阅读次数:
91
数据库锁: 首先引用一张其他博主的图: 下面我就针对这图中的锁逐一进行一下解释: 悲观锁: 数据库总是认为多个数据库并发操作会发生冲突,所以总是要求加锁操作。悲观锁主要表锁、行锁、页锁。 乐观锁: 数据库总是认为多个数据库并发操作不会发生冲突,所以总是不加锁操作。所以在数据进行提交更新的时候,才会正 ...
分类:
数据库 时间:
2020-02-15 13:18:30
阅读次数:
99
前言 InnoDB 通过 MVCC 和 NEXT-KEY Locks,解决了在可重复读的事务隔离级别下出现幻读的问题。MVCC 我先挖个坑,日后再细讲,这篇文章我们主要来谈谈那些可爱的锁。 什么是幻读? 幻读是在可重复读的事务隔离级别下会出现的一种问题,简单来说,可重复读保证了当前事务不会读取到其他 ...
分类:
数据库 时间:
2020-02-09 22:18:49
阅读次数:
100
共享锁(S锁):又称为读锁,可以查看但无法修改和删除的一种数据锁。如果事务T对数据A加上共享锁后,则其他事务只能对A再加共享锁,不能加排它锁。获准共享锁的事务只能读数据,不能修改数据。 共享锁下其它用户可以并发读取,查询数据。但不能修改,增加,删除数据。资源共享. 排它锁(X锁):又称为写锁、独占锁 ...
分类:
其他好文 时间:
2020-02-03 18:48:25
阅读次数:
81
01 引擎选择 目前广泛使用的是MyISAM和InnoDB两种引擎: MyISAMMyISAM引擎是MySQL 5.1及之前版本的默认引擎,它的特点是: 不支持行锁,读取时对需要读到的所有表加锁,写入时则对表加排它锁 不支持事务 不支持外键 不支持崩溃后的安全恢复 在表有读取查询的同时,支持往表中插 ...
分类:
数据库 时间:
2020-02-02 13:42:55
阅读次数:
108
死锁:相互等待对方的资源,而且形成环路,造成首尾相接innodb将各个事务看为一个个节点,资源就是各个事务占用的锁 死锁成因: 1、不同表相同记录行锁冲突 事务A和事务B操作两张表 (a操作table1 where id = 1 && table2 where =2) (b操作table2 wher ...
分类:
数据库 时间:
2020-01-31 18:49:07
阅读次数:
102