当前位置:首页 > Java技术 > linux安装软件系列 — Redis安装

linux安装软件系列 — Redis安装

2022年08月05日 17:05:16Java技术2

linux安装软件系列 — Redis安装


一、准备

我准备在linux 的/usr/local/redis路径下,所以需要新建redis文件夹

cd /usr/local
mkdir redis

linux安装软件系列 — Redis安装 _ JavaClub全栈架构师技术笔记

二、下载Redis压缩包

进入官网:https://redis.io/download
找到下载链接
linux安装软件系列 — Redis安装 _ JavaClub全栈架构师技术笔记XShell进入目录/usr/local/package,执行下载指令

cd /usr/local/package
wget http://download.redis.io/releases/redis-5.0.8.tar.gz

等待下载完成,需约2M (有点慢~)

下载完成后:
linux安装软件系列 — Redis安装 _ JavaClub全栈架构师技术笔记

三、安装Redis

1. 解压

  执行下面的代码,会把压缩包解压到/usr/local/redis路径中,如果版本号与我的不同,需要修改

tar -zxvf redis-5.0.8.tar.gz -C /usr/local/redis

linux安装软件系列 — Redis安装 _ JavaClub全栈架构师技术笔记

2. 编译

cd /usr/local/redis/redis-5.0.8/
make

执行完make之后,就耐心等待安装完成
linux安装软件系列 — Redis安装 _ JavaClub全栈架构师技术笔记

3. 安装

执行安装指令

make PREFIX=/usr/local/redis/redis-5.0.8/ install

linux安装软件系列 — Redis安装 _ JavaClub全栈架构师技术笔记

四、启动Redis

1. 拷贝

先将启动文件都拷贝到同一个文件夹

cd /usr/local/redis
mkdir bin
ls
cd /usr/local/redis/redis-5.0.8/src/
cp redis-server /usr/local/redis/bin/
cp redis-benchmark /usr/local/redis/bin/
cp redis-cli /usr/local/redis/bin/
cp redis.conf /usr/local/redis/bin/

如果最后一个指令执行异常时,不要紧张,回退一级,有的是src同级的

cd ..
ls
cp redis.conf /usr/local/redis/bin/
cd /usr/local/redis/bin/
ls

就能看到四个启动文件了

建立软连接

ln -s /usr/local/redis/bin/redis-server /usr/bin/redis-server
ln -s /usr/local/redis/bin/redis-cli /usr/bin/redis-cli

2. 启动Redis

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

linux安装软件系列 — Redis安装 _ JavaClub全栈架构师技术笔记想要关闭也很简单,Ctrl+C就可以,或者关掉链接,这显然不是很友好

五、设置后台启动和开机自启

1. 设置daemonize为yes

cd /usr/local/redis/bin/
ls
vim redis.conf +/daemonize

然后将daemonize设置为yes,保存退出

2. 设置自启动

vi /etc/init.d/redis
# chkconfig:   2345 90 10

PATH=/usr/local/bin:/sbin:/usr/bin:/bin	#找到本机安装redis后,存放redis命令的目录   
REDISPORT=6379	#redis的默认端口, 要和下文中的redis.conf中一致	  
EXEC=/usr/local/redis/bin/redis-server	#redis服务端的命令	   
REDIS_CLI=/usr/local/redis/bin/redis-cli	#redis客户端的命令  这两个一般都在 PATH目录下   
 
PIDFILE=/var/run/redis_6379.pid		#reids的进程文件生成的位置   
CONF="/usr/local/redis/bin/redis.conf"		#redis的配置文件所在的目录   
AUTH="1234"  

