导航

随笔分类 -  数据库

摘要:参考链接: http://blog.csdn.net/qqqqq1993qqqqq/article/details/77538202 单线程模型: redis中的数据结构并不全是简单的kv,还有list、hash等复杂的结构,这些结构很可能会进行细粒度的操作,比如在很长的列表偶棉添加一个元素,在ha 阅读全文

posted @ 2017-12-23 19:30 耍流氓的兔兔 阅读(1950) 评论(0) 推荐(0)

摘要:参考链接: https://mp.weixin.qq.com/s?__biz=MzIyNzUwMjM2MA==&mid=2247483696&idx=1&sn=c69e364b189fe261a466e4f8d290258b&scene=2&srcid=0812sWPJjYmbGOEzR8oMS0O 阅读全文

posted @ 2017-12-23 17:16 耍流氓的兔兔 阅读(2995) 评论(0) 推荐(0)

摘要:参考博客:http://blog.csdn.net/zhuxineli/article/details/14455029 什么是explain: explain显示了mysql如何使用索引来处理select语句以及连接表,可以帮助选择更好的索引和写出更优化的查询语句 入门: 先解析一条sql语句: 阅读全文

posted @ 2017-12-22 20:37 耍流氓的兔兔 阅读(290) 评论(0) 推荐(0)

摘要:Hash索引: 哈希索引基于哈希表实现,只有精确索引所有列的查询才有效,对于每一行数据,存储引擎都会对所有的索引列计算一个哈希码,哈希码是一个较小的值,并且不同键值的行计算出来的哈希码不一样,哈希索引将所有的哈希存储在索引中,同时在哈希表中保存指向每个数据的指针 MySQL中,只有Memory存储引 阅读全文

posted @ 2017-12-13 16:26 耍流氓的兔兔 阅读(235) 评论(0) 推荐(0)

摘要:一 索引: 索引(在Mysql中也叫做键<key>),是存储引擎用于快速找到记录的一种数据结构,其先在索引中找到对应值,然后根据匹配索引记录找到对应的数据行 如果对多列进行索引(组合索引),列的顺序非常重要,MySQL仅能对索引最左边的前缀进行有效的查找 索引对查询的速度有重要的影响,应该是对数据库 阅读全文

posted @ 2017-11-30 13:23 耍流氓的兔兔 阅读(234) 评论(0) 推荐(0)

摘要:锁是计算机协调多个进程或线程并发访问某一资源的机制,在数据库中,除了传统的计算资源(CPU、RAM、I/O等)的争用以外,数据也是一种供多用户共享的资源;如何保证数据并发访问的一致性、有效性是所有数据库必须解决的一个问题,锁冲突也是影响数据库并发访问性能的一个重要因素 MySQL锁特性: 相对于其他 阅读全文

posted @ 2017-11-22 22:38 耍流氓的兔兔 阅读(188) 评论(0) 推荐(0)

摘要:事务: 事务是并发控制的单元,是用户定义的一个操作序列,这些操作要么都做,要么都不做,是一个不可分割的工作单位 通过事务,SQL能将逻辑相关的一组操作绑定在一起,以便服务器保持数据的完整性 事务的提交和回滚: 事务通常以begin transaction开始,以commit或rollback结束 c 阅读全文

posted @ 2017-11-21 09:23 耍流氓的兔兔 阅读(136) 评论(0) 推荐(0)

摘要:Redis和数据库的同步如何做? 设置redis中数据的过期时间(登录信息) 更新或修改数据库中数据的时候同时更新redis的 数据 使用MQ更新缓存数据 Redis的好处? 速度快:因为数据在内存中,类似于HashMap,HashMap的优势就是查找和操作的时间复杂度都是O(1) 支持丰富的数据类 阅读全文

posted @ 2017-11-04 10:17 耍流氓的兔兔 阅读(140) 评论(0) 推荐(0)

摘要:当一台Redis服务器的内存存储空间有限的情况下,看可以使用redis集群扩展存储空间 使用PING-PANG机制,检查节点的健康状态 所有的redis节点彼此互联 每个节点中保存的数据不一样,为了保证集群的高可用,数据的完整性,须给每个节点配置从机 节点是否fail通过投票机制判断:集群中超过半数 阅读全文

posted @ 2017-11-03 09:46 耍流氓的兔兔 阅读(181) 评论(0) 推荐(0)

摘要:Redis穿透 出现原因:频繁的查询一个不存在的数据,由于缓存不命中,每次都要查询持久层,从而失去缓存保护后端的意义 解决方法: 部署过滤器拦截: 将数据库中数据的存在的Id存入列表,放入缓存中,每次先判断要查询的数据(通过sismember key member)是否存在,如果存在,就去持久层进行 阅读全文

posted @ 2017-11-02 21:46 耍流氓的兔兔 阅读(336) 评论(0) 推荐(0)

摘要:Redis的高性能是由于其将所有数据都存储在了内存中,为了使Redis在重启之后仍能保证数据不丢失,需要将数据从内存中同步到硬盘中,这一过程就是持久化 Redis支持两种方式的持久化,一种是RDB方式,一种是AOF方式。可以单独使用其中一种或将二者结合使用 RDB持久化: RDB方式的持久化是通过快 阅读全文

posted @ 2017-11-02 21:45 耍流氓的兔兔 阅读(197) 评论(0) 推荐(0)

摘要:主从复制机制: 持久化 保证了即使Redis服务器重启也不会丢失数据,因为Redis服务重启后会将硬盘上持久化的数据恢复到内存中,但是如果Redis服务器损坏则可能导致数据丢失,但是可以通过Redis的 主从复制机制就可以避免这种单点故障 主redis中的数据有两个副本(replication)即从 阅读全文

posted @ 2017-11-02 21:45 耍流氓的兔兔 阅读(136) 评论(0) 推荐(0)

摘要:什么是Redis: Redis是C语言开发的开源的高性能键值对(key-value)数据库,支持String类型、map散列类型、list列表类型、set集合类型、sortedset有序集合类型 参考链接:http://www.runoob.com/redis/redis-tutorial.html 阅读全文

posted @ 2017-11-02 21:38 耍流氓的兔兔 阅读(296) 评论(0) 推荐(0)

摘要:存储引擎: 存储引擎就是指表的类型以及表在计算机上的存储方式 它处于MySQL体系架构中Server端底层,是底层物理结构的实现,用于将数据以各种不同的技术方式存储到文件或者内存中,不同的存储引擎具备不同的存储机制、索引技巧和锁定水平 参考博客:http://www.cnblogs.com/yuxi 阅读全文

posted @ 2017-11-02 10:33 耍流氓的兔兔 阅读(367) 评论(0) 推荐(0)