【学习笔记15】如何在非root服务器中,安装属于自己的redis

一、下载安装包

  • 官网下载
  • 黑马程序员给的安装包(redis-6.2.6

二、将安装包上传至服务器

  • 我将安装包上传在我的文件夹/home/XXX,指定路径中/src/local/redis/,绝对路径为/home/XXX/src/local/redis/
  • 解压安装包
bash 复制代码
XXX@omega:~$ cd /home/XXX/src/local/redis/
XXX@omega:~/src/local/redis$ tar -zxvf redis-6.2.6.tar.gz

三、安装

  • 编译:进入解压的安装包进行编译
bash 复制代码
XXX@omega:~/src/local/redis$ cd redis-6.2.6
XXX@omega:~/src/local/redis/redis-6.2.6$ make
  • 编译完成后,你将在/home/XXX/usr/local/redis/redis-6.2.6/src/目录中找到redis-serverredis-cli两个可执行文件。

  • 安装到指定路径

bash 复制代码
XXX@omega:~/src/local/redis/redis-6.2.6$ cd ..
XXX@omega:~/usr/local/redis$ mkdir install
XXX@omega:~/usr/local/redis$ cd redis-6.2.6/src
XXX@omega:~/usr/local/redis/redis-6.2.6/src$ make PREFIX=usr/local/redis/install/ install   # PREFIX是安装路径
  • 配置文件路径
    安装成功后, 在新创建的文件夹下会生成一个bin目录, 我们在同路径下创建一个etc文件夹, 用于放置配置文件。
bash 复制代码
XXX@omega:~/usr/local/redis/redis-6.2.6/src$ cd /home/XXX/usr/local/redis/install
XXX@omega:~/usr/local/redis/install$ mkdir etc
  • 拷贝配置文件:复制redis-6.2.6/redis.confetc
bash 复制代码
XXX@omega:~/usr/local/redis/install$ cp ../redis-6.2.6/redis.conf etc/redis.conf
  • 改配置:编辑etc/redis.conf,找到相应的属性进行修改
bash 复制代码
# bind 127.0.0.1 -::1 -> bind 0.0.0.0
bind 0.0.0.0  # 本机访问改为所有ip都可以访问
# daemonize no -> daemonize yes
daemonize yes  # 前台(no)运行改为后台运行(yes)
# equirepass foobared -> requirepass 123321
requirepass 123321  # 设置密码为123321

四、测试是否安装成功

  • 使用redis-server开启redis,使用redis-cli测试是否可以连接,ping得到PONG成功。
bash 复制代码
XXX@omega:~$ redis-server
XXX@omega:~$ redis-cli
127.0.0.1:6379> ping
PONG
127.0.0.1:6379> quit
  • 查看是否在后台运行,发现运行的是/snap/redis/1574/usr/bin/redis-server,这应该是服务器之前安装过的redis。
bash 复制代码
XXX@omega:~$ ps -ef |grep redis
root     1135148       1  0 1月17 ?       00:29:21 /snap/redis/1574/usr/bin/redis-server *:6379
XXX      1195585       1  0 13:09 ?       00:00:00 /home/XXX/usr/local/redis/install/bin/redis-server 0.0.0.0:6 380
  • 使用绝对路径开启redis,并连接,同样ping成功。
bash 复制代码
XXX@omega:~$ /home/XXX/usr/local/redis/install/bin/redis-server /home/XXX/u sr/local/redis/install/etc/redis.conf
XXX@omega:~$ /home/longyy/usr/local/redis/install/bin/redis-cli 
127.0.0.1:6379> ping
PONG
127.0.0.1:6379> exit
  • 查看是否在后台运行:原始的/snap/redis/1574/usr/bin/redis-server *:6379和我们安装的
    /home/XXX/usr/local/redis/install/bin/redis-server 0.0.0.0:63都在运行。
bash 复制代码
XXX@omega:~$ ps -ef | grep redis
root  1135148       1  0 1月17 ?       00:29:26 /snap/redis/1574/usr/bin/redis-server *:6379
XXX   1195585       1  0 13:31 ?       00:00:00 /home/XXX/usr/local/redis/install/bin/redis-server 0.0.0.0:63
XXX   1203799 1194305  0 13:31 pts/0   00:00:00 grep --color=auto redis

五、别名替换

  • 为了方便运行,我们设置别名替换,在.bashrc文件中加入以下语句
bash 复制代码
# redis
alias my-redis-server='/home/XXX/usr/local/redis/install/bin/redis-server /home/XXX/usr/local/redis/install/etc/redis.conf'
alias my-redis-cli='/home/XXX/usr/local/redis/install/bin/redis-cli --raw'
  • 使用别名运行
bash 复制代码
XXX@omega:~$ kill -9 1195585
XXX@omega:~$ ps -ef |grep redis
root     1135148       1  0 1月17 ?       00:29:25 /snap/redis/1574/usr/bin/redis-server *:6379
XXX      1203359 1194305  0 13:30 pts/0    00:00:00 grep --color=auto redis
XXX@omega:~$ source .bashrc
XXX@omega:~$ my-redis-server
XXX@omega:~$ ps -ef | grep redis
root  1135148       1  0 1月17 ?       00:29:26 /snap/redis/1574/usr/bin/redis-server *:6379
XXX   1203707       1  0 13:31 ?        00:00:00 /home/XXX/usr/local/redis/install/bin/redis-server 0.0.0.0:63
XXX   1203799 1194305  0 13:31 pts/0    00:00:00 grep --color=auto redis

参考

黑马程序员Redis入门到实战教程-P4 安装Redis
Linux系统非root用户通过wget安装redis
一台linux怎样配置多个redis
不用root安装redis

相关推荐
小小8程序员8 小时前
Redis-10
数据库·redis·缓存
程序员zgh10 小时前
Linux系统常用命令集合
linux·运维·服务器·c语言·开发语言·c++
紫郢剑侠10 小时前
飞秋@Windows +iptux@Linux,打造内网跨平台IM环境
linux·运维·服务器·im·qq
保持低旋律节奏10 小时前
linux——调试
linux·运维·服务器
牛奶咖啡1310 小时前
Linux系统故障排查思路实践教程(下)
linux·运维·服务器·su命令切换用户问题解决·文件打开过多问题解决·linux网络故障问题解决·linux故障排查思路
xdxghy092111 小时前
mini centos7+k3s部署(镜像拉取解决版)
linux·运维·服务器·阿里云·运维开发
爱潜水的小L12 小时前
自学嵌入式day30,回收进程
java·linux·服务器
橘子真甜~14 小时前
C/C++ Linux网络编程13 - 传输层TCP协议详解(面向字节流和有连接)
linux·运维·服务器·c语言·网络·c++·tcp/ip
嘻哈baby14 小时前
systemd服务管理深入实践从入门到自定义服务
linux·服务器·网络