欢迎各位兄弟 发布技术文章

这里的技术是共享的

You are here

redis 下载 安装 开机自启动 有大用 有大大用 有大大大用

Installation

Download, extract and compile Redis with:

$ wget http://download.redis.io/releases/redis-4.0.9.tar.gz
$ tar xzf redis-4.0.9.tar.gz
$ cd redis-4.0.9
$ make

The binaries that are now compiled are available in the src directory. Run Redis with:

$ src/redis-server

You can interact with Redis using the built-in client:

$ src/redis-cli
redis> set foo bar
OK
redis> get foo
"bar"

Are you new to Redis? Try our online, interactive tutorial.


来自 https://redis.io/download


Linux下redis安装与使用


若下面 可能看不懂有疑问可以看看 /node-admin/11622


     redis官网地址:http://www.redis.io/

     最新版本:2.8.3

     Linux下安装Redis非常简单,具体步骤如下(官网有说明):

     1、下载源码,解压缩后编译源码。

$ wget http://download.redis.io/releases/redis-4.0.9.tar.gz

$ tar xzf redis-4.0.9.tar.gz

$ cd redis-4.0.9

$ make

     2、编译完成后,在Src目录下,有四个可执行文件redis-serverredis-benchmarkredis-cliredis.conf。然后拷贝到一个目录下。

mkdir /usr/redis

cp src/redis-server /usr/redis

cp src/redis-benchmark /usr/redis

cp src/redis-cli /usr/redis

cp /redis.conf /usr/redis

cd /usr/redis

     3、启动Redis服务。

$ redis-server redis.conf

     4、然后用客户端测试一下是否启动成功。

$ redis-cli

redis> set foo bar

OK

redis> get foo

"bar"

 

 

 

 