case "$1" in   
        start)   
                if [ -f $PIDFILE ]   
                then   
                        echo "$PIDFILE exists, process is already running or crashed."  
                else  
                        echo "Starting Redis server..."  
                        $EXEC $CONF    
                fi   
                if [ "$?"="0" ]   
                then   
                        echo "Redis is running..."  
                fi   
                ;;   
        stop)   
                if [ ! -f $PIDFILE ]   
                then   
                        echo "$PIDFILE exists, process is not running."  
                else  
                        PID=$(cat $PIDFILE)   
                        echo "Stopping..."  
                       $REDIS_CLI -a "你的密码" -p $REDISPORT  SHUTDOWN    
                        sleep 2  
                       while [ -x $PIDFILE ]   
                       do  
                                echo "Waiting for Redis to shutdown..."  
                               sleep 1  
                        done   
                        echo "Redis stopped"  
                fi   
                ;;   
        restart|force-reload)   
                ${
     0} stop   
                ${
     0} start   
                ;;   
        *)   
               echo "Usage: /etc/init.d/redis {start|stop|restart|force-reload}" >&2  
                exit 1  
esac


3. 修改密码

vim /usr/local/redis/bin/redis.conf +/requirepass

添加一句(找到被注释的然后修改也可以,如果太难找了,可以直接添加的)

requirepass 你的密码

保存退出

4. 打开外网权限

vim /usr/local/redis/bin/redis.conf +/bind

找到生效状态的bind 127.0.0.1 注释掉,保存退出


5. 开机自启

 chmod +x /etc/init.d/redis
 chkconfig redis on

6. 启动

设置权限
a+x 是给所有人加上可执行权限,包括所有者,所属组,和其他人
o+x 只是给其他人加上可执行权限

chmod a+x /etc/init.d/redis

启动与停止

/etc/init.d/redis start  
/etc/init.d/redis stop
# 或者
service redis start
service redis stop  
# 查一下运行状态
ps -ef|grep redis
# 重启系统再查一下运行状态
reboot
# 或者
shutdown -r now

linux安装软件系列 — Redis安装 _ JavaClub全栈架构师技术笔记

六、连接测试

1. 本机redis-cli连接

cd /usr/local/redis/bin
./redis-cli
# 进入之后
auth 你的密码
# 此时才权限验证通过
# 添加、查询、删除 (更新:再一次set同一个key就会覆盖原来的value)
set key value
get key
del key

2. 远程连接

本文使用软件:Redis Desktop Manager
最新版开始收费了,本人分享以前的免费版:
链接:https://pan.baidu.com/s/1w-wCVSuspTrDLclxlO3-lQ
提取码:j71z

初次连接
名字:随意填,只是一个标识。
地址:即你的redis的IP地址,如果是服务器则填入公网IP,如果是本机则就保持127.0.0.1
端口:默认6379,如果你更改了redis的端口,这里也要更改
验证:就是你在redis.conf文件里的设置的密码:requirepass 你的密码

其余的不用填写,先点击测试链接,如果不成功,那么看看上面的 【4. 打开外网权限】是否没注释。如果成功,那么就点击确定,就可以连接成功了。
linux安装软件系列 — Redis安装 _ JavaClub全栈架构师技术笔记
linux安装软件系列 — Redis安装 _ JavaClub全栈架构师技术笔记

7. 更换redis的默认端口

建议更换redis的默认端口,博主本人就经历过黑客通过redis默认端口入侵了我的服务器然后植入了挖矿脚本,还恶意删除各种文件,导致我重装系统的血的经验,所以非常建议更换默认端口!!!

当您的redis安装完毕并且登陆成功之后,您可以通过这个博文教程修改默认端口:点击这里

作者:散场前的温柔
来源链接:https://blog.csdn.net/qq_35394434/article/details/105510456

