阿里云服务上面部署redis + 本地Redis客户端连接方法 + 配置redis服务

 本文结合自己在阿里云服务器上面搭建redis服务器,在本地redis的客户端Redis Desktop Manager连接成功的操作,将操作中的一些方法做了一些归纳和总结,希望可以帮到有需要的同学。

一、在阿里云服务器上面安装redis:

进入local目录将redis安装在此文件夹目录下:cd /usr/local

wget http://download.redis.io/releases/redis-4.0.9.tar.gz

tar xzf redis-4.0.9.tar.gz  //解压

cd redis-4.0.9

make     //编译

其中redis-server是用来启动服务用的,redis-cli是用来启动客户端用的

启动服务端:cd src    ./redis-server 出现redis图形界面表示安装成功 crtl+c 会退出redis 

 ./redis-server ../redis.conf & 表示后台守护进程启并指定读取的redis配置文件

 nohup ./redis-server ../redis.conf &  表示后台守护进程启并指定读取的redis配置文件,并且忽略日志输出到nohup.out

启动客户端:./redis-cli

二、阿里云服务器上面添加安全规则

在安全组规则中添加6379 redis端口,不然无法访问

三、设置redis客户端连接密码

进入redis :

[root@iZ254lfyd6nZ src]# ./redis-cli //进入redis

127.0.0.1:6379> get name //获取
"tanglei1234"
127.0.0.1:6379> config get requirepass //查询密码
1) "requirepass"
2) ""
127.0.0.1:6379> 设置密码输入auth +空格+ 设置的密码
(密码最好勿以特殊符号开头)

OK
注:如果出现(error) ERR Client sent AUTH, but no password is set 需要先执行
config set requirepass +密码 再执行auth +密码

127.0.0.1:6379> config get requirepass //设置完密码需要使用密码登录
(error) NOAUTH Authentication required.

注意:阿里云上部署的redis需要设置密码,这样本地redis的客户端Redis Desktop Manager才可以连上,添加的时候要填写密码。
解决(error) NOAUTH Authentication required.方法如下:
(1)查看redis.config文件:vim redis.config,打开配置文件后,输入/#requirepass foobared(快速查找)

加上 requirepass + 你的密码(如图所示)


注:修改完配置文件必须重启redis服务:可以先找到进程PID kill掉,再重新执行 ./redis-server ../redis.conf &

(2)修改配置文件:bind 127.0.0.1 注释掉

(3)使用密码连接,命令:./redis-cli -h 127.0.0.1 -p 6379 -a 密码

(4)此时就没有再提示:(error) NOAUTH Authentication required.

(5)本地redis连接

 

四、设置服务

可以看到如果我们启动redis服务的话,每次都要进入到安装目录,这样是不是很繁琐,所以我们将redis做成一个服务,我们直接启动。

(设置服务前如果redis服务在开着 要先关闭redis服务 不然后面生成不了redis-6379.pid,可以查看redis服务进程 关闭杀死resid服务)

首先将utils/redis_init_script文件复制到/etc/init.d下,同时易名为redis。执行命令

cp /usr/local/redis-4.0.9/utils/redis_init_script  /etc/init.d/redis

然后在执行命令,

vim  /etc/init.d/redis,并在文档第二行添加 # chkconfig: 2345 80 90。

如果/usr/local/redis/bin中没有redis-server和redis-cli文件的话,我们要在我们的安装目录下复制一个过来。否则服务启动时找不到redis-server。

下图第二个红框所示。并且在第三个$EXEC $CONF 后边加一个&,表示让redis作为后台服务启动,否则该服务会独占输入屏。

 

可以看到在/etc/init.d/redis文件中有这么一行:CONF="/etc/redis/${REDISPORT}.conf"。于是将redis配置文件拷贝到/etc/redis/下 。

mkdir /etc/redis 
cp /usr/local/redis-4.0.9/redis.conf /etc/redis/6379.conf

完成上面的操作之后,即可注册服务:

chkconfig --add redis

然后启动redis服务

service redis start //开启redis服务

这样我们就将redis服务注册好了。

如果service redis stop //停止redis服务 ,你会发现他提示/var/run/redis_6379.pid does not exist, process is not running  这说明在run下没有这个文件,我们进入到/var/run下发先真的没有这个文件,但是有redis.pid文件。

我们我们要将/etc/init.d/redis 文件中的redis_${REDISPORT}.pid修改为redis.pid。

 这样我们重启服务后,在用该命令关闭就可以了。到这里我们的redis服务就安装好了,并做好了一个服务

原文地址:https://www.cnblogs.com/jn1011/p/10000957.html