无法安装redis服务器

Yan*_*Tan 5 apt redis

尝试使用 Kubuntu 16.04 64 位版本安装 redis-server:

sudo apt install redis-server
Run Code Online (Sandbox Code Playgroud)

但是在安装时收到此消息:

Setting up redis-server (2:3.0.7-1~dotdeb+6.1) ...
Job for redis-server.service failed because a timeout was exceeded. See "systemctl status redis-server.service" and "journalctl -xe" for details.
invoke-rc.d: initscript redis-server, action "start" failed.
dpkg: error processing package redis-server (--configure):
 subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
 redis-server
E: Sub-process /usr/bin/dpkg returned an error code (1)
Run Code Online (Sandbox Code Playgroud)

尝试运行“journalctl -xe”并发现:

redis-server.service: PID file /var/run/redis/redis-server.pid not readable (yet?) after start-post: No such file or directory
Run Code Online (Sandbox Code Playgroud)

任何想法来解决这个问题?

* 更新 *

“df -h”结果:

Filesystem      Size  Used Avail Use% Mounted on
udev            3,9G     0  3,9G   0% /dev
tmpfs           789M  9,6M  780M   2% /run
/dev/sda2       909G   24G  840G   3% /
tmpfs           3,9G  175M  3,7G   5% /dev/shm
tmpfs           5,0M  4,0K  5,0M   1% /run/lock
tmpfs           3,9G     0  3,9G   0% /sys/fs/cgroup
/dev/sda1       511M  3,6M  508M   1% /boot/efi
tmpfs           789M     0  789M   0% /run/user/118
tmpfs           789M   12K  789M   1% /run/user/1000
Run Code Online (Sandbox Code Playgroud)

“df -h /var/run” 结果:

Filesystem      Size  Used Avail Use% Mounted on
tmpfs           789M  9,6M  780M   2% /run
Run Code Online (Sandbox Code Playgroud)

小智 6

您可能应该更改 redis.conf 文件以强制它使用 IPv4(如果它仅支持该模式),然后也许您可以在没有 IPv6 的情况下运行它。

nano /etc/redis/redis.conf
Run Code Online (Sandbox Code Playgroud)

只需::1从绑定配置选项中删除IPv6 环回地址:

- bind 127.0.0.1 ::1
+ bind 127.0.0.1
Run Code Online (Sandbox Code Playgroud)

现在 redis 不会尝试使用 IPv6 网络。

再次尝试安装

apt install redis-server
Run Code Online (Sandbox Code Playgroud)

测试 Redis 实例功能要测试您的服务是否正常运行,请使用命令行客户端连接到 Redis 服务器:

redis-cli
Run Code Online (Sandbox Code Playgroud)

在随后的提示中,键入以下内容来测试连接性:

ping 你应该看到:

$ 127.0.0.1:6379> ping
Run Code Online (Sandbox Code Playgroud)

输出

PONG
Run Code Online (Sandbox Code Playgroud)

检查您是否可以通过键入以下内容来设置键:

$ 127.0.0.1:6379> set test "It's working!"
Run Code Online (Sandbox Code Playgroud)

输出

OK
Run Code Online (Sandbox Code Playgroud)

现在,通过键入来检索值:

$ 127.0.0.1:6379> get test
Run Code Online (Sandbox Code Playgroud)

您应该能够检索我们存储的值:

输出

$ 127.0.0.1:6379>“它起作用了!”

退出 Redis 提示符以返回 shell:

127.0.0.1:6379> exit
Run Code Online (Sandbox Code Playgroud)

作为最后的测试,让我们重新启动 Redis 实例:

$ sudo systemctl restart redis
Run Code Online (Sandbox Code Playgroud)


Yan*_*Tan 3

我最终删除了从 apt-get 安装的 redis,并从 redis 网站手动安装最新的稳定版本。现在工作正常......我使用本指南: https://www.digitalocean.com/community/tutorials/how-to-install-and-configure-redis-on-ubuntu-16-04