2019独角兽企业重金招聘Python工程师标准>>>
在我的ubuntu虚拟机上安装redis服务器,中间遇上不少坑,在此做个记录。
整体的安装流程参考了:https://www.cnblogs.com/it-cen/p/4295984.html
貌似ubuntu上可以有更简单的安装方式:http://www.runoob.com/redis/redis-install.html
1)apt vs yum
Ubuntu上软件包的管理使用的是apt,所以需要使用
sudo apt intall make
sudo apt intall tcl
等指令去安装编译redis项目需要的三方工具。
2)redis服务器的配置
打开redis.config,关注三个点:
使用守护进程,后台运行redis
关注dump.rdb文件,redis服务器关闭时,会将内存数据写入到.rdb文件,所以需要确保运行用户对.rdb文件所在文件夹有写入权限,
默认情况下为redisf-server所在目录,执行sudo chmod 777 /usr/local/redis/bin
3) redis-cli打开无响应问题
在没有将redis设置为后台进程,而且也没有修改.rdb所在文件夹写入权限的情况下,开启redis-server,
发现服务启动,但是命令行被占,无法使用其它指令,ctrl+c之后,发现因为权限问题服务无法退出,
所以用ctrl+z,将服务挂起,这种情况下,打开redis-cli没有响应。
解决:
jobs查看挂起的进程, redis进程状态显示为 Stopped,所以redis-cli无响应。
使用fg %1,唤起挂起进程。或者更好的方式bg %1将redis放在后台运行。
4)其他:
使用redis-cli shutdown关闭redis服务。
~/.rediscli_history查看在redis-cli中执行的所有操作。
5)ctrl+c VS ctrl+z
参考:https://blog.csdn.net/dongyanxia1000/article/details/62042065
6)访问Ubuntu虚拟机中的redis服务:
修改redis.conf中bind为0.0.0.0,重启redis服务
虚拟机中执行 ip address查看虚拟机对外ip:
在主机中通过telnet 192.168.232.128 6379连接redis,ctrl+]退出连接,quit退出telnet。
也可以通过Redis Desktop Manager连接。
注意:看到很多介绍说需要在虚拟机上通过iptables 配置端口,如 iptables -A INPUT -ptcp --dport 6379 -j ACCEPT
但是iptables -F删除所有配置之后,telnet依然访问。
iptables -L可查看所有iptables的配置。