首页
学习
活动
专区
圈层
工具
发布
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    腾讯二面:Redis 事务支持 ACID 么?

    ❝腾讯面试官:「数据库事务机制了解么?」...❝腾讯面试官:「Redis 的事务了解么?它的事务机制能实现 ACID 属性么?」 程许远:「挠头,这个……我知道 lua 脚本能实现事务…」 腾讯面试官:「好的,回去等通知吧。」...事务在执行时,会提供专门的属性保证: 原子性(Atomicity):一个事务的多个操作必须完成,或者都不完成(ps:MySQL 的原子性靠什么实现呢?...❝码哥,为什么 Redis 不支持回滚? 其实,Redis 中并没有提供回滚机制。虽然 Redis 提供了 DISCARD 命令。...总结 Redis 具备了一定的原子性,但不支持回滚。 Redis 具备 ACID 中一致性的概念。点) Redis 具备隔离性。 Redis 无法保证持久性。

    1.1K10

    MySQL 已经进化到这种程度了么?

    就像我们的编程导航网站,用户发布的文章、评论等信息都存储在 MySQL 中: 如何搭建 MySQL 呢?...MySQL 集群版 前面提到,为了防止数据丢失、保证服务的可用性,我们可以搭建 MySQL 集群。 什么是 MySQL 集群呢?...腾讯云的 MySQL 集群不仅支持快速扩缩容,其横向扩容能力还能实现 异步 数据复制,无论数据量多大,添加只读节点的时间也不会超过一分钟。...2、备节点只读 在传统架构中,备节点通常不支持读写,也没有访问地址。这种设计虽然能保证主节点出现问题时备节点能迅速接管,但在平常却无法访问,完全就是资源浪费。...而腾讯云 MySQL 集群版的备节点不仅支持主备切换,还允许在未成为主节点时进行读操作,进而分担读请求的压力。 3、性能升级 近期,腾讯云对整体的 MySQL 性能进行了优化。

    45810

    技术分享 | MySQL MGR 滚动升级可行么?

    作者:雷文霆,爱可生华东交付服务部 DBA 成员,主要负责 MySQL 故障处理及相关技术支持。爱好看书,电影。座右铭,每一个不曾起舞的日子,都是对生命的辜负。...如果你没有做过升级或是需要从 MySQL 5.7 到 MySQL 8.0 大版本升级,需要根据官方升级文档[2] 进行检查。 至少要有的初步检查: 必须备份数据,只支持 GA。...先切主 同版本时,切主命令(我们这次不能使用,因为不同版本不能切换) # shell 使用8.0 # 不支持5.7.31 cluster.setPrimaryInstance('clusteruser...group_replication_get_communication_protocol 函数返回组支持的最低 MySQL 版本(也就是说这个版本以下的 MySQL 版本无法加入集群)。...如果加入成员支持该版本,则它将加入组并使用组已宣布的通信协议,即使该成员支持其他通信功能也是如此。如果加入成员不支持通信协议版本,则会将其从组中逐出。

    74910

    MySQL创建表字段真的可以随便定义么

    MySQL 表字段真的可以随便写么? 直接上答案: 肯定不能呀 我是怎么知道不能随便使用呢? 原因很简单,因为我使用了字段[system],上线报错了.又有人问为啥测试的时候没暴露出来呢?...原因也很简单,测试环境使用的是MySQL5,生产环境使用的是MySQL8.而 system 字段在MySQL5不是保留字,在MySQL8 是,一个简单的错误告诉我们,生产和测试使用的组建信息版本一定要一致...那既然不能随便写字段,快告诉我哪些字段不能使用,下面直接给你最全的: MySQL 8.x 关键字和保留字字段 赠送一个MySQL字段错误点 还有一个大家很容易忽略的就是表结构设计时候的字段长度,因为如果保存数据的时候如果字段过长

    73710

    MySQL 的 4 种隔离级别,你了解么?

    3、Mysql的四种隔离级别 SQL标准定义了4类隔离级别,包括了一些具体规则,用来限定事务内外的哪些改变是可见的,哪些是不可见的。低级别的隔离级一般支持更高的并发处理,并拥有更低的系统开销。...(2) Read Committed(读取提交内容) 这是大多数数据库系统的默认隔离级别(但不是MySQL默认的)。它满足了隔离的简单定义:一个事务只能看见已经提交事务所做的改变。...这种隔离级别 也支持所谓的不可重复读(Nonrepeatable Read),因为同一事务的其他实例在该实例处理其间可能会有新的commit,所以同一select可能返回不同结果。...(3) Repeatable Read(可重读) 这是MySQL的默认事务隔离级别,它确保同一事务的多个实例在并发读取数据时,会看到同样的数据行。...在MySQL中,实现了这四种隔离级别,分别有可能产生问题如下所示: ? 4、测试Mysql的隔离级别 下面,将利用MySQL的客户端程序,我们分别来测试一下这几种隔离级别。

    67020

    MySQL 正式引入 JavaScript 支持!

    近期,MySQL 官方宣布了正式在 MySQL 中引入了 JavaScript 支持! 下面是 MySQL 官方的描述: MySQL 正在持续推动创新,现在已在数据库内部包含丰富的过程式编程能力。...通过支持存储过程中的 JavaScript,开发人员将能够用熟悉的语言编写 MySQL 存储过程,并利用广泛的 JavaScript 生态系统!...MySQL-JavaScript MySQL 现在引入了对 JavaScript 存储过程的支持,用户现在可以在数据库内部表达丰富的过程逻辑。...它还提供了一个完全托管的虚拟机,具有沙箱能力和工具支持。MySQL-JavaScript 与 GraalVM 企业版集成在一起。...安全:MySQL 对 JavaScript 的支持提供了最高级别的安全性、隔离性和数据保护。虚拟机沙盒确保恶意代码不能妨害 MySQL 服务器的其他模块。每个存储程序都在其自己的上下文中解析和执行。

    1.3K10

    粗聊Mysql——你会建库建表么?

    这样就会造成一种情况,如果那天对数据库进行优化,把主键进行了重新排序(暂时没有找到mysql优化软件会优化主键,但是可以通过代码删除主键,然后从新建立自增主键来实现主键重新排序),那就彻底杯具了,栏目和文章完全对不上号了...所以我建议两表之间关联不用主键,而是单独建一个编号的字段,我们这里可以用mysql的uuid()函数做为编号,相关文献可以参考《UUID做主键好还是不好》,只所以一张表要2个主键,一个物理主键(自增id...至于性能,我本地测了下基本上没差异,网上也有人做了10W条数据的测试——《实测MYSQL UUID性能》。...所以我建议,既然定义为varchar,就代表不会涉及到计算,何不干脆定义一个通用的长度,比如varchar(50),如果真要限制长度,用程序去判断,不要让数据库来限制,不然用户输了一长串,结果mysql

    7.9K10

    MySQL查询海量数据会出现OOM的场景么?

    点击标题下「蓝色微信名」可快速关注 技术社群的这篇文章《100G内存下,MySQL查询200G大表会OOM么?》给我们讲解了日常工作中可能碰到的一个场景,虽然有些极端,但是有助于对数据库原理的理解。...这意味着,若客户端接收得慢,会导致MySQL服务端由于结果发不出去,这个事务的执行时间变长。...若客户端使用–quick参数,会使用mysql_use_result方法:读一行处理一行。...如果太多,因为执行了一个大查询导致客户端占用内存近20G,这种情况下就需要改用mysql_use_result接口。...四、小结 MySQL采用的是边算边发的逻辑,因此对于数据量很大的查询结果来说,不会在server端保存完整的结果集。所以,如果客户端读结果不及时,会堵住MySQL的查询过程,但是不会把内存打爆。

    21710

    除了 MySQL,这些数据库你都认识么?

    比较经典的关系型数据库产品有 MySQL、Oracle、PostgreSQL、Microsoft SQL Server 等。其中,MySQL 由于开源又易学,已经成为后端开发同学必学的数据库技术。...对于大多数项目,用 MySQL 等关系型数据库来存储数据就足够了。但关系型数据库不是银弹!在某些场景下,比如要存储的数据间没有关系时,它并不是最佳的选择。...解决特定问题的数据库 相信很多同学对数据库的印象就停留在 MySQL 和 Redis。的确,以上两类数据库几乎已经可以解决所有问题! 但是,未必是最适合的。...此外,搜索引擎数据库还支持 相关性排序 ,能够根据用户的搜索词对所有搜索结果进行打分,把最接近的文档排到最上面。...此外,多模数据库还支持事务,能够更轻松地实现数据的一致性和完整性,不需要手动实现跨库事务、跨库数据同步等等。

    2.5K70

    MySQL慢查询(上):你知道为啥会慢么?

    下MySQL处理慢查询的正确姿势。...数据库执行SQL的大致流程如下: 建立与MySQL服务器连接(基础) 客户端发送查询SQL到数据库,数据库验证是否有执行的权限 MySQL服务器先检查查询缓存,如果命中了缓存,则立即返回存储在缓存中的结果...,否则继续流转; MySQL服务器语法解析器,进行词法与语法分析,预处理 流转至查询优化器生成执行计划 根据生成的执行计划,调用存储引擎暴露的API来执行查询 将查询执行结果返回给客户端 关闭MySQL...连接 具体执行过程可能会因MySQL服务器具体配置和执行场景有一些差异。...---- 限于文章篇幅,同时为了大家更好的阅读体验,后面会连续产出系列文章: MySQL慢查询(中) 主要内容包括 如何定位慢查询问题和几种实用解决方案介绍 MySQL慢查询(下) 主要内容包括

    1.4K30
    领券