小天天天天 数据库 142 次 2022-12-14 20:26:27
1、Redis和Memcache都是将数据存放在内存中,都是内存数据库。不过memcache还可用于缓存其他东西,例如图片、视频等等;2、Redis不仅仅支持简单的k/v类型的数据,同时还提供list,set,hash等数据结构的存储;3、虚拟内存–Redis当物理内存用完时,可以将一些很久没用到的value交换到磁盘;4、过期策略–memcache在set时就指定,例如setkey1008,即永不过期。Redis可以通过例如expir
小天天天天 数据库 109 次 2022-12-07 22:41:45
1、字符串使用场景 a)缓存功能 典型使用场景:Redis作为缓存层,MySQL作为存储层,绝大部分请求的数据都是从Redis中获取,由于Redis具有支撑高并发的特性,所以缓存通常能起到加速读写和降低后端压力的作用。 开发提示:与MySQL等关系型数据库不同的是,Redis没有命令空间,而且也没有对键名有强制要求,但设计合
小天天天天 数据库 112 次 2022-12-07 22:37:38
什么是事务?用MySQL官方的一句话来描述事务是什么?MySQL事务主要用于处理操作量大,复杂度高的数据。那何为数据量大?何为复杂度高呢?我用我自己的理解来描述一下吧。事务其实就是MySQL中处理数据的一种方式,主要用在数据完整性高,数据之间依赖性大的情况下的一种数据处理方式。举个例子,小张向小李的银行卡打200块钱,在小张点击了确认转账的按钮时,系统突然崩溃了。会出现这样几中不正确的情况:1.小张的钱打到小李的账户上,但是自己的账户上
小天天天天 数据库 122 次 2022-12-06 12:03:31
将redis发布订阅模式用做消息队列和rabbitmq的区别:可靠性 redis:没有相应的机制保证消息的可靠消费,如果发布者发布一条消息,而没有对应的订阅者的话,这条消息将丢失,不会存在内存中;rabbitmq:具有消息消费确认机制,如果发布一条消息,还没有消费者消费该队列,那么这条消息将一直存放在队列中,直到有消费者消费了该条消息,以此可以保证消息的可靠消费;实时性redis:实时性高,redis作
小天天天天 数据库 124 次 2022-12-04 23:52:09
恢复数据的重要命令如下MySQL>flushlogs;默认的日志是mysql-bin.000001现在刷新了重新开启一个就多了一个mysql-bin.000002使用以下命令来查看或恢复binlog中的数据:[root@localhostbin]#./mysqlbinlog--no-defaults../var/mysql-bin.000001|more//查看bin-log日志的内容[root@localhostbin]#./
小天天天天 数据库 126 次 2022-12-04 00:06:56
微信昵称中带有emoji表情存入数据表时,显示为乱码。处理方法如下:步骤一:数据库1、设置数据表默认字符集为utf8mb4设置存放带emoji表情的字段的字符集步骤二:代码设置数据库编码(下图为TP5,database.php内)
小天天天天 数据库 999+ 次 2022-03-08 16:22:12
又是被自己菜醒的一天,总结面经看到这题目听都没听过,打开百度就像吃饭一样自然。老规矩,背诵版在文末。首先,咱需要明白的是,啥是持久化?听起来高大上,换句简单的话来说,就是把数据写到磁盘上,也成为落盘。那为啥要做持久化到磁盘?目的就是可以在数据丢失后进行恢复,保证数据不丢失。那么对于MySQL来说,只要binlog和redolog都能正确持久化到磁盘上,就可以保证数据不丢失了。由此引出文题,不过在讲redolog之前,我们还是有必要先来说
小天天天天 数据库 999+ 次 2020-10-24 21:40:27
说说Redis基本数据类型有哪些吧字符串:redis没有直接使用C语言传统的字符串表示,而是自己实现的叫做简单动态字符串SDS的抽象类型。C语言的字符串不记录自身的长度信息,而SDS则保存了长度信息,这样将获取字符串长度的时间由O(N)降低到了O(1),同时可以避免缓冲区溢出和减少修改字符串长度时所需的内存重分配次数。链表linkedlist:redis链表是一个双向无环链表结构,很多发布订阅、慢查询、监视器功能都是使用到了链表来实现,
小天天天天 数据库 999+ 次 2020-10-24 21:29:32
这篇文章主要给大家介绍了关于Redis中3种特殊的数据类型(BitMap、GEOADD和GEODIST)的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友一起学习学习吧。前言Reids在Web应用的开发中使用非常广泛,几乎所有的后端技术都会有涉及到Redis的使用。Redis种除了常见的字符串String、字典Hash、列表List、集合Set、有序集合SortedSet等等之外,还有一些
小天天天天 数据库 999+ 次 2020-10-21 21:36:23
在日常工作中,我们会有时会开慢查询去记录一些执行时间比较久的SQL语句,找出这些SQL语句并不意味着完事了,些时我们常常用到explain这个命令来查看一个这些SQL语句的执行计划,查看该SQL语句有没有使用上了索引,有没有做全表扫描,这都可以通过explain命令来查看。所以我们深入了解MySQL的基于开销的优化器,还可以获得很多可能被优化器考虑到的访问策略的细节,以及当运行SQL语句时哪种策略预计会被优化器采用。--实际SQL,查找
小天天天天 数据库 999+ 次 2020-10-21 21:33:42
为什么要分表和分区?日常开发中我们经常会遇到大表的情况,所谓的大表是指存储了百万级乃至千万级条记录的表。这样的表过于庞大,导致数据库在查询和插入的时候耗时太长,性能低下,如果涉及联合查询的情况,性能会更加糟糕。分表和表分区的目的就是减少数据库的负担,提高数据库的效率,通常点来讲就是提高表的增删改查效率。什么是分表?分表是将一个大表按照一定的规则分解成多张具有独立存储空间的实体表,我们可以称为子表,每个表都对应三个文件,MYD数据文件,.
小天天天天 数据库 999+ 次 2020-10-21 21:22:46
1、主从复制概述 MySQL主从复制也可以称为MySQL主从同步,它是构建数据库高可用集群架构的基础。它通过将一台主机的数据复制到其他一台或多台主机上,并重新应用relaylog中的SQL语句来实现复制功能。MySQL支持单向、双向、链式级联、异步复制,5.5版本之后加入的半同步复制,5.6版本之后的GTID复制,MySQL5.7的多源复制、并行复制、loss-less复制。 1.1常见的几种主从架构 1)单向主从模式:M
小天天天天 数据库 999+ 次 2020-07-24 13:33:07
本文主要介绍在使用阿里云Redis的开发规范,从下面几个方面进行说明。键值设计命令使用客户端使用相关工具通过本文的介绍可以减少使用Redis过程带来的问题。一、键值设计1、key名设计可读性和可管理性以业务名(或数据库名)为前缀(防止key冲突),用冒号分隔,比如业务名:表名:idugc:video:1简洁性保证语义的前提下,控制key的长度,当key较多时,内存占用也不容忽视,例如:user:{uid}:friends:message
小天天天天 数据库 999+ 次 2020-04-24 00:36:19
1、为什么一定要设一个主键?2、你们主键是用自增还是UUID?3、自增主机用完了怎么办?4、主键为什么不推荐有业务含义?5、货币字段用什么类型??6、时间字段用什么类型?7、为什么不直接存储图片、音频、视频等大容量内容?8、表中有大字段X(例如:text类型),且字段X不会经常更新,以读为主,那么是拆成子表好?还是放一起好?9、字段为什么要定义为NOTNULL?10、where执行顺序是怎样的11、应该在这些列上创建索引?12、mysq
小天天天天 数据库 999+ 次 2018-05-17 11:54:49
MySQL分表分区是解决大数据量导致MySQL性能低下的两种方法。什么是MySQL分表从表面意思上看,MySQL分表就是将一个表分成多个表,数据和数据结构都有可能会变。MySQL分表分为垂直分表和水平分表。1、垂直分表垂直分表是按表中的字段来划分的,如下图所示。MySQL分表分区是解决大数据量导致MySQL性能低下的两种方法。什么是MySQL分表从表面意思上看,MySQL分表就是将一个表分成多个表,数据和数据结构都有可能会变。MySQL
小天天天天 数据库 999+ 次 2018-04-18 17:09:45
一、使用场景Merge表有点类似于视图。使用Merge存储引擎实现MySQL分表,这种方法比较适合那些没有事先考虑分表,随着数据的增多,已经出现了数据查询慢的情况。这个时候如果要把已有的大数据量表分开比较痛苦,最痛苦的事就是改代码。所以使用Merge存储引擎实现MySQL分表可以避免改代码。 Merge引擎下每一张表只有一个MRG文件。MRG里面存放着分表的关系,以及插入数据的方式。它就像是一个外壳,或者是连接池,数据存放在分表里面。
网站文章数:455
今日UV/PV/IP:21/31/20
昨日UV/PV/IP:28/32 /26