故障分析 | Cassandra 用户信息 list Error

Cassandra 2.1 学习总结2:Cassandra集合列(collection columns) 参考:datastax documention : CQL for cassandra 2.x Cassandra 提供collection 用于处理某些特殊类型的需求,如单用户记录的多个邮件地址,此处翻译为集合类型。 Cassandra 提供了三种集合类型,分别是Set,List,Map。 基本概念与操作 一、Set Set存储了一组类型相同的不重复元素,当被查询时会返回排好序的结果, 阅读详情

作者:杨文

DBA,负责客户项目的需求与维护,会点数据库,不限于MySQL、Redis、Cassandra、GreenPlum、ClickHouse、Elastic、TDSQL等等。

本文来源:原创投稿

*爱可生开源社区出品,原创内容未经授权不得随意使用,转载请联系小编并注明来源。


一、背景:

客户在集群中查看用户信息 list users 时,报错 Error from server:xxx 。其实是个简单的查看语句,但魔法失灵了?下面我们将集群中用户角色等信息的查看方式做一个统一的分析说明。

二、cassandra 简单介绍:

2.1、Cassandra集群组成:节点(Node)、机架(Rack)、数据中心(Data Center);
  • 节点(Node):运行Cassandra实例的服务器;
  • 机架(Rack):一组相互靠近的Cassandra节点;
  • 数据中心(Data Center):指逻辑机架的集合。
2.2、Cassandra通常跨多个数据中心存储数据副本,以确保高可用性,同时会将查询路由到同一数据中心的其他节点以实现最优性能,为了实现这一点,Cassandra使用两个内部协议来管理基于集群拓扑的数据路由:gossip和snitches。
  • Cassandra使用Gossip协议实现了无中心架构。
  • Cassandra使用Snitch机制实现了节点感知以提高性能。
  • Cassandra使用环结构和令牌机制实现了集群的动态扩容和数据分区。
2.3、环结构和令牌:
  • Cassandra将一个集群管理的数据表示为环,会为环中的每个节点分配一个或多个数据区间或范围,由一个令牌描述,确定数据在环中的位置。
  • 通过使用散列函数为分区键计算令牌,将数据分配给节点。将该分区密钥令牌与各个节点的令牌值进行比较,以识别拥有该数据的范围,从而识别该节点。
  • Cassandra将群集管理的数据表示为环。环中的每个节点被分配由令牌描述的一个或多个数据范围,该令牌确定其在环中的位置,令牌是用于标识每个分区的64位整数ID。
2.4、复制策略:
  • 节点用作不同数据范围的副本。
  • 如果一个节点发生故障,其他副本可以响应对该数据范围的查询。
  • Cassandra以对用户透明的方式跨节点复制数据,复制因子是集群中接收相同数据的副本的节点数。
  • 第一个副本将始终是声明令牌落入范围的节点,但副本的其余部分根据复制策略放置。

三、本地环境测试:

我们将通过实验测试进行 cassandra 用户角色查看时的各种情况说明。

实验环境:集群模式下跨数据中心。

数据中心节点IP种子节点
DC110.186.60.61、10.186.60.7、10.186.60.118、10.186.60.6710.186.60.61、10.186.60.7
DC210.186.60.53、10.186.60.65、10.186.60.94、10.186.60.6810.186.60.53、10.186.60.65
3.1、用户:

使用默认用户名 cassandra 和默认密码 cassandra 登录:

cqlsh 10.186.60.61 -u cassandra -p cassandra

创建用户:

cassandra@cqlsh> CREATE USER root WITH PASSWORD 'rootroot' SUPERUSER;
cassandra@cqlsh> list users;
name      | super | datacenters
----------+-------+-------------
cassandra |  True |         ALL
     root |  True |         ALL
(2 rows)

说明:

  • 只有 SUPERUSER 可以创建用户,创建的用户默认为 NOSUPERUSER;

  • 只有 SUPERUSER 可以删除用户,任何用户不能删除自己。

  • 如果要删除默认帐号,需要用新创建的账号重新登录,才可以删除默认账号;删除后,将不能再使用cassandra用户登录数据库了。

示例:

cqlsh 10.186.60.61 -u root -p rootroot
...
root@cqlsh> drop user cassandra;