安装过程若出现 (参照: http://blog.csdn.net/luyee2010/article/details/18766911

wget http://downloads.sourceforge.net/tcl/tcl8.6.1-src.tar.gz

sudo tar xzvf tcl8.6.1-src.tar.gz -C /usr/local/

cd /usr/local/tcl8.6.1/unix/

sudo ./configure

sudo make

sudo make install

 

 

 

[html] view plaincopy

  1. vi /usr/redis/redis.conf  
  2. #查找daemonize no改为  
  3. #以守护进程方式运行  
  4. daemonize yes  
  5. #修改dir ./为绝对路径,  
  6. #默认的话redis-server启动时会在当前目录生成或读取dump.rdb  
  7. #所以如果在根目录下执行redis-server /usr/redis/redis.conf的话,  
  8. #读取的是根目录下的dump.rdb,为了使redis-server可在任意目录下执行  
  9. #所以此处将dir改为绝对路径  
  10. dir /usr/redis  
  11. #修改appendonlyyes  
  12. #指定是否在每次更新操作后进行日志记录,  
  13. #Redis在默认情况下是异步的把数据写入磁盘,  
  14. #如果不开启,可能会在断电时导致一段时间内的数据丢失。  
  15. #因为 redis本身同步数据文件是按上面save条件来同步的,  
  16. #所以有的数据会在一段时间内只存在于内存中。默认为no  
  17. appendonly yes  
  18. #redis添加到自启动中  
  19. echo "/usr/redis/redis-server /usr/redis/redis.conf" >> /etc/rc.d/rc.local  (这一步 好像可以不要)
  20. #启动redis  
  21. redis-server /usr/redis/redis.conf  
  22. #查看redis是否己启动  
  23. ps -ef | grep redis  

2>【开放redis端口】

[html] view plaincopy

  1. #关闭防火墙  
  2. service iptables stop  
  3. vi /etc/sysconfig/iptables  
  4. #添加  
  5. -A INPUT -m state --state NEW -m tcp -p tcp --dport 6379 -j ACCEPT  
  6. #重启防火墙  
  7. service iptables restart  

3>【安装phpredis扩展】

[html] view plaincopy

  1. tar -zxvf owlient-phpredis-2.1.1-1-g90ecd17.tar.gz  
  2. cd owlient-phpredis-90ecd17  
  3. /usr/local/php/bin/phpize  
  4. ./configure --with-php-config=/usr/local/php/bin/php-config  
  5. make  
  6. make install  
  7. #执行完make install后会生成  
  8. #Installing shared extensions:     /usr/local/php//lib/php/extensions/no-debug-non-zts-20060613/  
  9. #修改php.ini  
  10. vi /usr/local/php/etc/php.ini  
  11. #查找extension_dir,修改为  
  12. extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/"  
  13. #添加redis  
  14. extension = redis.so  
  15. #重启apache  
  16. service httpd restart  
知识塑造人生,程序缔造世界。 7年半工作经验,包括2年产品经验,5年半开发经验,半年团队经验。 深知最好的学习资料是官方提供文档以及经验积累。

来自  https://www.cnblogs.com/codersay/p/4301677.html


Redis加入Centos Linux开机启动

建一个文件   vi /etc/init.d/redisd   下面红色的字要注意


#!/bin/sh

#

# Simple Redis init.d script conceived to work on Linux systems

# as it does use of the /proc filesystem.

# chkconfig: 2345 10 90

# description: Start and Stop and restart redis

PATH=/usr/local/bin:/sbin:/usr/bin:/bin

REDISPORT=6379

EXEC=/usr/redis/redis-server

REDIS_CLI=/usr/redis/redis-cli

PIDFILE=/var/run/redis_${REDISPORT}.pid                       

CONF="/etc/redis.conf"                            

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 -p $REDISPORT -a $AUTH  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 



2、写完后保存退出VI

3、设置权限

chmod 755 redis

4、启动测试

/etc/init.d/redis start

启动成功会提示如下信息:

Starting Redis server...
Redis is running...

使用redis-cli测试:

[root@rk ~]# /usr/redisbin/redis-cli
127.0.0.1:6379> set foo bar
OK
127.0.0.1:6379> get foo
"bar"
127.0.0.1:6379> exit

6、设置开机自启动

chkconfig redisd on

7、关机重启测试

reboot

然后在用redis-cli测试即可。

  

# chkconfig: 2345 10 90

表示通过chkconfig配置,在linux中2、3、4、5项中启动,这个2345代表就linux系统的启动顺序具体,具体内容是:等级0表示:表示关机、等级1表示:单用户模式、等级2表示:无网络连接的多用户命令行模式、等级3表示:有网络连接的多用户命令行模式、等级4表示:不可用、 等级5表示:带图形界面的多用户模式、  等级6表示:重新启动

如果看不明白,自己百度 chkconfig命令详细说明。

# description: Start and Stop redis

上面一句是描述

PATH=/usr/local/bin:/sbin:/usr/bin:/bin

PATH是启动脚本使用的shell的搜索路径

REDISPORT=6379

REDISPORT指redis端口,启动redis使用

EXEC=/opt/redis-2.8.9/src/redis-server

安装redis后 redis-server的绝对路径,在启动redis时使用

REDIS_CLI=/opt/redis-2.8.9/src/redis-cli

redis连接程序绝对路径,在关闭redis时使用

PIDFILE=/var/run/redis.pid

redis.conf配置文件中指定的pid路径地址,这里说明一下,在 redis.conf配置文件中需要将 daemonize这个参数项设置为 yes才会在redis启动时生成pid文件,很多新人不知道,没有生成pid文件,所以脚本里根据pid文件关闭redis就失败。

CONF="/etc/redis.conf"

redis启动配置文件,启动使用

AUTH="1234"

如果redis设置了登录密码,就需要这个配置,具体看下面介绍stop的章节

 start)

                # 这里判断PID文件是否存在,如果存在,就说明reids启动中或者运行异常,因为redis启动后会创建一个pid文件,如果正常关闭就会删除这个pid文件

                if [ -f $PIDFILE ]

                then

                        echo "$PIDFILE exists, process is already running or crashed."

                else

                # 如果不存在pid文件,就启动reids,启动成功后提示 "Redis is running..."

                        echo "Starting Redis server..."

                        $EXEC $CONF

                fi

                if [ "$?"="0" ]

                then

                        echo "Redis is running..."

                fi

                ;;

  stop)

                # 在关闭reids的时候,如果pid文件不存在,就判断redis没有启动

                if [ ! -f $PIDFILE ]

                then

                        echo "$PIDFILE exists, process is not running."

                else

                ## -- 如果存在pid文件,就获取pid编号,然后登录到redis中,输入SHUTDOWN 来停止redis服务

                        PID=$(cat $PIDFILE)

                        echo "Stopping..."

                     ## -- 本节例子是redis有设置登录密码的例子,如果没有登录密码,下面的命令就去掉-a $AUTH : $REDIS_CLI -p $REDISPORT  SHUTDOWN 

                        $REDIS_CLI -p $REDISPORT -a $AUTH  SHUTDOWN 

                        sleep 1

                     ## -- 循环判断pid文件是否存在,这里用的是是否可执行,道理一样,理解为程序是否停止就可以了,直到pid文件删除后,就说明redis关闭了。

                        while [ -x $PIDFILE ]

                        do

                echo "Waiting for Redis to shutdown..."

                                sleep 1

                        done

                        echo "Redis stopped"

                fi

                ;;

