在本章中,您将了解和学习Redis的环境安装设置。
一、RedHat 6.0 自定义安装
1、创建redis用户
Redis 默认的安装路径是/usr/local/redis,并且安装是root用户。
为安装在自定义的目录下,首先创建一个redis用户,并且修改密码。
[root@localhost home]# useradd -d /home/redis -g redis -m redis
[root@localhost /]# passwd redis
Changing password for user redis.
New password:
2、下载redis安装包
目前,redis官方的最新版本的是Redis 3.2.8版本。
下载完毕后使用tar命令解压到当前目录。
[redis@localhost ~]$ wget http://download.redis.io/releases/redis-3.2.8.tar.gz
[redis@localhost ~]$ tar zxvf redis-3.2.8.tar.gz
3、编译redis
进入安装目录下,执行make命令,编译成功后会显示下面内容。
编译后在目录下生成一个src目录,里面会有编译好的执行文件
[redis@localhost ~]$ cd redis-3.2.8
[redis@localhost redis-3.2.8]$ make
cd src && make all
make[1]: Entering directory `/home/redis/redis-3.2.8/src'
Hint: It's a good idea to run 'make test' ;)
make[1]: Leaving directory `/home/redis/redis-3.2.8/src'
4、安装redis(安装到redis用户下)
进入src目录下,使用vi编辑Makefile文件,在文件中找到“PRIFIX?=/usr/local”,修改为你需要安装的目录,这里使用局对路径。
然后执行make install命令进行安装,安装完毕后会在安装目录下生成一些执行文件。
[redis@localhost src]$ make install
Hint: It's a good idea to run 'make test' ;)
INSTALL install
INSTALL install
INSTALL install
INSTALL install
INSTALL install
[redis@localhost bin]$ pwd
/home/redis/redis_home/bin
[redis@localhost bin]$ ls
dump.rdb redis-check-aof redis-cli redis-server
redis-benchmark redis-check-rdb redis-sentinel
5、编辑环境变量
在 .bash_profile文件中,注册下面的环境变量,注册后可以在任何位置直接执行redis-server命令。
在REDIS_HOME目录下创建一个conf目录,把启动Redis的conf文件放在里面。
redis.conf文件在redis-3.2.8的源码目录里面。
export REDIS_HOME=/home/redis/redis_home
export PATH=${REDIS_HOME}/bin:${PATH};
[redis@localhost conf]$ pwd
/home/redis/redis_home/conf
[redis@localhost conf]$ ls
redis.conf
二、如何启动Redis
Redis 启动很简单,直接在任意位置执行redis-server命令即可,但是由于没有运行在后台,关闭终端后Redis的进程会终止。
因此,需要对Redis的启动进行设置,使用vi编辑redis.conf文件,找到daemonize属性,把后面的no修改为yes后保存。
在redis-server的后面指定redis.conf的路径就可以了。
[redis@localhost conf]$ redis-server
21209:C 29 Apr 02:32:54.052 # Warning: no config file specified, using the default config. In order to specify a config file use redis-server /path/to/redis.conf
21209:M 29 Apr 02:32:54.052 # You requested maxclients of 10000 requiring at least 10032 max file descriptors.
21209:M 29 Apr 02:32:54.052 # Server can't set maximum open files to 10032 because of OS error: Operation not permitted.
21209:M 29 Apr 02:32:54.052 # Current maximum open files is 1024. maxclients has been reduced to 992 to compensate for low ulimit. If you need higher maxclients increase 'ulimit -n'.
_._
_.-``__ ''-._
_.-`` `. `_. ''-._ Redis 3.2.8 (00000000/0) 64 bit
.-`` .-```. ```\/ _.,_ ''-._
( ' , .-` | `, ) Running in standalone mode
|`-._`-...-` __...-.``-._|'` _.-'| Port: 6379
| `-._ `._ / _.-' | PID: 21209
`-._ `-._ `-./ _.-' _.-'
|`-._`-._ `-.__.-' _.-'_.-'|
| `-._`-._ _.-'_.-' | http://redis.io
`-._ `-._`-.__.-'_.-' _.-'
|`-._`-._ `-.__.-' _.-'_.-'|
| `-._`-._ _.-'_.-' |
`-._ `-._`-.__.-'_.-' _.-'
`-._ `-.__.-' _.-'
`-._ _.-'
`-.__.-'
21209:M 29 Apr 02:32:54.053 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.
21209:M 29 Apr 02:32:54.053 # Server started, Redis version 3.2.8
21209:M 29 Apr 02:32:54.053 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.
21209:M 29 Apr 02:32:54.054 * DB loaded from disk: 0.000 seconds
21209:M 29 Apr 02:32:54.054 * The server is now ready to accept connections on port 6379
下面是在$REDIS_HOME/conf目录下,以deamon的方式执行redis-server。
可以看到TCP=127.0.0.1,PORT=6379,这两个参数都可以在redis.conf中进行修改。
[redis@localhost conf]$ redis-server redis.conf
[redis@localhost conf]$ ps -ef | grep redis
root 20887 20647 0 02:20 pts/1 00:00:00 su - redis
redis 20888 20887 0 02:20 pts/1 00:00:00 -bash
redis 21322 1 0 02:42 ? 00:00:00 redis-server 127.0.0.1:6379
redis 21330 20888 0 02:42 pts/1 00:00:00 ps -ef
redis 21331 20888 0 02:42 pts/1 00:00:00 grep redis
三、使用客户端连接Redis
在$REDIS_HOME/bin目录下,有名为redis-cli的客户端程序。
到此为止,Redis3.2.8的安装就完成了,下面就可以学习如何使用了。
[redis@bogon ~]$ redis-cli
127.0.0.1:6379> ping
PONG
127.0.0.1:6379>