和其它分布式数据库一样,此时能查看所有用户的几种方式:

cqlsh 10.186.60.61 -u cassandra -p cassandra
cqlsh 10.186.60.61 -u root -p rootroot

cqlsh 10.186.60.7 -u cassandra -p cassandra
cqlsh 10.186.60.7 -u root -p rootroot

cqlsh 10.186.60.118 -u cassandra -p cassandra
cqlsh 10.186.60.118 -u root -p rootroot

cqlsh 10.186.60.67 -u cassandra -p cassandra
cqlsh 10.186.60.67 -u root -p rootroot

错误的查看方式:

[cassandra@data01 ~]$ cqlsh 10.186.60.53 -u cassandra -p cassandra
Connected to cluster at 10.186.60.53:9042
[cqlsh 6.0.0 | cassandra 4.0.1 | CQL spec 3.4.5 | Native protocol v5]
Use HELP for help.
cassandra@cqlsh> LIST USERS;
Unauthorized: Error from server: code=2100 [unauthorized] message="Unable to perform authorization of login permission: cannot achieve consistency level LOCAL_ONE"

可以看到不是同一个数据中心的是不能获得到权限的。

dc1数据中心中的节点是可以直接看该数据中心所有用户,但是dc2数据中心是不能直观的看dc1数据中心用户的。需通过system_auth.roles表,才能看到:

[cassandra@data05 ~]$ cqlsh 10.186.60.53 -u cassandra -p cassandra
Connected to cluster at 10.186.60.53:9042
[cqlsh 6.0.0 | cassandra 4.0.1 | CQL spec 3.4.5 | Native protocol v5]
Use HELP for help.
cassandra@cqlsh> select * from system_auth.roles;
role      | can_login | is_superuser | member _of | salted_hash
----------+-----------+--------------+------------+--------------------------------------------------------------
cassandra |      True |         True |       null | $2a$10$bks/GM5rQFyw7nRQPC2sn.hxiMloTvIcG7Q6fqjSspq5970gGax3u
     root |      True |         True |       null | $2a$10$eV88L/7bx08F9JH/4a.z1u/wvv2Yhv3xgIISRDKbd7/aeLvxkMzgs
(2 rows)

说明:同一数据中心和跨数据中心都可以通过system_auth.roles表查看集群中所有的用户。

需要注意的是:虽然dc2数据中心有root用户,但却无法用root用户进行登录数据库。

[cassandra@data01 ~]$ cqlsh 10.186.60.53 -u root -p rootroot
Connection error: ('unable to connect to any servers', {'10.186.60.53:9042': AuthenticationFailed('Failed to authenticate to 10.186.60.53:9042: Error from server: code=0100 [Bad credentials] message="unable to perform authentication: Cannot achieve consistency level LOCAL__ONE"',)})
3.2、角色:

创建角色:

create role appgroup1;
create role appgroup2 with password='appgroup2' and login=true;

查看角色:

cassandra@cqlsh> list roles;
role      | super | login | options | datacenters
----------+-------+-------+---------+-------------
appgroup1 | False | False |      {} |         ALL
appgroup2 | False |  True |      {} |         ALL
cassandra |  True |  True |      {} |         ALL
     root |  True |  True |      {} |         ALL
(4 rows)

同样的,跨数据中心dc2无法直接查看角色:

cassandra@cqlsh> list roles of appgroup2;
NoHostAvailable: ('unable to complete the operation against any hosts', {<Host: 10.186.60.53:9042 dc2>: unavailable('Error from server: code=1000 [unavilable exception] message="cannot achieve consistency level LOCAL_ONE" info={\'consistency\': \'LOCAL_ONE\', \'required_replicas\': 1, \'alive_replicas\': 0}',)})
cassandra@cqlsh>
cassandra@cqlsh> list roles;
Unauthorized: Error from server: code=2100 [unauthorized] message="unable to perform authorization of super-user permission: cannot achieve consistency level LOCAL_ONE"

需用system_auth.roles表,才能看到:

cassandra@cqlsh> select * from system_auth.roles;
role      | can_login | is_superuser | member_of | salted_hash
----------+-----------+--------------+-----------+--------------------------------------------------------------
cassandra |      True |         True |      null | $2a$10$bks/GM5rQFyw7nRQPC2sn.hxiMloTvIcG7Q6fqjSspq5970gGax3u
     root |      True |         True |      null | $2a$10$eV88L/7bx08F9JH/4a.z1u/wvv2Yhv3xgIISRDKbd7/aeLvxkMzgs
appgroup1 |     False |        False |      null |                                                         null
appgroup2 |      True |        False |      null | $2a$10$8uOnMjPKA678nmeCF73eceme7Mezr.z775NQEIztpsPPUEQoxsd6G
(4 rows)
3.3、汇总:

当两个数据中心都创建了用户时,两个数据中心中的节点都将不能使用list查看信息:

[cassandra@data01 ~]$ cqlsh 10.186.60.61 -u cassandra -p cassandra
Connected to cluster at 10.186.60.61:9042
[cqlsh 6.0.0 | cassandra 4.0.1 | CQL spec 3.4.5 | Native protocol v5]
Use HELP for help.
cassandra@cqlsh> LIST USERS;
Unauthorized: Error from server: code=2100 [unauthorized] message="Unable to perform authorization of login permission: cannot achieve consistency level LOCAL_ONE"
cassandra@cqlsh> quit

[cassandra@data01 ~]$ cqlsh 10.186.60.61 -u root -p rootroot
Connected to cluster at 10.186.60.61:9042
[cqlsh 6.0.0 | cassandra 4.0.1 | CQL spec 3.4.5 | Native protocol v5]
Use HELP for help.
cassandra@cqlsh> LIST USERS;
Unauthorized: Error from server: code=2100 [unauthorized] message="Unable to perform authorization of login permission: cannot achieve consistency level LOCAL_ONE"
cassandra@cqlsh> 
cassandra@cqlsh> list roles;
Unauthorized: Error from server: code=2100 [unauthorized] message="unable to perform authorization of super-user permission: cannot achieve consistency level LOCAL_ONE"
cassandra@cqlsh> quit

[cassandra@data01 ~]$ cqlsh 10.186.60.65 -u cassandra -p cassandra
Connected to cluster at 10.186.60.65:9042
[cqlsh 6.0.0 | cassandra 4.0.1 | CQL spec 3.4.5 | Native protocol v5]
Use HELP for help.
cassandra@cqlsh> LIST USERS;
Unauthorized: Error from server: code=2100 [unauthorized] message="Unable to perform authorization of login permission: cannot achieve consistency level LOCAL_ONE"
cassandra@cqlsh> 
cassandra@cqlsh> list roles;
Unauthorized: Error from server: code=2100 [unauthorized] message="unable to perform authorization of super-user permission: cannot achieve consistency level LOCAL_ONE"
cassandra@cqlsh> quit

当其中一个数据中心删除了自己创建的所有的用户时,另一个才能使用list查看。

dc2数据中心删除自己创建的用户:

cassandra@cqlsh> drop user yangw1;
cassandra@cqlsh> LIST USERS;
Unauthorized: Error from server: code=2100 [unauthorized] message="Unable to perform authorization of login permission: cannot achieve consistency level LOCAL_ONE"
cassandra@cqlsh> list roles;
Unauthorized: Error from server: code=2100 [unauthorized] message="unable to perform authorization of super-user permission: cannot achieve consistency level LOCAL_ONE"

此时,dc1数据中心中的节点,又可以通过list直接查看信息了:

[cassandra@data01 ~]$ cqlsh 10.186.60.61 -u cassandra -p cassandra
Connected to cluster at 10.186.60.61:9042
[cqlsh 6.0.0 | cassandra 4.0.1 | CQL spec 3.4.5 | Native protocol v5]
Use HELP for help.
cassandra@cqlsh> list users;
name      | super | datacenters
----------+-------+-------------
appgroup2 |  True |         ALL
cassandra |  True |         ALL
     root |  True |         ALL
(3 rows)
cassandra@cqlsh> list roles;
role      | super | login | options | datacenters
----------+-------+-------+---------+-------------
appgroup1 | False | False |      {} |         ALL
appgroup2 | False |  True |      {} |         ALL
cassandra |  True |  True |      {} |         ALL
     root |  True |  True |      {} |         ALL
(4 rows)
3.4、总结:

1)哪个数据中心创建的用户和角色,哪个数据中心才能list查看,list只能查看自己数据中心创建的用户/角色,看其他数据中心的用户/角色就只能通过间接的方式看到;

2)由于两个数据中心都创建了用户/角色,所以系统分不清哪个用户/角色是哪个数据中心创建的,所以就都不让看;

3)删除角色/用户时,只能由创建它的数据中心进行删除;即:dc1数据中心创建的角色/用户,只能由dc1数据中心中的节点删除;用dc2数据中心中的节点删除时,就会报错。

Cassandra数据库连接问题:无法连接到任何服务器 当遇到Cassandra数据库连接问题时,首先确保Cassandra服务器正常运行,网络配置正确,并验证Debezium的配置参数是否正确设置。如果问题仍然存在,您可以检查防火墙和安全组配置,并验证Cassandra数据库的身份验证设置。如果您的系统使用防火墙或网络安全组,请确保允许Debezium主机与Cassandra服务器之间的通信。如果ping命令失败,请检查网络配置和防火墙设置,确保允许Debezium主机与Cassandra服务器之间的通信。 阅读详情

相关推荐

cass-list:基于 Cassandra 的列表(而不是队列)

cas-list 基于 Cassandra 的列表(而不是队列) 一个列表实现,条目存储在 Cassandra 中,用于短期持久化。 对于大多数不涉及跨数据中心切换的用例,标准消息/队列(例如基于 JMS、SQS、Kafka 等)可能是最佳解决方案。 这在跨数据中心部署的流程之间涉及切换的情况下效果最佳,尤其是当 进程执行切换所需的数据在 Cassandra 中 移交预计由一个或多个远程数据中心处理 利用 cassandra 复制更简单,尤其是当源数据已经在 Cassandra 中时 这个实现试图限制/避免墓碑问题( )的死亡,这在 Cassandra 之上的类似队列的实现中似乎很常见,方法是不重用任何行。 列表读取的范围仅限于命名读取器,这允许多个读取器读取列表中的相同条目并跟踪每个读取器读取的条目。 有关用法,请参阅 com.simplify4me.casslist.Ca

【Cassandra】数据类型和基础语法

1.cassandra的数据类型 CQL提供了一组丰富的内置数据类型,包括集合类型。除了这些数据类型,用户还可以创建自己的自定义数据类型。 (1)普通类型: (2)集合类型: list 列表(或称数组)是一个或多个有序元素的集合。 map 地图是键值对的集合。 set 集合是一个或多个元素的集合。 (3)自定义 2.键空间操作 -- 查看所有键空间 DESCRIBE KEYSPACES; --创建键空间 CREATE KEYSPACE test01 WITH replication = {'class'

清平乐的技术专栏 5022

Cassandra 权限操作

Cassandra 权限操作,grant/revoke

cassandra关于集合类型的操作

Cassandra的几种集合类型(list、set、map)增强了数据库的表现力,这几种数据类型用的很方便。我简单总结了一下这几种类型的使用方法。 社会我二哥,人狠话不多,直奔主题

二师兄 4645

Jetson Orin NX系统克隆术:如何快速备份与还原你的开发环境(附完整命令行)

本文详细介绍了Jetson Orin NX系统克隆的完整流程,这是一种超越简单备份的完整镜像方案。通过命令行操作,可实现开发环境(包括引导程序、内核、根文件系统及所有配置)的快速备份与还原,确保批量部署时环境的完全一致性与高效性,尤其适合机器人、边缘AI等项目的团队协作。

weixin_29191081的博客 155

YOLOv8验证的命令以及计算coco指标

好久不看代码,都不知道怎么验证的了,来记录一下。1、计算coco指标。

毕竟是Shy哥 1479

10分钟带你操作Cassandra数据库(查改增删)

搭建Cassandra环境,参考: https://blog.youkuaiyun.com/abckingaa/article/details/123440517 本文使用Java JDBC方式,操作Cassandra数据库(SUID:查改增删) 一、配置数据库连接方式 #bee.db.dbName=Cassandra bee.db.url =jdbc:cassandra://127.0.0.1:9042 bee.db.username = bee.db.password = bee.db.schemaN

abckingaa的博客 5338

SAP 屏幕增强:客户商主数据屏幕增强(KNA1、KNB1、KNVV)

本文介绍了SAP系统中针对客户主数据(KNA1、KNB1、KNVV)进行屏幕增强的具体实现方法。主要内容包括:1)在SPRO配置中创建新条目;2)通过SE80创建函数组和程序(LZKNA1TOP等);3)设置子屏幕9001并添加自定义结构字段;4)利用BADI(CUSTOMER_ADD_DATA等)实现数据交互逻辑。文章分别详细说明了针对客户主数据的一般数据(KNA1)、公司代码数据(KNB1)和销售数据(KNVV)三类不同数据的增强配置步骤,包括函数模块创建、屏幕设置和BADI方法调用等关键技术点。

