一、安装gcc
1、Redis在linux上的安装首先必须先安装gcc,这个是用来编译redis的源文件的。首先需要先切换的到root用户:
[cheny@localhost ~]$ su
Password:
[root@localhost cheny]#
2、然后开始安装gcc:
[root@localhost /]# yum install gcc-c++
//这个命令是在线安装的,所以在这之前你的VM必须能够上网,需要在 VM中把网卡设置成NAT模式 ,因为我使用的是centos,在网络设置中需要把网卡开启,反正我在装完系统之后它是默认关闭的
3、之后便会出现下载文件界面:
4、会出现2次确认界面,输入y即可
5、之后会进行更新检查,进行更新验证等等操作,等他自动完成即可。
6、出现如下代码即是安装成功:
Installed:
gcc-c++.x86_64 0:4.8.5-11.el7
Dependency Installed:
cpp.x86_64 0:4.8.5-11.el7
gcc.x86_64 0:4.8.5-11.el7
glibc-devel.x86_64 0:2.17-157.el7_3.5
glibc-headers.x86_64 0:2.17-157.el7_3.5
kernel-headers.x86_64 0:3.10.0-514.26.2.el7
libmpc.x86_64 0:1.0.1-3.el7
libstdc++-devel.x86_64 0:4.8.5-11.el7
Dependency Updated:
glibc.x86_64 0:2.17-157.el7_3.5
glibc-common.x86_64 0:2.17-157.el7_3.5
Complete!
二、解压redis的源文件
[root@localhost cheny]# wget http://download.redis.io/releases/redis-4.0.1.tar.gz
[root@localhost Desktop]# ls
redis-4.0.1.tar.gz
[root@localhost Desktop]# tar zxvf redis-4.0.1.tar.gz
redis-4.0.1/
redis-4.0.1/.gitignore
redis-4.0.1/00-RELEASENOTES
redis-4.0.1/BUGS
redis-4.0.1/CONTRIBUTING
.......等等
三、进入redis的解压目录
[root@localhost Desktop]# ls
redis-4.0.1 redis-4.0.1.tar.gz
[root@localhost Desktop]# cd redis-4.0.1/
四、使用make命令编译
[root@localhost redis-4.0.1]# make
//出现以下信息即是编译成功
CC notify.o
CC setproctitle.o
CC blocked.o
CC hyperloglog.o
CC latency.o
CC sparkline.o
CC redis-check-rdb.o
CC redis-check-aof.o
CC geo.o
CC lazyfree.o
CC module.o
CC evict.o
CC expire.o
CC geohash.o
CC geohash_helper.o
CC childinfo.o
CC defrag.o
CC siphash.o
CC rax.o
LINK redis-server
INSTALL redis-sentinel
CC redis-cli.o
LINK redis-cli
CC redis-benchmark.o
LINK redis-benchmark
INSTALL redis-check-rdb
INSTALL redis-check-aof
五、进入解压的src目录下
[root@localhost redis-4.0.1]# cd src
六、
1、运行make test测试是否可以安装
[root@localhost src]# make test
You need tcl 8.5 or newer in order to run the Redis test
make: *** [test] Error 1
2、在这里发现有错误
TCL(Tool Command Language)工具脚本语言,是Linux内的一种语言包。,这里需要先安装tcl。
1、先去这里下载:
http://downloads.sourceforge.net/tcl/tcl8.6.1-src.tar.gz
文件
2、然后将其拷贝至虚拟机
3、然后解压对于.tar.gz的后缀文件可以使用tar zxvf 。。。.tar.gz解压
tar zxvf tcl8.6.1-src.tar.gz
4、安装 Tcl
为编译 Tcl 做准备:
cd 到tcl文件夹里
[root@localhost Desktop]# cd tcl8.6.1/
cd unix
[root@localhost tcl8.6.1]# cd unix/
./configure
[root@localhost unix]# ./configure
编译软件包:
[root@localhost unix]# make
安装软件包:
[root@localhost unix]# make install
这个时候在命令行就可以输入tclsh进入tcl解释器
tcl就可以使用了。
继续我们的redis安装
3、再次测试make test
这里反正检查的一大堆,都是绿色的ok。这就可以了
4、安装
[root@localhost src]# make PREFIX=/usr/local/redis install
安装成功!
框框中标出的都是一个个工具命令
七、把解压的redis路径下的redis.conf文件拷贝到安装路径下面
[root@localhost Desktop]# cd redis-4.0.1/
[root@localhost redis-4.0.1]# ls
00-RELEASENOTES INSTALL runtest tests
BUGS Makefile runtest-cluster utils
CONTRIBUTING MANIFESTO runtest-sentinel
COPYING README.md sentinel.conf
deps redis.conf src
[root@localhost redis-4.0.1]# cp redis.conf /usr/local/redis
[root@localhost redis-4.0.1]# cd /usr/local/redis
[root@localhost redis]# ls
bin redis.conf
到这里redis已经安装成功了。
八、启动redis
第一种方法:进入安装路径下的bin
[root@localhost redis]# cd bin
[root@localhost bin]# ./redis-server
这样其实已经启动成功了,但是这属于前端启动,启动redis之后,我们的控制台就不能进行任何操作了。只能ctrl+c停止启动。
第二种方法:
后端启动
1、首先编辑redis.conf
[root@localhost redis]# vim redis.conf
2、找到daemonize no将其改为yes(在vim中插入数据按键盘上的i或者insert)
效果如下:
3、如果需要设置远程登陆,注释掉bind 127.0.0.1 或者将127.0.0.1修改为0.0.0.0
再将protected-mode 参数设置未no 以允许非本地IP进行连接
4、如果需要修改redis端口,则将port 修改为你想设置的端口即可
5、按esc退出insert模式,再按:,并且输入wq。代表保存并且退出
6、再次启动
[root@localhost redis]# ls
bin redis.conf
[root@localhost redis]# ./bin/redis-server ./redis.conf
//这里加载配置文件
80167:C 30 Jul 16:01:58.145 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
80167:C 30 Jul 16:01:58.145 # Redis version=4.0.1, bits=64, commit=00000000, modified=0, pid=80167, just started
80167:C 30 Jul 16:01:58.145 # Configuration loaded
这样redis就启动了
可以通过
ps -ef | grep -i redis
来查看是否启动
7、关闭redis
[root@localhost redis]# ./bin/redis-cli shutdown
九、简单的使用
//首先链接客户端
[root@localhost redis]# ./bin/redis-cli
//检查网络是否可以
127.0.0.1:6379> ping
PONG
//设置一个键值对
127.0.0.1:6379> set name cheny
OK
//获取刚刚设置的键值对
127.0.0.1:6379> get name
"cheny"
//查看所有的键
127.0.0.1:6379> keys *
1) "name"
//删除name这个键
127.0.0.1:6379> del name
(integer) 1
127.0.0.1:6379> keys *
(empty list or set)
127.0.0.1:6379>
----------
到这里简单的redis安装就好了
如果需要可以配置 redis 开机自启
将redis_init_script拷贝到/etc/init.d目录下并重命名为 redis
[root@instance-5prxhubg ~]# cp redis-4.0.1/utils/redis_init_script /etc/init.d/redis
[root@instance-5prxhubg ~]# cd /etc/init.d
[root@instance-5prxhubg init.d]# ls
bcm-agent functions hosteye mysqld netconsole network README redis
查看一下 redis 这个文件
[root@instance-5prxhubg init.d]# cat redis
#!/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
这个 shell 脚本中这五个参数十分重要
REDISPORT=6379 //redis的端口号
EXEC=/usr/local/bin/redis-server //redis服务位置
CLIEXEC=/usr/local/bin/redis-cli //redis 客户位置
PIDFILE=/var/run/redis_${REDISPORT}.pid //这个文件是 redis 启动后自动生成的,可用于检测 redis 是否启动。不能修改
CONF="/etc/redis/${REDISPORT}.conf" //redis 配置文件位置
对比我的配置可以看出 EXEC、CLIEXEC 和 CONF 这三个参数要修改:
EXEC=/usr/local/redis/bin/redis-server
CLIEXEC=/usr/local/redis/bin/redis-cli
CONF=/usr/local/redis/redis.conf
vim 修改并保存
[root@instance-5prxhubg init.d]# chkconfig --add redis
这里有可能会提示service redis does not support chkconfig 错误
把下面两行注释放在/etc/init.d/redis文件靠前的注释中即可
# chkconfig: 2345 90 10
# description: Redis is a persistent key-value database
[root@instance-5prxhubg init.d]# chkconfig
bcm-agent 0:关 1:关 2:开 3:开 4:开 5:开 6:关
hosteye 0:关 1:关 2:开 3:开 4:开 5:开 6:关
mysqld 0:关 1:关 2:开 3:开 4:开 5:开 6:关
netconsole 0:关 1:关 2:关 3:关 4:关 5:关 6:关
network 0:关 1:关 2:开 3:开 4:开 5:开 6:关
redis 0:关 1:关 2:开 3:开 4:开 5:开 6:关
重启 Linux
[root@instance-5prxhubg init.d]# reboot
查看 redis-server 进程是否存在
[root@instance-5prxhubg ~]# ps -ef | grep redis
root 1068 1 0 15:42 ? 00:00:01 /usr/local/redis/bin/redis-server 127.0.0.1:6379
root 6770 6485 0 15:58 pts/0 00:00:00 grep --color=auto redis
关闭 redis 服务
[root@instance-5prxhubg ~]# service redis stop
Stopping ...
Redis stopped
[root@instance-5prxhubg ~]# ps -ef | grep redis
root 10114 6485 0 16:01 pts/0 00:00:00 grep --color=auto redis
[root@instance-5prxhubg ~]#
ps: 测试的时候 中文乱码 需要再启动的时候加上--raw 参数
加参数后
原文链接: pj小小码农
原文链接: 周星猩