版权声明:
1、JavaClub(https://www.javaclub.cn)以学习交流为目的,由作者投稿、网友推荐和小编整理收藏优秀的IT技术及相关内容,包括但不限于文字、图片、音频、视频、软件、程序等,其均来自互联网,本站不享有版权,版权归原作者所有。

2、本站提供的内容仅用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯相关权利人及本网站的合法权利。
3、本网站内容原作者如不愿意在本网站刊登内容,请及时通知本站(javaclubcn@163.com),我们将第一时间核实后及时予以删除。


本文链接:https://www.javaclub.cn/java/17703.html

分享给朋友:

“linux安装软件系列 — Redis安装” 的相关文章

SpringBoot整合Redis缓存

SpringBoot整合Redis缓存

一、前言 之前分享过关于Redis集群如何搭建的,最近有小伙伴儿说分享一下Redis如何使用SpringBoot的整合,项目中经常使用的就是Redis,本次整合的是Redis单机版,后续会分享Redis集群版本,请多提出自己的意见。 二、开始整合 1.首先需要搭建Redis服务器,可参...

Redis集群搭建

Redis集群搭建

一、前言 Redis作为当前比较流行的缓存数据库,在使用的过程中,如果使用单节点的Redis,当Redis出现宕机时,则无法再为应用提供服务,所以搭建Redis集群,是可以解决Redis错误时的问题。 二、开始搭建 1.下载Redis的安装包 下载地址:http://redis.io...

Docker的安装和Redis容器

Docker的安装和Redis容器 Docker安装,环境:虚拟机CentOS 8;阿里云镜像加速;Redis容器创建。 CentOS 8的安装就不在这里演示了 连接CENTOS 使虚拟机与物理机在同一网段...

分布式专题|还在使用redis实现分布式锁么,来看看zookeepr如何优雅的实现分布式锁(排它锁|读写锁)

分布式专题|还在使用redis实现分布式锁么,来看看zookeepr如何优雅的实现分布式锁(排它锁|读写锁)

分布式专题|如何使用zookeeper实现分布式锁 在分布式中,避免不了使用分布式锁,在前面的专题中,我们已经说过使用Redis实现分布式锁,这里我将给大家演示如何使用zookeeper实现分布式锁。 首先,给大家介绍下实现的基本思路,这里默...

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'cardSalDao' defined in file [E:\GItUp\pointerCard+redis\target\gameCard-1.0-SNAPSHOT\WEB-INF\classes\cn\jbit\dao

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'cardSalDao' defined in file [E:\GItUp\pointerCard+redis\target\gameCard-1.0-SNAPSHOT\WEB-INF\classes\cn\jbit\dao

错误信息: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'cardSalDao' defined in file [E:\GItUp\pointerC...

分布式|你有了解过redis过期策略么?

十二、redis的过期策略 定期删除 策略 每100ms随机抽查删除过期数据 缺点 可能残留大量没有抽查过的数据 惰性删除 策略 每次访问数据时,先判断是否过期...

springboot 排除redis的自动配置

因为要配置一个redis链接,所以将系统自带的配置排除,分别是 RedisAutoConfiguration.class 和 RedisRepositoriesAutoConfiguration.class 两个自动配置类 需要注意的是:RedisRep...

分布式|单线程的redis为何如此快?

分布式|单线程的redis为何如此快?

十一、单线程的redis为何如此快? 因为redis所有的数据都是存放到内存中,所有的运算都是内存级别的,所以是非常快的,但是因为redis是单线程的,所以要小心使用redis指令,对于那些复杂度特别高的指令谨慎使用,否则会导致redis...

项目引入sleuth链路追踪,redis报错:Error creating bean with name 'enableRedisKeyspaceNotificationsInitializer' defined in class path resource

项目引入sleuth链路追踪,redis报错:Error creating bean with name 'enableRedisKeyspaceNotificationsInitializer' defined in class path resource

    springCloud项目中,引入sleuth之后,报:Error creating bean with name 'enableRedisKeyspaceNotificationsInitializer' defined in class path res...

SpringBoot&&Spring --- Redis 集成 Error creating bean with name 'enableRedisKeyspaceNotificationsInitializer'

Spring Boot Redis 集成 Error creating bean with name 'enableRedisKeyspaceNotificationsInitializer' 一、原因:redis集群环境没有开启Keyspace notifications 二、...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。