SAP ABAP开发技能记录分享 1614

Cassandra用户管理

Cassandra用role代替用户和用户组,默认创建的role没有login和super权限;但是默认创建的user是有login的权限(1)角色#创建角色cassandra@cqlsh:keyspace1> create role cdhu1;cassandra@cqlsh:keyspace1> create role cdhu2 with password=...

weixin_34130389的博客 331

基于STM32、HAL库的IP5356M_DBZ_CA快充协议芯片简介及驱动程序设计

IP5356M_BATTERY_LEVEL_25 = 1, /* 电池电量25% */IP5356M_CHARGE_STATE_CHARGE_DONE = 4, /* 充电完成 */IP5356M_CHARGE_STATE_FAST = 2, /* 快速充电 */IP5356M_CHARGE_STATE_NONE = 0, /* 无充电 */IP5356M_CHARGE_STATE_PRE = 1, /* 预充电 *//* 延时1秒 */

corlin6688的博客 1415

Mac安装Typescript报错

根本原因是系统级目录的权限限制。推荐通过修改目录权限或使用nvm彻底解决问题。

江拥羡橙的博客 210

cassandra入门二- Cassandra的配置

Cassandra目前最新版本是1.2.1, 可以在http://cassandra.apache.org 下载 我是在Ubuntu下配置的, 下载完压缩包之后,直接解压缩.  我的Ubuntu是12 jdk环境 1.6  解压后得到7个 文件夹,其中  bin下有一些工具,比如 cqlsh cassandra-cli 是跟数据库交互用的工具 conf 是配置文件 lib是要

Amo860129的专栏 1098

为什么我的 Spark Executor / Yarn Container 只有一个vCore?

在很多集群里,在关闭了Spark的DynamicAllocation的前提下(避免自动申请空闲资源,干扰测试结果),都会观察到:提交Spark作业时,申请 1 个 driver + n 个 executor 会在Yarn上会对应创建 n+1 个 container,但是每个container只有一个vCore,通过--driver-cores和--executor-cores设定的vCore数都未奏效。有人会因此错误的认为Yarn上的一个vCore对应一个Spark的executor,这是非常错误的,正确的

Laurence的技术博客 916

cassandra数据库的常用命令

连接cassandra cqlsh 192.168.6.202 cqlsh -u 'cassandra' -p 'cassandra' 查看表空间 describe keyspaces; describe keyspace {keyspace}; 查看已有表 describe tables; 查看表结构 describe table table_name; Cassandra 提供了三...

john dong 7861

2025_NIPS_Truthful Aggregation of LLMs with an Application to Online Advertising

大型语言模型(LLMs)生成内容的 revenue 变现是在线广告的下一个前沿领域。我们考虑这样一种场景:广告商旨在影响LLM的回复,而平台则寻求最大化广告商价值并确保用户满意度。核心挑战在于,广告商的偏好通常与用户偏好存在冲突,且广告商可能误报其偏好。为解决这一问题,我们提出MOSAIC——一种拍卖机制,它确保真实申报是广告商的占优策略,并使每个广告商的效用与其对社会福利的贡献保持一致。重要的是,该机制无需LLM微调或访问模型权重,且随着计算资源的增加,可证明收敛到最优微调LLM的输出。

c_cpp_csharp的专栏 79

【5】GD32H7xx CAN发送及FIFO接收

