0

所以,我可以通过使用正常启动时的选项dump.rdb来更改位置的目录(只需调用)。如果我希望 redis-server 一直运行(我愿意)而不需要始终打开终端窗口,我想我需要对其进行守护。但是,这似乎不会自动持久化到磁盘上,并且每当 redis-server 进程结束时(我一直在通过运行或有时只是用 杀死进程来结束它的测试)并重新启动,所有数据库更改丢失,如果将来发生崩溃或意外关闭,这似乎很糟糕。在运行数据处理的代码中(使用 redis-py 的 python 或使用 jedis 的 java),我可以显式运行,但这可以节省dirredis.confredis-serverredis-cli shutdownkill PIDbgsave()dump.rdb在代码运行的目录中,而不是dir选项指定的目录中redis.conf

那么,是否有另一种方法来运行 redis-server 而不需要整个终端窗口保持打开状态以允许我想要做的事情,或者有没有办法让数据在运行时保留在磁盘上的正确目录中redis-server --daemonize yes或相似的?

4

1 回答 1

0

您可以使用 nohup 将其放在 linux“背景”上。它不需要终端窗口来保持启动和运行。我不知道 daemonize 选项可以给你一个建议,但是,看看它是否适合你:

nohup redis-server &> redis.log&

或者

在 conf 文件中设置 daemonize yes 并运行:

redis 服务器路径/to/redis.conf

于 2017-08-02T22:01:20.783 回答