redis之主从复制实现原理

主从复制redis为了实现⾼可⽤(⽐如解决单点故障的问题),会把数据复制多个副本部署到其他节点上,通过复制,实现Redis的⾼可⽤性,实现对数据的冗余备份,保证数据和服务的可靠性。在Redis中,用户可以通过执行SLAVEOF命令或者设置slaveof选项,让一个服务器去复制(replicate)另
数据库 2021年01月23日 2次浏览

redis之跳跃表的实现

跳跃表跳跃表(skiplist)是一种有序数据结构,它通过在每个节点中维持多个指向其他节点的指针,从而达到快速访问节点的目的。跳跃表支持平均O(logN)、最坏O(N)复杂度的节点查找,还可以通过顺序性操作来批量处理节点。在大部分情况下,跳跃表的效率可以和平衡树相媲美,并且因为跳跃表的实现比平衡树要
数据结构 数据库 2021年01月23日 3次浏览

redis实现之字典

字典在不进行rehash的时候,使用的是ht[0],进行rehash的时候,ht[0]和ht[1]一起使用。typedefstructdict{//类型特定函数dictType*type;//私有数据void*privdata;//哈希表dicththt[2];//rehash索引//当rehash
数据结构 数据库 2021年01月23日 7次浏览

redis服务器之AOF持久化

AOF持久化除了RDB持久化功能之外,Redis还提供了AOF(AppendOnlyFile)持久化功能。与RDB持久化通过保存数据库中的键值对来记录数据库状态不同,AOF持久化是通过保存Redis服务器所执行的写命令来记录数据库状态的。SETmsg"hello"SADDfrui
数据库 2020年12月28日 53次浏览

MySQL、Redis 和 MongoDB 的优缺点

关系型数据库MySQLMySQL是一个关系型数据库。MySQL在WEB应用方面MySQL是最好的RDBMS(RelationalDatabaseManagementSystem,关系数据库管理系统)应用软件之一。MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放
数据库 2020年06月26日 268次浏览

对MyISAM与InnoDB这两个数据库引擎的思考

MyISAM用的是表级锁InnoDB用的是行级锁事务是如何实现的?通过建立一个临时表,所有的操作都存放在临时表中,当事务确定的时候,才将临时表的内容写入到原来的表中。为什么InnoDB支持事务而MyISAM不支持?因为MyISAM用的是表级锁,如果用了两条数据,表被锁住了,第二条数据无法修改变动。I
mysql 2020年06月03日 249次浏览

c++调用数据库

步骤通过调用mysql_library_init初始化MySQL库通过调用mysql_init()初始化连接句柄使用SQL语句调用mysql_close()关闭调用mysql_library_end()终止使用库函数实现#include"MySQLForCAPI.h"MySQLF
c/c++ mysql 2020年03月03日 338次浏览

mysql安装并设置远程连接

mysql的安装sudoapt-getinstallmysql-serversudoaptisntallmysql-clientsudoaptinstalllibmysqlclient-dev检查sudonetstat-tap|grepmysql查看备用用户sudovim/etc/mysql/deb
mysql 2020年03月03日 329次浏览

mysql存储过程,函数,变量与流程控制

存储过程存储过程和自定义函数是事先经过编译并存储在数据库中的一段SQL语句集合存储过程参数可以使用inoutinout函数只能使用in函数必须要有返回值存储过程没有返回值无参存储过程--查找平均花费高的两个客户createproceduregetMaxAvgCost()beginselectcust
mysql 2020年02月24日 341次浏览

mysql表单内容的查询

查询查询所有字段:select*fromstudent;查询指定字段:selectname,class_nofromstudent;查询符合条件字段的列:selectnamefromstudentwhereid=3;selectnamefromstudentwhereidbetween1and4;s
mysql 2020年02月24日 408次浏览