最后说几个可能遇到的问题:

1. 如果启动脚本提示某个文件找不到,说明我们文件里的内容有误:比如 cat $(PIDFILE)  -x ${PIDFILE} 如果这些写在正常的指令或者字符串中正常,但是在判断表达式[]中就会出错

2 .如果找不到pid文件,需要配置redis.conf配置中的选项打开。

其实所以问题都是一点点的排查检查才能最终正确。保持耐心和细心就可以了。 

来自  https://www.cnblogs.com/yangcb/p/5775790.html 


Linux上Redis加入服务(开机自启)

网上有很多这些文章,但是都不完整,我自己实践成功让redis开机自动启动。

一.先下载解压redis,然后进入utils目录 
这里写图片描述

二.打开文件redis_init_script 
这里写图片描述

三.根据实际环境重新写路径,注意最后的两行蓝色注释要加上。PIDFILE先去/var/run看看有没有redis开头的pid文件,没有的话先去redis-3.2.5/src下执行 ./redis-server ../redis.conf 手动启动redis,然后pid结尾的文件就会生成。 
这里写图片描述

四.将redis_init_script 脚本拷贝到 /etc/init.d 下 修改名字为 redis 
这里写图片描述

这里写图片描述 
五. chmod +x /etc/init.d/redis 修改读写权限

六.重新回来redis目录打开redis.conf,修改如下图,no改成yes 
这里写图片描述

六.尝试启动或停止redis 
service redis start 
service redis stop

七. 开启服务自启动 
chkconfig redis on

八.加入开机自启服务 
chkconfig –add redis

大功完成!机器重启就会看到redis已经启动了

这里写图片描述

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/lovejj1994/article/details/53096268

来自  https://blog.csdn.net/lovejj1994/article/details/53096268



redis linux下的开机启动

redis linux下的环境搭建  http://www.cnblogs.com/zsg88/p/8321644.html

安装完redis-4.0.1后设置linux开机自启动。  

 1.在redis/utils找到redis_init_script 将它拷贝到  /etc/init.d 目录并重命名为redis

cd /etc/init.d

cp /usr/local/programs/redis4/utils/redis_init_script  redis

 

2.编辑redis脚本

vi redis

做以下修改

(1)在脚本的第一行后面添加一行内容如下:

#chkconfig: 2345 80 90 
注册服务时需要

(2) 请根据自己的安装目录修改以下5个参数的实际路径

REDISPORT=6379 #端口

EXEC=/usr/local/bin/redis-server #启动服务的命令路径

CLIEXEC=/usr/local/bin/redis-cli #客户端路径

PIDFILE=/var/run/redis_${REDISPORT}.pid #记录pid(进程id)文件路径

CONF="/etc/redis/${REDISPORT}.conf" #配置文件路径

修改后如下

REDISPORT=6379
EXEC=/usr/local/programs/redis4/bin/redis-server
CLIEXEC=/usr/local/programs/redis4/bin/redis-cli

PIDFILE=/var/run/redis_6379.pid
CONF="/usr/local/programs/redis4/redis_6379.conf"

确认以上目录路径存在,不存在则建立目录

(3)更改 redis 开启的命令,以后台运行的方式执行:

 $EXEC $CONF &    #“&”作用是将服务转到后面运行

 

3.以上配置操作完成后,便可将 Redis 注册成为服务: 

# chkconfig --add redis 

查看开机自启的服务中是否已经有我们的redis
chkconfig --list redis 

 

4.打开防火墙端口

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

#将更改进行保存
/etc/rc.d/init.d/iptables save
#重启防火墙以便改动生效:(或者直接重启系统)
/etc/init.d/iptables restart

 

5.修改 redis 配置文件设置:

将redis.conf 拷贝一份命名成 端口+“.conf” ,对应启动脚本里的配置文件名称

cp redis.conf conf/6379.conf

cd conf

