【学习笔记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-server和redis-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.conf到etc中
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

相关推荐
瑞克-桑切斯2 小时前
企业生产环境:https部署+nginx高可用(业务不中断)
linux·服务器·数据库
浩浩测试一下9 小时前
Linux 底层知识点 1
linux·运维·服务器
Eloudy9 小时前
全文 - IMEX 第01节 -IMEX overview
运维·服务器·网络
Escalating_xu10 小时前
【Linux 网络编程】TCP 跨平台实战:用 Windows 客户端访问 Linux 服务器
linux·服务器·网络
发量惊人的中年网工10 小时前
分公司访问总部ERP慢怎么办?SD-WAN组网的排查与验收要点
服务器·开发语言·php
翼龙云_cloud10 小时前
亚马逊云服务器服务代理商:Bedrock 实践经验 Serverless 架构下的 AI 自动化落地
服务器·架构·serverless·云计算·aws
忆挽篱笙歌10 小时前
环境变量,本地变量
linux·运维·服务器
张宇Joaquin13 小时前
AMD uProf 工具采集微架构特征使用介绍
服务器
老李IT笔记13 小时前
连不上不一定是网不好:新系统不认的服务端配置卡在哪一档
运维·服务器·网络
刚入门的大一新生14 小时前
Linux-进程池
linux·运维·服务器