Inicie Redis Server en un directorio donde Redis tiene permisos de escritura
Las respuestas anteriores definitivamente resolverán su problema, pero esto es lo que realmente está sucediendo:
La ubicación predeterminada para almacenar el rdb.dump
archivo es ./
(denotando el directorio actual). Puede verificar esto en su redis.conf
archivo. Por lo tanto, el directorio desde donde inicia el servidor redis es donde dump.rdb
se creará y actualizará un archivo.
Parece que ha comenzado a ejecutar el servidor redis en un directorio donde redis no tiene los permisos correctos para crear el dump.rdb
archivo.
Para empeorar las cosas, redis probablemente tampoco le permitirá apagar el servidor hasta que pueda crear el archivo rdb para garantizar el correcto almacenamiento de los datos.
Para resolver este problema, debe ingresar al entorno activo del cliente redis utilizando redis-cli
y actualizando la dir
clave y estableciendo su valor en la carpeta de su proyecto o en cualquier carpeta en la que el usuario no root tenga permisos para guardar. Luego, ejecute BGSAVE
para invocar la creación del dump.rdb
archivo.
CONFIG SET dir "/hardcoded/path/to/your/project/folder"
BGSAVE
(Ahora, si necesita guardar el archivo dump.rdb en el directorio en el que inició el servidor, deberá cambiar los permisos para que el directorio pueda escribir en él. Puede buscar en stackoverflow cómo hacerlo). )
Ahora debería poder cerrar el servidor redis. Tenga en cuenta que codificamos el camino. El hardcoding rara vez es una buena práctica y recomiendo iniciar el servidor redis desde el directorio de su proyecto y cambiar el dir key back to
. / `.
CONFIG SET dir "./"
BGSAVE
De esta forma, cuando necesite redis para otro proyecto, el archivo de volcado se creará en el directorio de su proyecto actual y no en el directorio de proyecto de la ruta codificada.