GD32H7xx CAN收发调试记录,包含源码

madao1234的博客 1812

[Cassandra] Cassandra 设置用户权限

1. 创建用户账号# 创建非超级用户 cassandra@cqlsh&gt; CREATE USER user1 WITH PASSWORD 'password1' NOSUPERUSER; # 创建超级用户 cassandra@cqlsh&gt; CREATE USER user2 WITH PASSWORD 'password2' SUPERUSER; # 查看所有用户 cassandra@c...

Cindy的博客 3336

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

cassandra简单介绍与基本操作

前言   项目中用到了cassandra,用来存储海量数据,且要有高效的查询;本博客就进行简单的介绍和进行一些基本的操作   路漫漫其修远兮,吾将上下而求索!   github:https://github.com/youzhibing   码云(gitee):https://gitee.com/youzhibing 使用场景   是一款分布式的结构化数据存储方案(NoSql数据库),...

weixin_30892037的博客 513

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

解决server returned HTTP status 401 Unauthorized

解决server returned HTTP status 401 Unauthorized

空山新雨后,天气晚来秋 6051

cassandra常用操作总结

前言 在上一篇,我们演示了如何基于centos7快速搭建起cassandra的运行环境,以及服务的启动和cql客户端命令行,本篇将基于此环境对cassandra的基础使用做一些总结 操作运维命令总结 1、查看键空间 DESCRIBE keyspaces; 该命令用于展示casandra下的所有的keyspaces(类比mysql的show databases;),casandra的keyspaces和mysql的数据库概念相似,属于从逻辑上区分的物理隔离空间,基于各个keyspaces,管理各自的tabl

congge 3780

cassandra常用基本操作

1. 登录: ./cqlsh 172.31.0.7 或者 ./cqlsh -u cassandra -p cassandra 172.31.0.7 2. 创建用户(用的不多,一般不用) CREATE USER root WITH PASSWORD 'root' SUPERUSER; 3. 查询所有keyspaces describe keyspaces;(或desc keyspaces...

wuzhan的专栏 2351

cassandra问题解决记录

1、set User[‘sophia’][‘name’]=’sophia’ cannot parse name as hex bytes报错 改为set User[ascii(‘sophia’)][ ascii( ‘name’)]= ascii(’sophia’)

我有明珠一颗的博客 537

java查询cassandra,Cassandra 2.1 数据查询语法。

1,官方文档,基本类型数据查询语言文档:cql 支持的数据类型:相对于 MySQL,有几个类型比较有意思,uuid类型,map,list,set类型,这个优化关联查询,直接将List存入一条记录。CQL TypeConstantsDescriptionasciistringsUS-ASCII character stringbigintintegers64-bit signed longblobb...

weixin_28909303的博客 685

Springboot-Cassandra list<frozen<UDT>>类型使用和异常问题处理

最新在开发的项目中使用到了Cassandra的udt(user-defined-type)类型, 遇到了不少棘手问题,本文将列举遇到的异常和解决方案。 表结构定义如下 CREATE TYPE cass_stdy.address ( addr text, mail text ); CREATE TABLE cass_stdy.user ( id uuid PRIMARY KEY, addr list<frozen<address>>, ag

qq_36389344的博客 3200

cassandra 存储list数组

demo如下: CREATE TABLE users3 ( user_id text PRIMARY KEY, first_name text, last_name text, emails list<text> ); INSERT INTO users3 (user_id, first_name, last_name, emails) VA...

djph26741的博客 283

Cassandra介绍与使用

介绍Apache Cassandra是一套开源分布式NoSQL数据库系统。它最初由Facebook开发,用于储存收件箱等简单格式数据,集Google BigTable的数据模型与Amazon Dynamo的完全分布式的架构于一身。Facebook于2008将 Cassandra 开源,此后,由于Cassandra良好的可扩放性,被Digg、Twitter等知名Web 2.0网站所采纳,成为了一种流行

mao_2110901055的专栏 2万+
上一篇: 故障分析 | MySQL死锁案例分析
下一篇: 技术分享 | MySQL 多版本并发控制「MVCC」
爱可生开源社区
博客等级 码龄8年 1936粉丝 1004原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值