Home Article Practice redis

redis

2022-08-03 09:27  views:296  source:小键人7584075    

由于 redis 是一个内存数据库,所谓内存数据库,就是将数据库中的内容保存在内存中,
这与传统的MySQL,Oracle等关系型数据库直接将内容保存到硬盘中相比,
数据库的读写效率比传统数据库要快的多(内存的读写效率远远大于硬盘的读写效率)。
但是保存在内存中也随之带来了一个缺点,一旦断电或者宕机,那么内存数据库中的数据将会全部丢失.
redis持久化是指在指定的时间间隔内将内存中的数据集快照(snapshotting)写入磁盘,
恢复时是将快照文件读入内存 redis提供了两种持久化方式
RDB(Redis DataBase)
AOF(Append of File)
一、RDB
1、备份是如何进行的
redis会单独创建一个子进程(使用fork函数)来进行持久化,
会先将数据写入到一个临时文件中,待持久化过程都结束了,
再用这个临时文件替换上次持久化好的文件。整个过程中,主进程是不进行任何IO操作的,这就确保了极高的性能
如果需要进行大规模数据的恢复,且对于数据恢复的完整性不是非常敏感,那RDB方式要比AOF方式更加的高效
RDB的缺点是最后一次持久化后的数据可能丢失
注: fork函数的作用是复制一个与当前进程一样的进程。
新进程的所有数据(变量、环境变量、程序计数器等) 数值都和原进程一致,
但是是一个全新的进程,并作为原进程的子进程。



Disclaimer: The above articles are added by users themselves and are only for typing and communication purposes. They do not represent the views of this website, and this website does not assume any legal responsibility. This statement is hereby made! If there is any infringement of your rights, please contact us promptly to delete it.

字符:    改为:
去打字就可以设置个性皮肤啦!(O ^ ~ ^ O)