1.redis缓存服务安装和测试存储数据(单redis服务,使用默认端口6379运行时)
1)在192.168.14.128上:(服务端)(安装redis服务,需要启动服务)
[root@bogon ~]# yum -y install gcc gcc-c++
[root@bogon ~]# ls
redis-2.6.14.tar.gz
[root@bogon ~]# tar -zxf redis-2.6.14.tar.gz
[root@bogon ~]# ls
redis-2.6.14 redis-2.6.14.tar.gz
[root@bogon ~]# cd redis-2.6.14
[root@bogon redis-2.6.14]# ls
00-RELEASENOTES COPYING Makefile redis.conf src
BUGS deps MANIFESTO runtest tests
CONTRIBUTING INSTALL README sentinel.conf utils
[root@bogon redis-2.6.14]# make MALLOC=jemalloc
[root@bogon redis-2.6.14]# make PREFIX=/usr/local/redis install
[root@bogon redis-2.6.14]# ls /usr/local/redis/
bin
[root@bogon redis-2.6.14]# ls /usr/local/redis/bin/
redis-benchmark redis-check-aof redis-check-dump redis-cli redis-server
[root@bogon redis-2.6.14]# tree /usr/local/redis/
/usr/local/redis/
└── bin
├── redis-benchmark
├── redis-check-aof
├── redis-check-dump
├── redis-cli
└── redis-server
[root@bogon redis-2.6.14]# mkdir /usr/local/redis/conf //优化目录结构
[root@bogon redis-2.6.14]# cp redis.conf /usr/local/redis/conf/ //配置其他功能可修改配置文件
[root@bogon redis-2.6.14]# echo "PATH=/usr/local/redis/bin/:$PATH" >> /etc/profile
[root@bogon redis-2.6.14]# . /etc/profile
[root@bogon redis-2.6.14]# which redis-server
/usr/local/redis/bin/redis-server
[root@bogon redis-2.6.14]# redis-server --help //可查看用法
[root@bogon redis-2.6.14]# redis-server /usr/local/redis/conf/redis.conf & #指定配置文件启动
[1] 5390
[root@bogon redis-2.6.14]# [5390] 19 Jun 21:07:07.674 * Max number of open files set to 10032
_._
_.-``__ ''-._
_.-`` `. `_. ''-._ Redis 2.6.14 (00000000/0) 64 bit
.-`` .-```. ```\/ _.,_ ''-._
( ' , .-` | `, ) Running in stand alone mode
|`-._`-...-` __...-.``-._|'` _.-'| Port: 6379
| `-._ `._ / _.-' | PID: 5390
`-._ `-._ `-./ _.-' _.-'
|`-._`-._ `-.__.-' _.-'_.-'|
| `-._`-._ _.-'_.-' | http://redis.io
`-._ `-._`-.__.-'_.-' _.-'
|`-._`-._ `-.__.-' _.-'_.-'|
| `-._`-._ _.-'_.-' |
`-._ `-._`-.__.-'_.-' _.-'
`-._ `-.__.-' _.-'
`-._ _.-'
`-.__.-'
[5390] 19 Jun 21:07:07.690 # Server started, Redis version 2.6.14
[5390] 19 Jun 21:07:07.692 # 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.
[5390] 19 Jun 21:07:07.692 * The server is now ready to accept connections on port 6379
如果内存不够,执行:“sysctl vm.overcommit_memory=1”命令,可以放到/etc/sysctl.conf中,也可在命令行执行。
[root@bogon redis-2.6.14]# pkill redis-server
[5390 | signal handler] (1466341687) Received SIGTERM, scheduling shutdown...
[root@bogon redis-2.6.14]# [5390] 19 Jun 21:08:07.442 # User requested shutdown...
[5390] 19 Jun 21:08:07.442 * Saving the final RDB snapshot before exiting.
[5390] 19 Jun 21:08:07.459 * DB saved on disk
[5390] 19 Jun 21:08:07.459 # Redis is now ready to exit, bye bye... 回车
[1]+ Done redis-server /usr/local/redis/conf/redis.conf
[root@bogon redis-2.6.14]# sysctl vm.overcommit_memory=1
vm.overcommit_memory = 1
[root@bogon redis-2.6.14]# echo "sysctl vm.overcommit_memory=1" >> /etc/sysctl.conf
[root@bogon redis-2.6.14]# redis-server /usr/local/redis/conf/redis.conf & #指定配置文件启动
[1] 3452
[root@bogon redis-2.6.14]# [3452] 18 Apr 21:19:01.030 * Max number of open files set to 10032
_._
_.-``__ ''-._
_.-`` `. `_. ''-._ Redis 2.6.14 (00000000/0) 64 bit
.-`` .-```. ```\/ _.,_ ''-._
( ' , .-` | `, ) Running in stand alone mode
|`-._`-...-` __...-.``-._|'` _.-'| Port: 6379
| `-._ `._ / _.-' | PID: 3452
`-._ `-._ `-./ _.-' _.-'
|`-._`-._ `-.__.-' _.-'_.-'|
| `-._`-._ _.-'_.-' | http://redis.io
`-._ `-._`-.__.-'_.-' _.-'
|`-._`-._ `-.__.-' _.-'_.-'|
| `-._`-._ _.-'_.-' |
`-._ `-._`-.__.-'_.-' _.-'
`-._ `-.__.-' _.-'
`-._ _.-'
`-.__.-'
[3452] 18 Apr 21:19:01.033 # Server started, Redis version 2.6.14
[3452] 18 Apr 21:19:01.034 * DB loaded from disk: 0.000 seconds
[3452] 18 Apr 21:19:01.034 * The server is now ready to accept connections on port 6379 回车
[root@bogon redis-2.6.14]# lsof -i :6379
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
redis-ser 3452 root 4u IPv4 22968 0t0 TCP *:6379 (LISTEN)
[root@bogon redis-2.6.14]# ps -ef |grep redis
root 3452 1406 0 21:19 pts/0 00:00:00 redis-server /usr/local/redis/conf/redis.conf
root 3461 1406 0 21:20 pts/0 00:00:00 grep redis
[root@bogon redis-2.6.14]# redis-cli shutdown
[root@bogon redis-2.6.14]# lsof -i :6379
无
[root@bogon redis-2.6.14]# ps -ef |grep redis
root 3465 1406 0 21:21 pts/0 00:00:00 grep redis
[root@bogon redis-2.6.14]# redis-server /usr/local/redis/conf/redis.conf &
[1] 3466
[root@bogon redis-2.6.14]# [3466] 18 Apr 21:22:20.473 * Max number of open files set to 10032
_._
_.-``__ ''-._
_.-`` `. `_. ''-._ Redis 2.6.14 (00000000/0) 64 bit
.-`` .-```. ```\/ _.,_ ''-._
( ' , .-` | `, ) Running in stand alone mode
|`-._`-...-` __...-.``-._|'` _.-'| Port: 6379
| `-._ `._ / _.-' | PID: 3466
`-._ `-._ `-./ _.-' _.-'
|`-._`-._ `-.__.-' _.-'_.-'|
| `-._`-._ _.-'_.-' | http://redis.io
`-._ `-._`-.__.-'_.-' _.-'
|`-._`-._ `-.__.-' _.-'_.-'|
| `-._`-._ _.-'_.-' |
`-._ `-._`-.__.-'_.-' _.-'
`-._ `-.__.-' _.-'
`-._ _.-'
`-.__.-'
[3466] 18 Apr 21:22:20.479 # Server started, Redis version 2.6.14
[3466] 18 Apr 21:22:20.483 * DB loaded from disk: 0.000 seconds
[3466] 18 Apr 21:22:20.483 * The server is now ready to accept connections on port 6379
[root@bogon redis-2.6.14]# ps -ef |grep redis
root 3466 1406 0 21:22 pts/0 00:00:00 redis-server /usr/local/redis/conf/redis.conf
root 3470 1406 0 21:23 pts/0 00:00:00 grep redis
//以上redis服务安装成功
注意事项1:
1)若配置文件里改成在后台运行(yes),启动时候才能将pid号保存到配置文件指定文件,那么启动时候不用加&选项。若配置文件不是指定在后台运行(是no),那么即使配置文件指定了存放pid号的文件,该文件里也不会有pid号.
2)若默认端口号改成其他端口号,客户端连接时候需要指定端口号才能连接。
[root@bogon ~]# vim /usr/local/redis/conf/redis.conf
daemonize no #默认情况下,redis不是在后台运行的,如果需要在后台运行,把该项的值更改为yes
pidfile /var/run/redis.pid #当redis在后台运行时(yes时),redis默认会把pid文件放在/var/run/redis.pid,也可配置到其他地址
port 6379 #默认端口号,也可修改为其他,若改为其他,则客户端登录时需指定端口号
注意事项2:redis可以设置密码,让客户端指定密码才能连接:客户端不指定密码,看似能连上,但用keys * 查不到数据
#vim ...redis.conf
requirepass Duyao001 #密码设置为Duyao001
此后客户端连接redis服务器时候,需要指定密码才能连接上,#redis-cli -h redis服务ip -p 端口号 -a Duyao001(密码)
2)本地测试存储数据和获得数据:(redis-cli客户端测试)
[root@bogon redis-2.6.14]# redis-cli 或者:redis-cli -h 192.168.14.128 -p 6379
redis 192.168.14.128:6379> set key1 001
OK
redis 192.168.14.128:6379> set key2 002
OK
redis 192.168.14.128:6379> get key1
"001"
redis 192.168.14.128:6379> get key2
"002"
redis 192.168.14.128:6379> del key1
(integer) 1
redis 192.168.14.128:6379> get key1
(nil)
redis 192.168.14.128:6379> quit
3)其他机器192.168.14.129上:作为客户端测试存储数据和获得数据:(redis-cli客户端测试,也需要安装redis,利用里面的客户端工具redis-cli,但不需要启动redis服务)
[root@localhost ~]# yum -y install gcc gcc-c++
[root@localhost ~]# ls
redis-2.6.14.tar.gz
[root@localhost ~]# tar -zxf redis-2.6.14.tar.gz
[root@localhost ~]# ls
redis-2.6.14 redis-2.6.14.tar.gz
[root@localhost ~]# cd redis-2.6.14
[root@localhost redis-2.6.14]# ls
00-RELEASENOTES COPYING Makefile redis.conf src
BUGS deps MANIFESTO runtest tests
CONTRIBUTING INSTALL README sentinel.conf utils
[root@localhost redis-2.6.14]# make MALLOC=jemalloc
[root@localhost redis-2.6.14]# make PREFIX=/usr/local/redis install
[root@localhost redis-2.6.14]# ls /usr/local/redis/
bin
[root@localhost redis-2.6.14]# ls /usr/local/redis/bin/
redis-benchmark redis-check-aof redis-check-dump redis-cli redis-server
[root@localhost redis-2.6.14]# echo "PATH=/usr/local/redis/bin/:$PATH" >> /etc/profile
[root@localhost redis-2.6.14]# . /etc/profile
[root@localhost redis-2.6.14]# redis-cli -h 192.168.14.128 -p 6379
redis 192.168.14.128:6379> set key5 005
OK
redis 192.168.14.128:6379> set key6 006
OK
redis 192.168.14.128:6379> get key5
"005"
redis 192.168.14.128:6379> get key6
"006"
redis 192.168.14.128:6379> del key5
(integer) 1
redis 192.168.14.128:6379> get key5
(nil)
redis 192.168.14.128:6379> quit
注意:本地客户端和和其他机器客户端都一样,其他机器只是需要安装一个命令,本地客户端已经安装过命令,不需再安装命令而已。