CentOS7下怎么用非root用户安装Redis并运行
这篇文章主要介绍"CentOS7下怎么用非root用户安装Redis并运行",在日常操作中,相信很多人在CentOS7下怎么用非root用户安装Redis并运行问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"CentOS7下怎么用非root用户安装Redis并运行"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
1、基本环境信息
1.1、环境信息
序号 | ID | 版本 |
---|---|---|
1 | 操作系统 | CentOS7 |
2 | redis | 5.0.12 |
1.2、redis下载地址
redis下载地址:
我们这里使用的是5.0.12
2、安装
2.1、新建redis普通用户
1)、使用root登录我们的系统
2)、新建组:groupadd redisgroup
3)、新建用户:useradd -g redisgroup redis
4)、设置密码:passwd redis 自己输入密码即可
groupadd redisgroupuseradd -g redisgroup redispasswd redis
2.2、上传安装包并解压
1)、使用root用户,新建目录:mkdir -p /usr/local/src/redis
2)、解压压缩包:tar -zxvf redis-5.0.12.tar.gz
如下:
mkdir -p /usr/local/src/redistar -zxvf redis-5.0.12.tar.gz
2.3、新建目录
切换到redis用户,在用户目录下新建文件夹:redis
mkdir rediscd redismkdir datamkdir etc
2.4、编译并安装
使用root用户操作
1)、编译:cd redis-5.0.12
make
2)、安装:
make install PREFIX=/home/redis/redis
3、配置
3.1、将配置文件复制到redis用户下面
1)、将
/usr/local/src/redis/redis-5.0.12
下的redis.conf
文件复制到/home/redis/redis/etc
目录下2)、如果复制不了就用root赋权限,chmod 777 redis.conf
3)、复制过来之后,改一下文件的所属组和用户
chown redis redis.confchgrp redisgroup redis.conf
3.2、配置Redis的配置文件
修改配置文件我们主要修改三个地方:
1)、修改为后台运行
2)、修改支持其他机器连接
下面的三个键值,直接在配置文件中修改即可
# yes-后台模式运行,no-前台模式运行,默认daemonize yes# 下面的这里给注释掉,默认是放开的#bind 127.0.0.1# 下面的这个值改为no,默认是yesprotected-mode no
4、编写启动脚本,并启动
4.1、编写管理脚本
1)、使用
redis
用户登录,我们在用户目录下新建一个目录bin
2)、在
bin
目录下新建一个redctl
脚本,并授予可执行的权限,chmod a+x redisctl
3)、将
~/bin
目录加到用户的环境变量中去修改用户目录下的
.bash_profile
文件,在倒数第二行增加
PATH=$PATH:~/bin
完整内容如下:
# .bash_profile# Get the aliases and functionsif [ -f ~/.bashrc ]; then. ~/.bashrcfi# User specific environment and startup programsPATH=$PATH:$HOME/.local/bin:$HOME/binPATH=$PATH:~/binexport PATH
编写的redctl脚本,支持redis启动,停止,重启以及状态查看,详细内容如下:
redctl
#!/bin/bash#check paramif [ $# -lt 1 ]; thenecho "USAGE: redctl start|stop|restart|status"exit 8fipid=0ACTION=$1REDIS_HOME=$HOME/redis# Here define some functiongetpid(){pid=`ps -ef | grep redis-server | grep -v grep |awk '{print $2}'`}start(){getpidif [ ! -n "$pid" ]; thencd $REDIS_HOME/bin ./redis-server ../etc/redis.conf getpidif [ ! -n "$pid" ]; thenecho "redis-server start failed, please check your commond"elseecho "redis-server start success, PID: $pid"fielseecho "redis-server is running PID: $pid"fi}stop(){getpidif [ ! -n "$pid" ]; thenecho "redis-server is not running"elsekill -9 $pidecho "redis-server has been stopped"fi}restart(){stopsleep 1s start}status(){getpidif [ ! -n "$pid" ]; thenecho "redis-server is not running"elseecho "redis-server is running PID: $pid"fi}case $ACTION instart) start;;stop) stop;;restart) restart;;status) status;;*) echo "require start|stop|restart|status" ;;esac
4.2、启动服务并验证
依次执行,启动,查看状态,重启,停止,命令如下:
redctl start
redctl status
redctl restart
redctl stop
我们再次执行一下启动命令,将redis服务启动起来,
使用
redis-cli
连接上,尝试设置一些值,并查看所设置的值,如下:表示成功
5、可能遇到的问题
5.1、未安装gcc g++包
未安装gcc g++包的话,请自行安装
yum install -y gcc g++
到此,关于"CentOS7下怎么用非root用户安装Redis并运行"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!