vi 6379.conf
修改如下配置 
daemonize no 改为 daemonize yes 
pidfile /var/run/redis.pid 改为成和自启动脚本里的路径一致 pidfile /var/run/redis_6379.pid

 

6.启动 Redis 服务 
# service redis start

 

7.停止 Redis 服务

# service redis stop


来自 https://www.cnblogs.com/zsg88/p/8323475.html



Linux下安装配置redis并设置自动启动

1.首先下载redis到本地,解压 
2.进入解压后的文件夹内安装

[root@localhost /]# cd redis
[root@localhost /]# make
.................................................(各种安装信息)
[root@localhost /]# make install
.................................................(各种安装信息)
  • 1

  • 2

  • 3

  • 4

  • 5

3.复制目录下的配置文件到/etc

[root@localhost /]# cp redis.conf /etc/  
  • 1

4.修改配置文件将redis设置为后台运行, 将配置文件中daemonize为yes

[root@localhost /]# vim /etc/redis.conf  
  • 1

将配置文件中daemonize为yes

5.配置自动启动

[root@localhost /]# vim /etc/inti.d/redis  
  • 1

将下面内容复制进去

#!/bin/sh
# chkconfig:2345 80 90
# Simple Redis init.d script conceived to work on Linux systems
# as it does use of the /proc filesystem.

REDISPORT=6379
EXEC=/usr/local/bin/redis-server
CLIEXEC=/usr/local/bin/redis-cli

PIDFILE=/var/run/redis_${REDISPORT}.pid
CONF="/etc/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
        ;;
    stop)
        if [ ! -f $PIDFILE ]
        then
                echo "$PIDFILE does not exist, process is not running"
        else
                PID=$(cat $PIDFILE)
                echo "Stopping ..."
                $CLIEXEC -p $REDISPORT shutdown
                while [ -x /proc/${PID} ]
                do
                    echo "Waiting for Redis to shutdown ..."
                    sleep 1
                done
                echo "Redis stopped"
        fi
        ;;
    *)
        echo "Please use start or stop as first argument"
        ;;
esac
  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

  • 11

  • 12

  • 13

  • 14

  • 15

  • 16

  • 17

  • 18

  • 19

  • 20

  • 21

  • 22

  • 23

  • 24

  • 25

  • 26

  • 27

  • 28

  • 29

  • 30

  • 31

  • 32

  • 33

  • 34

  • 35

  • 36

  • 37

  • 38

  • 39

  • 40

  • 41

  • 42

  • 43

#设置权限
[root@localhost ~]# chmod 777 /etc/init.d/redis
#启动redis
[root@localhost ~]# service redis start

来自  https://blog.csdn.net/smallblood/article/details/78693885


【菜鸟玩Linux开发】Redis安装和自启动配置

Redis是一个C实现的基于内存、可持久化的键值对数据库,在分布式服务中常作为缓存服务。本篇将介绍在CentOS下如何从零开始安装到配置启动服务。

一. 安装Redis

Redis的安装其实相当简单,推荐的方式是下载redis的源码,并在本机编译后安装。

首次进入主文件夹的下载目录下,执行wget下载源码

[zhxilin@localhost ~]$ cd 下载
[zhxilin@localhost 下载]$ wget http://download.redis.io/redis-stable.tar.gz

接下来解压之后,移动到/usr/redis目录下

[zhxilin@localhost 下载]$ tar -zxvf redis-stable.tar.gz 
[zhxilin@localhost 下载]$ su mv redis-stable /usr/redis

然后进入redis目录,执行make命令,编译redis源码

[root@localhost 下载]# cd /usr/redis/
[root@localhost redis]# make

编译完成之后,在src目录下有2个重要程序生成,一个是redis-server,另一个是redis-cli;接着进入src目录,执行make install,这时会把这些可执行程序拷贝到/usr/local/bin目录下,由于/usr/local/bin是在系统的环境变量$PATH下定义的,因此终端在任意位置就可以执行redis-server和redis-cli了。

[root@localhost redis]# cd src/
[root@localhost src]# make install

至此安装redis的工作就完成了。

我们来看看编译出来的几个程序分别是干什么的:

redis-server:顾名思义,redis服务

redis-cli:redis client,提供一个redis客户端,以供连接到redis服务,进行增删改查等操作

redis-sentinel:redis实例的监控管理、通知和实例失效备援服务

redis-benchmark:redis的性能测试工具

redis-check-aof:若以AOF方式的持久化,当意外发生时用来快速修复

