redis在Linux上的安装

1 安装redis编译的c环境

输入命令: 注意yum安装必须联网

yum install gcc-c++

 如果提示是否需要下载输入y就可以开始下载。

2 redis安装

1 上传文件

2 解压文件到/usr/local下

tar -xvf redis-3.0.0.tar.gz -C /usr/local

3 编译redis(将.c文件编译成.o文件)

 1) 进入redis-3.0.0文件内部

2)执行make 进行编译 如果没有提前安装c环境这里就会直接报错

 

到这里就已经编译完成了。

4 安装

前提:必须要进入到redis-3.0.0

输入命令:记得要指定安装路径,不然安装之后不好找到。PREFIX:指定安装路径。

使用  make PREFIX=/usr/local/redis install         命令安装redis到/usr/local/redis中

5 测试前端启动

输入命令: 注意要是在bin目录下:

1
./redis-server

 

这就代表你的redis启动成功了。但是在这里不能操作。如果需要操作的话,还需要打开另外一个客户端。

 

往里面存储一个数据测试一下

使用ctrl+c停止前端模式

6 复制文件

进入到redis-3.0.0中复制redis.conf 到 redis/bin下面

 

使用命令:

cp -r redis.conf ../redis/bin

7 后端启动

直接运行bin/redis-servet将以前端模式启动,前端模式启动的缺点是启动完成后,

不能再进行其它操作,如果要操作必须使用ctrl+c强制结束,同时redis-servet

程序也就结束了,所以不推荐使用这种方法。

1.修改上一步复制到redis/bin/redis.conf配置文件,daemonize yes 以后端模式启动。

 执行下面的命令进入修改界面:

# vim /usr/local/redis/bin/redis.conf

修改前:

修改后:

然后启动服务直接指定使用刚刚修改后的配置文件

启动时,指定配置文件

8 后端启动关闭服务端

客户端命令行输入:shutdown就可以结束

3 redis使用

1 连接客户端

2 像redis服务器发送命令

4 开启远程连接

如需远程连接redis,需配置redis端口6379在linux防火墙中开发

/sbin/iptables -I INPUT -p tcp --dport 6379 -j ACCEPT

/etc/rc.d/init.d/iptables save

5 前端启动的一些问题

ps -ef | grep redis

6 目录结构

7 redis的图形化界面

打开后的界面如下:

点击创建一个连接

要想能够远程连接成功,需配置redis端口6379在linux防火墙中开发。前面的安装已经配置,所以这里就不需要配置了。

/sbin/iptables -I INPUT -p tcp --dport 6379 -j ACCEPT

/etc/rc.d/init.d/iptables save

点击Test Connection可以查看是否可以连接成功

可以看到一共有16个数据库

查看到添加的关键字和值:

添加新的关键字:

8 设置redis开机自启动

1 编写脚本

vim /etc/init.d/redis  

2 编辑脚本内容

复制下面代码到脚本中

注意需要修改里面的redis的安装路径

# chkconfig:   2345 90 10  
# description:  Redis is a persistent key-value database  

REDISPORT=6379
EXEC=/usr/local/redis/bin/redis-server
REDIS_CLI=/usr/local/redis/bin/redis-cli  
   
PIDFILE=/var/run/redis.pid  
CONF="/usr/local/redis/bin/redis.conf"  
   
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 does not exist, process is not running"  
        else  
                PID=$(cat $PIDFILE)  
                echo "Stopping ..."  
                $REDIS_CLI -a redispsw  -p $REDISPORT SHUTDOWN  
                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  

修改完成输入:wq保存退出。

特别需要注意的是:如果redis.conf的配置文件中开启了连接需要密码的话,

$REDIS_CLI -a redispsw  -p $REDISPORT SHUTDOWN

必须在stop 部分中告知你的密码,不然的话,停止redis的时候,会出现权限不足。

几个需要自己配置的地方解释一下:

#redis服务器监听的端口
REDISPORT=6379
#服务端所处位置
EXEC=/usr/local/redis/bin/redis-server
#客户端位置
CLIEXEC=/usr/local/redis/bin/redis-cli
#Redis的PID文件位置(redis启动之后再/var/run/目录下面会有一个redis.pid的文件,redis停止之后这个文件就没有了)
PIDFILE=/var/run/redis.pid
#配置文件位置,需要修改 [也就是后端启动指定的配置文件的位置]
CONF="/usr/local/redis/bin/redis.conf"

3 修改权限

[root@admin init.d]# chmod a+x /etc/init.d/redis

给予所有的用户执行权限。

4 设置开机自启动

# chkconfig redis on   设置开机自启动

如果想要取消开机自启动的话使用下面的命令

# chkconfig redis off   取消开机自启动

5 redis服务启动/停止/重启

#  service redis start           启动redis服务
#  service redis restart         重启redis服务
#  service redis stop            关闭redis服务

9  查看redis是否开机自启动

[root@admin ~]# chkconfig | grep redis --color

10 redis常见的几个配置项

daemonize yes  是否作为守护进程,yes表示作为守护进程可以后端启动 no则不行

port 6379             redis的端口号6379

bind 0.0.0.0          开启远程访问

logfile "/var/redis/redis.log"            配置日志文件的位置,默认是当前位置

databases 16              数据库的个数,默认16个

RDB持久化策略

save 900 1               after 900 sec (15 min) if at least 1 key changed
save 300 10            after 300 sec (5 min) if at least 10 keys changed
save 60 10000         after 60 sec if at least 10000 keys changed

dbfilename dump.rdb    RDB持久化策略的持久化文件名

dir /var/redis            持久化文件的存储位置  默认是当前位置 dir ./

requirepass  yourpassword        配置密码  后面就是密码   

AOF持久化策略:可以和RDB策略配合使用

appendonly yes      yes表示开启AOF持久化,no表示关闭  默认是no关闭的

# appendfsync always          
appendfsync everysec
# appendfsync no

原文地址:https://www.cnblogs.com/lywJ/p/10710441.html