我可以写一个redis并在程序中读取它
但是,关闭服务器后,我猜数据会从内存中删除
如何将redis中的数据保存到磁盘,下次打开redis以便
它可以打开数据,让控制台程序读取它吗?
如果我的电脑由于突然断电而重新启动,可以重新恢复状态和
让程序可以读取以前的数据吗?
static void Main(string[] args)
{
RedisClient redisClient = new RedisClient("localhost");
redisClient.FlushAll();
var redisTodos = redisClient.As<Todo>();;
Todo todo1 = new Todo();
todo1.Content = "wind";
todo1.Id = redisTodos.GetNextSequence();
todo1.Order = 1;
todo1.Done = false;
redisTodos.Store(todo1);
var savedTodo = redisTodos.GetById(todo1.Id);
var allTodos = redisTodos.GetAll();
foreach(var i in allTodos)
{
Console.WriteLine(i.Content);
}
Console.ReadKey();
}
答案 0 :(得分:1)
您要找的是Redis Persistance。
您可能需要签出将SAVE或BGSAVE等命令作为rdb文件转储到磁盘的命令。稍后可以使用这些文件在启动时将数据加载到redis中
答案 1 :(得分:0)
redisClient.FlushAll();
redis保存并加载其转储文件的位置在启动服务器时给予redis的.conf文件中
$ redis-server /home/user/redis.conf
如果在没有任何.conf的情况下启动服务器,redis将从启动redis-server的文件夹中保存并加载转储文件
$ cd /home/user/myfolder
$ redis-server
这里dumb.rdb文件将被写入/home/user/myfolder/dump.rdb
用于保存数据库,只需复制dump.rdb文件
您还可以查看rdd谁是一个非常灵活的工具