redis-check-rdb:若以RDB方式的持久化,当意外发生时用来快速修复

 

安装完成之后,启动redis-server,并运行redis-cli进行测试

[zhxilin@localhost ~]$ redis-server
[zhxilin@localhost ~]$ redis-cli 
127.0.0.1:6379> PING
PONG
127.0.0.1:6379> 

如此说明redis服务已经正常工作,如果redis服务未启动,则运行redis-cli时会报Could not connect to Redis at 127.0.0.1:6379: Connection refused的错误。

 

二. 配置自启动

为了让redis-server能在系统启动时自动运行,需要将redis服务作为守护进程(daemon)来运行,我们回到/usr/redis/目录中找到一个redis.conf的文件,这个文件是redis服务运行时加载的配置,我们先观察一下其中的内容

[zhxilin@localhost redis]$ vi redis.conf 

此文件内容非常长,但是大部分是注释,我们重点关注其中的几个设置daemonizepidfile

其中daemonize默认值是false,pidfile默认值是pidfile /var/run/redis_6379.pid

第一个表示是否daemon化,显然我们要把它改成daemonize yes;

第二个表示当服务以守护进程方式运行时,redis默认会把pid写入/var/run/redis_6379.pid文件,服务运行中该文件就存在,服务一旦停止该文件就自动删除,因而可以用来判断redis是否正在运行

保存后退出。

有了基本配置,redis还需要有一个管理启动、关闭、重启的一个脚本。redis源码里其实已经提供了一个初始化脚本,位置在/usr/redis/utils/redis_init_script

我们来看看这个脚本做了些什么:

复制代码
#!/bin/sh#

REDISPORT=6379
EXEC=/usr/local/bin/redis-server
CLIEXEC=/usr/local/bin/redis-cli

PIDFILE=/var/run/redis_${REDISPORT}.pid
CONF="/etc/redis/${REDISPORT}.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
        ;;
    stop)
        if [ ! -f $PIDFILE ]
        then
                echo "$PIDFILE does not exist, process is not running"
        else
                PID=$(cat $PIDFILE)
                echo "Stopping ..."
                $CLIEXEC -p $REDISPORT shutdown
                while [ -x /proc/${PID} ]
                do
                    echo "Waiting for Redis to shutdown ..."
                    sleep 1
                done
                echo "Redis stopped"
        fi
        ;;
    *)
        echo "Please use start or stop as first argument"
        ;;
esac
复制代码

脚本中指定了端口、server路径、cli路径、pidfile路径以及conf路径,上述标黄的地方都需要正确配置,多说一句,如果在安装时执行了make install,那么这里的脚本不需要做多大改动,因为make install把server和cli都拷到/usr/local/bin下面了。

另外看到这里conf的路径,我们需要把redis目录下的redis.conf文件拷贝到/etc/redis/6379.conf

[root@localhost utils]# cd /etc
[root@localhost etc]# mkdir redis
[root@localhost etc]# cp /usr/redis/redis.conf /etc/redis/6379.conf 

接着将redis_init_script脚本拷贝到/etc/init.d/redisd

[root@localhost etc]# cp /usr/redis/utils/redis_init_script /etc/init.d/redisd 

在/etc/init.d下的脚本都是可以在系统启动是自动启动的服务,而现在还缺一个系统启动时的配置:

[root@localhost zhxilin]# chkconfig redisd on

然后就会发现报了一个错误:服务 redisd 不支持 chkconfig ?

参考这篇文章, 这是因为我们需要在redis_init_script的开头加一个小改动:

#!/bin/sh
# chkconfig: 2345 90 10
# description: Redis is a persistent key
-value database

至于这里2345 90 10分别代表什么意思,请参考上面的文章链接。

保存完重新拷贝到/etc/init.d/redisd后,再运行chkconfig就完成了。

 

一切就绪之后,可以执行以下命令检验service是否设置成功:

[root@localhost zhxilin]# service redisd start 
[root@localhost zhxilin]# service redisd stop

等价于

[root@localhost zhxilin]# /etc/init.d/redisd start 
[root@localhost zhxilin]# /etc/init.d/redisd stop

 

最后重启一下系统吧,进入系统之后直接运行redis-cli检验redis服务是否已经自动运行了。

 

Ref:

http://wdxtub.com/2016/07/05/redis-guide/

来自  https://www.cnblogs.com/zhxilin/p/5892678.html

普通分类: