什么是死锁?锁等待?如何优化这类问题?通过数据库哪些表可以监控? 死锁是指两个或多个事务在同一资源上互相占用,并请求加锁时,而导致的恶性循环现象。当多个事务以不同顺序试图加锁同一资源时,就会产生死锁。 锁等待:mysql数据库中,不同session在更新同行数据中,会出现锁等待 重要的三张锁的监控表 ...
分类:
数据库 时间:
2019-01-17 21:14:09
阅读次数:
227
为什么要为innodb表设置自增列做主键? 1.使用自增列做主键,写入顺序是自增的,和B+数叶子节点分裂顺序一致 2.表不指定自增列做主键,同时也没有可以被选为主键的唯一索引,InnoDB就会选择内置的rowid作为主键,写入顺序和rowid增长顺序一致 所以InnoDB表的数据写入顺序能和B+树索 ...
分类:
数据库 时间:
2019-01-17 21:11:41
阅读次数:
436
1、MySQL的复制原理以及流程 基本原理流程,3个线程以及之间的关联; 主:binlog线程——记录下所有改变了数据库数据的语句,放进master上的binlog中; 从:io线程——在使用start slave 之后,负责从master上拉取 binlog 内容,放进 自己的relay log中 ...
分类:
数据库 时间:
2019-01-15 15:44:23
阅读次数:
241
最近在准备面试,mysql 实在是不熟悉,就先摘录一些网上的面试题来看一下. 1. MyISAM 和 InnoDB 区别? InnoDB 支持事务处理,支持更大的并发update 和 insert 操作; 支持行级锁 MyISAM 性能好,多用在执行大量select操作的场景; 不支持外键 ref: ...
分类:
数据库 时间:
2018-12-12 17:42:44
阅读次数:
179
1. 如何设计一个高并发的系统 ① 数据库的优化,包括合理的事务隔离级别、SQL语句优化、索引的优化 ② 使用缓存,尽量减少数据库 IO ③ 分布式数据库、分布式缓存 ④ 服务器的负载均衡 2. 锁的优化策略 ① 读写分离 ② 分段加锁 ③ 减少锁持有的时间 ④ 多个线程尽量以相同的顺序去获取资源 ...
分类:
数据库 时间:
2018-11-29 23:20:20
阅读次数:
247
主从同步的原理:1、主库上面有一个IO线程,从库上有一个IO线程和一个SQL线程,从库中的IO线程负责从主库读取binlog,并写入从库的中继日志;SQL线程负责读取并执行中继日志中的binlog,转换sql语句后应用数据库汇总2、通信是: 从库的IO线程给主库发送同步请求,请求中包含用户名密码和b ...
分类:
数据库 时间:
2018-11-15 16:10:08
阅读次数:
252
1、mysql中唯一索引的关键字是( C )A. fulltext index B.only index C.unique index D.index2、下面关于索引描述中错误的一项是( C )A.索引可以提高数据查询的速度 B.索引可以降低数据的插入速度C.innodb存储引擎支持全文索引 D.删 ...
分类:
数据库 时间:
2018-11-12 18:34:08
阅读次数:
580
1、MySQL的复制原理以及流程 (1)、复制基本原理流程 1. 主:binlog线程——记录下所有改变了数据库数据的语句,放进master上的binlog中; 2. 从:io线程——在使用start slave 之后,负责从master上拉取 binlog 内容,放进 自己的relay log中; ...
分类:
数据库 时间:
2018-11-02 01:46:13
阅读次数:
170
1. 主键 超键 候选键 外键 1)超键(super key) :在关系中能唯一标识元组的属性集称为关系模式的超键 2)候选键(candidate key):不含有多余属性的超键称为候选键 3)主键(primary key):用户选作元组标识的一个候选键程序主键 4)外键(foreign key): ...
分类:
数据库 时间:
2018-09-09 20:00:48
阅读次数:
179
mysql数据库面试总结 2017年09月04日 00:11:40 阅读数:151 2017年09月04日 00:11:40 阅读数:151 阅读数:151 结合网上大神还有自己面试经历,收集的总结Mysql面试题,方便自己准备面试; mysql一个永远都复习不完,尽量总结,差不多就可以去面试(个人 ...
分类:
数据库 时间:
2018-05-31 19:34:32
阅读次数:
215