温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

redis介绍以及安装

发布时间:2020-06-05 17:29:01 来源:网络 阅读:297 作者:zhu_my 栏目:关系型数据库

    前面2篇文章我们简单了解了memcached的安装以及结合php。现在我介绍另一个nosql键值数据库redis,通过学习查资料发现redis使用的场合比memcached多,功能也更加强大。下面会通过几篇文章慢慢介绍redis,让大家对redis有进一步的了解。


首先简单介绍一下redis

     1)redis是一个key-value存储系统,官方站点 http://redis.io;

     2)和memcached类似,但支持数据持久化;

     3)支持更多value类型,除了和string外,还支持hash、lists(链表)、sets(集合)和sorted sets(有序集合)几种数据类型;

     4)redis使用了两种文件格式:全量数据(RDB)和增量请求(aof)。全量数据格式是把内存中的数据写入磁盘,便于下次读取文件进行加载。增量请求文件则是把内存中的数据序列化为操作请求,用于读取文件进行replay得到数据;

     5)redis的存储分为内存存储、磁盘存储和log文件三部分。


接下来就是redis的安装

wget https://codeload.github.com/antirez/redis/tar.gz/2.8.21

mv 2.8.21  redis-2.8.21.tar.gz

tar zxvf redis-2.8.21.tar.gz

cd redis-2.8.21

yum install -y gcc epel-release  jemalloc-devel 

make  如果出错,运行如下命令:

cd deps; make hiredis lua jemalloc linenoise; cd..; make

make PREFIX=/usr/local/redis install

mkdir /usr/local/redis/etc


编写配置文件(大家网上搜一下都能找到)

vim /usr/local/redis/etc/redis.conf   //内容如下:

########


daemonize yes

pidfile /usr/local/redis/var/redis.pid

port 6379

timeout 300

loglevel debug

logfile /usr/local/redis/var/redis.log

databases 16

save 900 1

save 300 10

save 60 10000

rdbcompression yes

dbfilename dump.rdb

dir /usr/local/redis/var/

appendonly yes

appendfilename "appendonly.aof" 

appendfsync always

############

关于上述配置我会在接下来的文章中单独讲解redis的配置参数。


接着还要编辑启动脚本

vim /etc/init.d/redis

#########

#!/bin/sh

# redis        init file for starting up the redis daemon

# chkconfig:   - 20 80

# description: Starts and stops the redis daemon.

# Source function library.

. /etc/rc.d/init.d/functions

name="redis-server"

basedir="/usr/local/redis"

exec="$basedir/bin/$name"

pidfile="$basedir/var/redis.pid"

REDIS_CONFIG="$basedir/etc/redis.conf"

[ -e /etc/sysconfig/redis ] && . /etc/sysconfig/redis

lockfile=/var/lock/subsys/redis

start() {

    [ -f $REDIS_CONFIG ] || exit 6

    [ -x $exec ] || exit 5

    echo -n $"Starting $name: "

    daemon --user ${REDIS_USER-redis} "$exec $REDIS_CONFIG"

    retval=$?

    echo

    [ $retval -eq 0 ] && touch $lockfile

    return $retval

}

stop() {

    echo -n $"Stopping $name: "

    killproc -p $pidfile $name

    retval=$?

    echo

    [ $retval -eq 0 ] && rm -f $lockfile

    return $retval

}

restart() {

    stop

    start

}

reload() {

    false

}

rh_status() {

    status -p $pidfile $name

}

rh_status_q() {

    rh_status >/dev/null 2>&1

}

case "$1" in

    start)

        rh_status_q && exit 0

        $1

        ;;

    stop)

        ;;

    restart)

        $1

        ;;

    reload)

        rh_status_q || exit 7

        $1

        ;;

    force-reload)

        force_reload

        ;;

    status)

        rh_status

        ;;

    condrestart|try-restart)

        rh_status_q || exit 0

        restart

        ;;

    *)

        echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart}"

        exit 2

esac

exit $?

######################


最后创建用户并加入系统服务

useradd-s /sbin/nologin redis

mkdir /usr/local/redis/var

chmod777 /usr/local/redis/var    //var目录是用来存放pid文件以及log文件

chmod755 /etc/init.d/redis

chkconfig --add redis

service redis start


------后续会继续介绍redis的数据结构以及配置文件----------

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI