Redis安装

redis开发环境为linux和osx,不支持windows

linux下安装redis

Paste_Image.png

Redis的可执行文件说明

在redis的src目录下有5个可执行文件,如果编译过后使用make install命令,那么这些可执行文件在其他目录下都可以执行,否则只能到src目录下执行:./redis-server

可执行文件名 说明
reids-server Redis服务器
redis-cli reids命令行客户端
redis-benchmark redis性能测试工具
redis-check-aof AOF文件修复工具
redis-check-dump RDB文件修复工具

Redis支持数据类型

Paste_Image.png

Redis基本操作

Paste_Image.png
  • 关闭redis-cli客户端:exit

启动和停止Redis

两种启动方式直接启动和通过初始化脚本启动Redis,分别适合开发环境和生产环境。

直接启动

$redis-server 

Redis服务器默认会使用6379端口,通过 --port参数可以自定义端口:

$redis-server --port 6380

通过初始化脚本启动Redis

通过初始化脚本启动Redis,使得redis能岁系统自动运行,在生产环境中推荐。

在Redis源代码目录的utils文件夹中有一个名为redis_init_script的初始化脚本文件,内容如下:

#!/bin/sh
#
# 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/${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

我们需要配置Redis运行方式和持久化文件、日志文件的存储位置等。具体如下:

  • 1.配置初始化脚本
    首先将初始化脚本复制到/etc/init.d目录中,文件名为“redis_端口号”,其中端口号表示要让Redis监听的端口号,客户端通过该端口连接Redis。然后修改脚本第六话的REDISPORT变量的值为同样的端口号。
  • 2.建立需要的文件夹
    需要建立的目录及说明
目录名 说明
/etc/redis 存放Redis的配置文件
/var/redis/端口号 存放Redis的持久化文件
/var/log/redis 日志路径
  • 3.修改配置文件

首先将配置文件模板redis.conf(位于原代码目录的根目录中)复制到/etc/redis目录中,以端口号命名(如"6379.conf"),然后下表对其中部分进行修改。

参数 说明
daemonize yes 使Redis以守护进程模式运行
pidfile /var/run/redis_端口号.pid 设置Redis的PID文件位置
port 端口号 设置Reids的监听端口号
dir /var/redis/端口号 设置持久化文件的存放位置
logfile /var/log/redis/redis.log 日志路径

现在就可以使用/etc/init.d/redis_端口号 start来启动Redis了。

#!/bin/sh
#chkconfig: 2345 80 90
#description:auto_run
  • 确保redis_6379具有执行权限: chmod 777 redis_6379
  • 再执行命令
chkconfig --add redis_6379

Redis命令行客户端

redis-cli是Redis自带的基于命令行的的Redis客户端。通过redis-cli学习和测试Redis.

介绍如果通过redis-clis向Redis发送命令,并且对Redis命令返回值得不同类型进行简单的介绍。

发送命令

  • 第一种将命令作为redis-cli的参数执行。

比如redis-cli SHUTDOWN。redis-cli执行时会自动默认配置(服务器127.0.0.1,端口6379)连接Redis,通过-h和-p参数可以自定义地址和端口号:


$redis-cli -h 127.0.0.1 -p 6379

  • 第二种不附带参数运行redis-cli.

这样会进入交互模式,可以自由输入命令

$redis-cli
3828bc77-1aa1-4b9e-8951-a5d10641f2e8.png

命令返回值

命令返回值有5种类型。
1.状态返回
2.错误回复
3.整数回复
4.字符串回复
5.多行字符串回复

配置

Redis的运行方式、持久化文件、日志文件的存储位置、绑定ip等都是可以配置的。

通过启动参数来设置。

通过参数port设置了Redis的端口号。
redis-server --port 6380

通过配置文件来设置

Redis支持通过配置文件来设置是否开启持久化、日志基本等。启用配置文件方法是在启动时将配置文件的路径作为启动参数传递给redis-server,如:

$ redis-server /path/to/redis.conf

Redis提供了一个配置文件的模板redis.conf,位于源代码目录的根目录中。
通过参数传递同名的配置选项会覆盖配置文件中相应的参数,如下:

$redis-server  /path/to/redis.conf  --loglevel warning

修改配置信息

在Redis运行时通过config set命令在不重新启动Redis的情况下动态修改部分Redis设置,如:

redis>CONFIG SET loglevel warning

并不是所有配置都可以使用CONFIG SET命令修改,附件B列出了哪些配置能够使用命令修改。

获取Redis当前配置

使用CONFIG GET命令, 如:

e21456b6-fb7a-4cc2-bc90-28579a30b43e.jpg

第一行字符串标识选项名,第二行是选项值。

多数据库

Redis是一个字典结构的存储服务器,一个Redis实例提供多个用来存储数据的字典,客户端可以指定将数据存储在哪个字典中。


1eaca247-2153-429f-8a79-3da4c6f097a4.jpg

18425a64-b00a-47bc-9912-9be37f8b120b.jpg
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,084评论 6 503
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,623评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 163,450评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,322评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,370评论 6 390
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,274评论 1 300
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,126评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,980评论 0 275
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,414评论 1 313
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,599评论 3 334
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,773评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,470评论 5 344
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,080评论 3 327
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,713评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,852评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,865评论 2 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,689评论 2 354

推荐阅读更多精彩内容