Redis Server'ı, Redis'in yazma izinlerine sahip olduğu bir dizinde başlatın
Yukarıdaki cevaplar sorununuzu kesinlikle çözecektir, ancak gerçekte olan şu:
rdb.dump
Dosyayı saklamak için varsayılan konum ./
(geçerli dizini gösterir). Bunu redis.conf
dosyanızda doğrulayabilirsiniz . Bu nedenle, redis sunucusunu başlattığınız dizin bir dump.rdb
dosyanın oluşturulacağı ve güncelleneceği yerdir .
Redis sunucusunu, redis'in dump.rdb
dosyayı oluşturmak için doğru izinlere sahip olmadığı bir dizinde çalıştırmaya başladığınız anlaşılıyor .
Daha da kötüsü, redis ayrıca verilerin düzgün bir şekilde kaydedilmesini sağlamak için rdb dosyasını oluşturabilene kadar sunucuyu kapatmanıza da izin vermez.
Bu sorunu çözmek için redis-cli
, dir
anahtarı kullanarak etkin redis istemci ortamına gitmeli ve güncellemeli ve değerini proje klasörünüze veya kök olmayan kaydetme izinlerine sahip herhangi bir klasöre ayarlamalısınız. Sonra dosyanın BGSAVE
oluşturulmasını çağırmak için çalıştırın dump.rdb
.
CONFIG SET dir "/hardcoded/path/to/your/project/folder"
BGSAVE
(Şimdi, dump.rdb dosyasını sunucuyu başlattığınız dizine kaydetmeniz gerekiyorsa , dizinin izinlerini değiştirmeniz için redis'in ona yazabilmesi gerekir. ).
Artık redis sunucusunu kapatabilirsiniz. Yolu kodladığımızı unutmayın. Hardcoding nadiren iyi bir uygulamadır ve redis sunucusunu proje dizininizden başlatmanızı ve dir key back to
. / ` Değiştirmenizi önemle tavsiye ederim .
CONFIG SET dir "./"
BGSAVE
Bu şekilde, başka bir proje için yeniden redüksiyona ihtiyaç duyduğunuzda, döküm dosyası sabit kodlu yolun proje dizininde değil, geçerli projenizin dizininde oluşturulur.