![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Mysql
文章平均质量分 87
wei55255555
这个作者很懒,什么都没留下…
展开
-
数据库事务的四大特性以及事务的隔离级别
本篇讲诉数据库中事务的四大特性(ACID),并且将会详细地说明事务的隔离级别。 如果一个数据库声称支持事务的操作,那么该数据库必须要具备以下四个特性:⑴ 原子性(Atomicity) 原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚,这和前面两篇博客介绍事务的功能是一样的概念,因此事务的操作如果成功就必须要完全应用到数据库,如果操作失败则不能对数据库有任何影响。⑵ 一转载 2017-12-21 16:26:48 · 132 阅读 · 0 评论 -
mysql联合索引
mysql联合索引命名规则:表名_字段名1、需要加索引的字段,要在where条件中2、数据量少的字段不需要加索引3、如果where条件中是OR关系,加索引不起作用4、符合最左原则https://segmentfault.com/q/1010000003984016/a-1020000003984281联合索引又叫复合索引。对于复合索引:Mysql从左到右的使用索引中的字段,一个查询可以只使用索引中...转载 2018-03-26 09:08:41 · 160 阅读 · 0 评论 -
mysql联合索引
我一个表 students 表,有3个字段 ,id,name,age 我要查询 通过 name 和age,在这两个字段 是创建 联合索引?还是分别在name和age上创建 单列索引呢? 多个字段查询什么情况下用联合索引 什么时候分别创建单列索引呢?1,首先要确定优化的目标,在什么样的业务场景下,表的大小等等。如果表比较小的话,可能都不需要加索引。2,哪些字段可以建索引,一般都where、order...转载 2018-03-26 08:46:10 · 349 阅读 · 0 评论 -
Mysql索引会失效的几种情况分析
索引并不是时时都会生效的,比如以下几种情况,将导致索引失效:1.如果条件中有or,即使其中有条件带索引也不会使用(这也是为什么尽量少用or的原因) 注意:要想使用or,又想让索引生效,只能将or条件中的每个列都加上索引2.对于多列索引,不是使用的第一部分(第一个),则不会使用索引3.like查询是以%开头4.如果列类型是字符串,那一定要在条件中将数据使用引号引用起来,否则不使用索引5.如果mys...转载 2018-03-26 08:32:43 · 302 阅读 · 0 评论 -
mac上忘记mysql密码完美解决方案
最近项目用到MySQL,之前装过一个,可是忘记了当时设置的密码,然后走上了修改密码的坎坷道路。在百度,Google了一堆资料之后还是,发现处处是给程序员埋的坑。于是下决心,写一篇博客,涵盖各种情况下忘记密码的解决办法。情况一:在mysql官网直接下载dmg文件进行安装,忘记密码1.关闭mysql服务器sudo /usr/local/mysql/support-files/mysql.server ...转载 2017-05-06 20:15:48 · 289 阅读 · 0 评论 -
数据库:Mysql中“select ... for update”排他锁分析
用法: select … for update;例如:select * from goods where id = 1 for update;排他锁的申请前提:没有线程对该结果集中的任何行数据使用排他锁或共享锁,否则申请会阻塞。for update仅适用于InnoDB,且必须在事务块(BEGIN/COMMIT)中才能生效。在进行事务操作时,通过“for update”语句,MySQL会对查询结果集...转载 2018-02-09 14:01:57 · 174 阅读 · 0 评论 -
对mysql乐观锁、悲观锁、共享锁、排它锁、行锁、表锁概念的理解
实验环境:mysql5.6存储引擎:innoDB我们在操作数据库的时候,可能会由于并发问题而引起的数据的不一致性(数据冲突)乐观锁乐观锁不是数据库自带的,需要我们自己去实现。乐观锁是指操作数据库时(更新操作),想法很乐观,认为这次的操作不会导致冲突,在操作数据时,并不进行任何其他的特殊处理(也就是不加锁),而在进行更新后,再去判断是否有冲突了。通常实现是这样的:在表中的数据进行操作时(更新),先给...转载 2018-02-09 13:54:45 · 401 阅读 · 0 评论 -
mysql主主同步两个数据库同时写入,实现原理:自动增长主键不重复
出现的问题(多主自增长ID重复) 解决方法:我们只要保证两台服务器上插入的自增长数据不同就可以了如:A查奇数ID,B插偶数ID,当然如果服务器多的话,你可以定义算法,只要不同就可以了 在这里我们在A,B上加入参数,以实现奇偶插入 A:my.ini上加入参数 auto_increment_offset = 1au转载 2017-12-18 11:44:39 · 2164 阅读 · 0 评论 -
MySQL性能优化
今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显。关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我 们程序员需要去关注的事情。当我们去设计数据库表结构,对操作数据库时(尤其是查表时的SQL语句),我们都需要注意数据操作的性能。这里,我们不会讲过 多的SQL语句的优化,而只是针对MySQL这一Web应用最多的数据库。希望下面的这些优化技巧对你有用。1. 为原创 2017-11-28 10:32:01 · 179 阅读 · 0 评论 -
数据库设计六范式
范式: NormalFormat, 是一种离散数学中的知识, 是为了解决一种数据的存储与优化的问题: 保存数据的存储之后, 凡是能够通过关系寻找出来的数据,坚决不再重复存储: 终极目标是为了减少数据的冗余. 范式: 是一种分层结构的规范, 分为六层: 每一次层都比上一层更加严格: 若要满足下一层范式,前提是满足上一层范式. 六层范式:1NF,2NF,3NF...6NF, 1NF是最原创 2017-11-28 10:42:42 · 703 阅读 · 0 评论 -
Mysql分库分表方案
相关文章:1、 使用Spring AOP实现MySQL数据库读写分离案例分析2、MySQL5.6 数据库主从(Master/Slave)同步安装与配置详解3、MySQL主从复制的常见拓扑、原理分析以及如何提高主从复制的效率总结4、使用mysqlreplicate命令快速搭建 Mysql 主从复制5、大型网站应用之海量数据和高并发解决方案总结一二一、MySQL扩展具体的实现方式随着业务规模的不断扩大...转载 2018-05-22 15:46:44 · 1034 阅读 · 1 评论