如何用特定的.rdb文件启动redis?

问题描述:

我有没有密码安装redis。然后,我试图把密码没有成功,并决定从我的服务器删除所有与redis相关的信息。之后,我再次安装了redis并成功设置了密码。问题是,现在正在创建一个新的数据库,而不是从旧的数据库中读取。我正在从sabe目录运行相同的命令。 $~/ redis-server如何用特定的.rdb文件启动redis?

我也试着检查是否产生新的dump.rdb文件有:

find/-type f -name "*.rdb" 

,但只找到我的正确dump.rdb文件,我想使用。

有没有办法导入我的最后一个数据库到这个新的?或者,有没有办法使用correct dump.rdb文件启动我的服务器?

+0

你是如何删除以前的数据?你有FLUSHALL吗? – Niloct

+0

不,我已经打开文件检查,并且是那里的一切。 –

+0

请确保您的.conf的'dir'指令设置为RDB文件所在的目录。此外,请确认文件名与“dbfilename”中的值匹配。如果这些设置正确,仍然没有运气 - 日志说什么? –

停止redis-server

sudo service redis-server stop 

复制您的RDB文件,以正确的路径:

sudo cp /path/to/rdb/dump.rdb /var/lib/redis/dump.rdb 

让Redis的新RDB文件的所有者:

sudo chown redis: /var/lib/redis/dump.rdb 

打开redis的配置文件中/etc/redis/redis.conf

确保这两条线都存在,而不是说:

dbfilename dump.rdb 
dir /var/lib/redis 

通过改变appendonly选项关闭其他持久性的方法来no(因为redis会首先考虑THT法):

appendonly yes 

保存并关闭配置文件并启动redis-server

sudo service redis-server start 

这将工作,如果redis-server与您的rb文件兼容。