在centos7中安装redis

1. 使用wget下载gz包,安装成功如图所示 wget http://download.redis.io/releases/redis-6.0.3.tar.gz

2. 下载完毕之后进行解压

tar -zxvf redis-6.0.3.tar.gz

3. 进到解压后的redis目录中进行编译

Make

 

4. 编译时若出现以下提示,首次报错莫生气,下面还有报错

该错误仅仅说明未安装gcc,我们安装好就行了呗

5. 安装gcc,这时使用命令 yum install gcc

安装gcc中途会询问你是安装这个吗,输入y之后回车进行继续安装

 

6. 编译

安装好gcc之后,开开心心重新编译,什么鬼,又出现错误了,还跟之前不一样

稳住,莫慌莫慌,查看相关资源后发现CentOS7默认安装的是4.8.5,而redis6.0只支持5.3以上版本,原来是版本不支持呀,升级版本、升级

 

7.CentOS7默认安装的是4.8.5,而redis6.0只支持5.3以上版本,这里将gcc升级到9

yum -y install centos-release-scl

yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils

8.gcc终于升级好了,这时千万别忘记要进行版本的切换,升级了新版本肯定是使用新版本喽

临时切换:scl enable devtoolset-9 bash

永久切换:echo “source /opt/rh/devtoolset-9/enable” >> /etc/profile

切换完成之后重新连接服务器生效,查看gcc版本   gcc -v

  先临时切换,再输入永久切换

9.[root@cnetos7 src]# make install PREFIX=/usr/local/redis

报错信息如下:

CC adlist.o

In file included from adlist.c:34:0:

zmalloc.h:50:31: fatal error: jemalloc/jemalloc.h: No such file or directory

 #include <jemalloc/jemalloc.h>

                               ^

compilation terminated.

make: *** [adlist.o] Error 1

错误原因:
原因是jemalloc重载了Linux下的ANSI Cmallocfree函数

10.[root@cnetos7 src]# make MALLOC=libc

11. [root@cnetos7 src]make install PREFIX=/usr/local/redis

测试成功,就是redis安装成功了

12. 移动配置文件到安装目录下

(1)cd ../    在src目录下安装完成

(2)mkdir /usr/local/redis/etc  输入命令后会询问是否覆盖输入y

(3)mv redis.conf /usr/local/redis/etc  输入命令后会询问是否覆盖输入y

13.配置redis为后台启动

(1)输入命令行:vi /usr/local/redis/etc/redis.conf

进入编辑模式

(2)输入/(进行查询,n向下查找,N向上查找)

(3) //将daemonize no 改成daemonize yes

(4)输入:wq  保存退出

14. 将redis加入到开机启动

(1)输入命令:vi /etc/rc.local 

(2)进入编辑模式:在里面添加内容:/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf (意思就是开机调用这段开启redis的命令)

15. 开启redis

/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf 

16.将redis-cli,redis-server拷贝到bin下,让redis-cli指令可以在任意目录下直接使用

cp /usr/local/redis/bin/redis-server /usr/local/bin/

cp /usr/local/redis/bin/redis-cli /usr/local/bin/

输入命令后会询问是否覆盖输入y

17.设置redis密码

a.运行命令:redis-cli

b.查看现有的redis密码(可选操作,可以没有)

   运行命令:config get requirepass 如果没有设置过密码的话运行结果会如下图所示

c.设置redis密码

    运行命令:config set requirepass lam7(****为你要设置的密码),设置成功的话会返回‘OK’字样

d.测试连接

(1)redis-cli -h 127.0.0.1 -p 6379 -a lam7  进入6379连接模式

(2)也可以先输入  redis-cli 进入命令模式 再输入 auth lam7

(3)按照上述方法设置密码只是临时设置,重启redis后就没有auth登陆了

(4)解决方案:redis的配置文件中直接配置密码

5)配置文件中有一行是这样的 #requirepass foobared

(6)去掉注释,并且把foobared改为自己的密码lam7

7vi /usr/local/redis/etc/redis.conf

进入编辑模式

(8)输入/(进行查询,n向下查找,N向上查找)

(9) //将daemonize no 改成daemonize yes

(10)输入:wq  保存退出

18.重启redis的服务

启动redis,若你的redis已经启动,则先关闭,按以下方式进行关闭(关闭默认端口)

(1)停止redis(关闭默认端口):

./redis-cli shutdown

查找进程号并杀死进程:

2ps -aux|grep redis

3kill -9 23828  (后面有server的那个进程)

19. 让外网能够访问redis

a.配置防火墙:  firewall-cmd --zone=public --add-port=6379/tcp --permanent(开放6379端口)

systemctl restart firewalld(重启防火墙以使配置即时生效)

查看系统所有开放的端口:firewall-cmd --zone=public --list-ports

firewall-cmd  这个命令也可以查看是否开放

  1.  如果不显示6379端口被开放的话:输入
  2.   firewall-cmd --zone=public --add-port=6379/tcp

b.此时 虽然防火墙开放了6379端口,但是外网还是无法访问的,因为redis监听的是127.0.0.1:6379,并不监听外网的请求。

1)把文件夹目录里的redis.conf配置文件里的bind 127.0.0.1前面加#注释掉

(2)命令:redis-cli连接到redis后,通过 config get  daemonize和config get  protected-mode 是不是都为no,如果不是,就用config set 配置名 属性 改为no。

 (3)上述中的(2)config get  daemonize其实已经设置过了:虚拟机启动redis就启动,这个不用改,只需要改后面的config get  protected-mode  为no

 

(4)关闭redis,然后重启:/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf 

(5)用客户端连接redis,成功

20. redis常用命令

(1)#启动redis服务端
$ src/redis-server
(2)#启动redis客户端
$ src/redis-cli

(3)停止redis:

使用客户端:redis-cli shutdown

(4)因为Redis可以妥善处理SIGTERM信号,所以直接kill -9也是可以的:kill -9 PID

(5)卸载redis:

    rm -rf /usr/local/redis //删除安装目录

    rm -rf /usr/bin/redis-* //删除所有redis相关命令脚本

    rm -rf /root/download/redis-4.0.4 //删除redis解压文件夹

21. 查看linux上面是否有安装redis,redis启动

 

(1)[root@localhost bin]# whereis redis-cli

(2)redis-cli: /usr/bin/redis-cli

(3)[root@localhost bin]# whereis redis-server

(4)redis-server: /usr/bin/redis-server

(5)如何查看redis服务正常启动?:ps aux | grep redis-server

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值