Home >System Tutorial >LINUX >Centos 7 backup and restore Redis data

Centos 7 backup and restore Redis data

王林
王林Original
2024-09-02 14:02:32569browse

Centos 7 backup and restore Redis data

What is Redis?

Redis is an in-memory key-value cache and store (i.e. database) that can also be saved permanently to disk. In this article, you will learn how to back up and restore your redis database on Centos 7.

Backup and restore instructions

By default, Redis data will be saved to a .rdb file on disk, which is a point-in-time snapshot of the Redis data set. Snapshots are taken at specified intervals, so they're perfect for backups.

Data Backup

In Centos 7 and other Linux distributions, the Redis database directory is /var/lib/redis by default. However, if you have changed the redis storage location, you can find it by typing:

[root@renwolecom ~]# find / -name *rdb

使用redis-cli管理工具进入数据库:

[root@renwolecom ~]# redis-cli
由于大部分数据都运行在内存中,redis只会每隔一段时间保存一次,为获取最新副本,请执行以下命令:

10.10.204.64:6379> save
OK
(1.02s)
另外,如果Redis设置了用户认证,就需要先验证,再保存,例如:

10.10.204.64:6379> auth RenwoleQxl5qpKHrh9khuTW
10.10.204.64:6379> save
之后进行备份即可,例如:

[root@renwolecom ~]# cp /var/lib/redis/dump.rdb /apps/redis-backup-20180129
Data Restoration

Restoring a backup requires you to replace the existing Redis database file with the recovery file. To ensure that the original data files are not damaged, we recommend restoring to a new Redis server if possible.

Stop the Redis database. Once stopped, the Redis database is offline.

[root@renwolecom ~]# systemctl stop redis
如果恢复到原始Redis服务器,请重命名当前数据文件,之后再进行恢复:

[root@renwolecom ~]# mv /var/lib/redis/dump.rdb /var/lib/redis/dump.rdb.old
[root@renwolecom ~]# cp -p /apps/redis-backup-20180129/dump.rdb /var/lib/redis/dump.rdb
设置dump.rdb文件权限,拷贝过来的数据文件,可能不具备Redis用户及读取权限,需要手动赋予:

[root@renwolecom ~]# chown redis:redis /var/lib/redis/dump.rdb
[root@renwolecom ~]# chmod 660 /var/lib/redis/dump.rdb
启动redis

[root@renwolecom ~]# systemctl start redis
大功告成!现在你可以登录redis核实数据了。

Note:

According to requirements, close AOF, and AOF tracks each write operation to the Redis database. Since we are trying to restore from a point-in-time backup, we don't want Redis to recreate the operations stored in its AOF files.

Whether AOF is enabled can be known by viewing the file:

[root@renwolecom ~]# ls /var/lib/redis/

If you see a file with the .aof suffix, it means you have AOF enabled.

Rename the .aof file,

[root@renwolecom ~]# mv /var/lib/redis/*.aof /var/lib/redis/appendonly.aof.old

If you have multiple .aof files, please name them separately.

Edit your Redis configuration file to temporarily turn off AOF:

[root@renwolecom ~]# vim /etc/redis/redis.conf
appendonly no

The above is the detailed content of Centos 7 backup and restore Redis data. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn