ubuntu安装redis
在线安装
sudo apt install redis-server
安装完成后redis会自动启动
通过以下命令查看系统中redis的进程
ps -e | grep redis
启动和关闭redis
通过在线方式安装的redis 可以使用以下两种方式启动和关闭
1.$ redis-server
这种方式启动时系统默认使用生成的临时性配置文件,如果想手动改配置文件 可以通过以下命令 redis-cli config set appendonly yes
这样的方式,这种方式下如果redis重启之前的配置会失效。
对应的关闭方式为 $ redis-cli shutdown
通过客户端方式关闭。
2. $ /etc/init.d/redis-server start
使用脚本启动redis。此时可以通过加参数的方式实现指定配置文件启动。如:$ /etc/init.d/redis-server start redis.conf
对应的关闭方式为 $ /etc/init.d/redis-server stop
通过脚本关闭。
上图的这种错误是因为:使用在线方式安装,启动的时候redis-server 命令不支持自定义配置文件,如果想指定配置文件可以采用上面说的第二种启动方式或者如下图所示的方式更改。
如上图更改配置后关闭redis服务后,在redis服务端启动的窗口目录下(我这是是在user/redis-6.0.4目录下执行的redis-server)会找到dump33.rdb文件和appendonly.aof文件。如下图那样
== 上图演示的是第二种指定配置文件的启动和关闭方式 ==
通过源文件的方式安装redis
- 官网下载压缩包
- 解压到安装目录
- cd redis-6.0.9 // 进入安装目录 仔细阅读readme.md,以下步骤在该文件中都写的很清楚了
- make //make 文件
-
- ./src/redis-server 配置文件(可选) //启动服务端,加参数配置文件说明以指定文件启动,否则以临时默认文件启动
- ./src/redis-cli // 启动客户端
- auth 密码 // 如果设置了密码,客户端需要输入密码进入
- 以上的启动只是简单的演示用,安装请继续执行以下命令(README.md里有)*
-
- make test
- make PREFIX=/some/other/directory install //指定目录安装,如果指了安装目录,需要把安装目录下的/bin/reis-cli 设置一个软链接到usr/local/bin下,方便在任何目录下执行redis-cli命令
- cd utils
- ./install_server.sh //如果这一步报错 需要屏蔽该文件内的以下代码:
#bail if this system is managed by systemd
#_pid_1_exe="$(readlink -f /proc/1/exe)"
#if [ "${_pid_1_exe##*/}" = systemd ]
#then
# echo "This systems seems to use systemd."
# echo "Please take a look at the provided example service unit files in this directory, and adapt and install them. Sorry!"
# exit 1
#fi
没有报错的话,会让你设置一些配置文件(最后一项为redis-server的路径),之后redis会自己直接在后台启动,提示信息里会列出启动命令等信息
这里可能会遇到redis后台启动,无法通过/etc/init.d/redis_6379 stop 关闭的情况,执行以下命令
查看端口占用情况
$ netstat -tunlp | grep 6379
(Not all processes could be identified, non-owned process info
will not be shown, you would have to be root to see it all.)
tcp 0 0 127.0.0.1:6379 0.0.0.0:* LISTEN 835/redis-server 12
杀掉进程
sudo kill -9 835
然后重启redis /etc/init.d/redis_6379 start
控制命令:
- systemctl status/start/stop redis
- /etc/init.d/redis_6379 start/stop/status
通过更改redis.conf配置文来设置密码
redis设置密码后,系统不能重启的问题
如果系统重启卡住,按F1查看,看到如下信息:
A stop job is running for LSB:start and stop redis_6379,
这说明是redis关闭时没有得到授权,没有密码
可以用下面的方式解决:修改/etc/init.d/redis_6379文件中 (stop下的内容,格式:$CLIEXEC -a “password” -p $REDISPORT shutdown)
-a “123456” 是新增的内容