一、Redis介绍
Redis是当前比较热门的NOSQL系统之一,它是一个key-value存储系统。和Memcache类似,但很大程度补偿了Memcache的不足,它支持存储的value类型相对更多,包括string、list、set、zset和hash。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作。在此基础上,Redis支持各种不同方式的排序。
和Memcache一样,Redis数据都是缓存在计算机内存中,不同的是,Memcache只能将数据缓存到内存中,无法自动定期写入硬盘,这就表示,一断电或重启,内存清空,数据丢失。所以Memcache的应用场景适用于缓存无需持久化的数据。而Redis不同的是它会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,实现数据的持久化。
二、Redis的安装
下面介绍在Linux环境下,Redis的安装与部署
1、首先上官网下载Redis 压缩包,地址:http://redis.io/download 下载稳定版3.0.7即可。
2、通过远程管理工具,将压缩包拷贝到Linux服务器中,执行解压操作
3、执行make 对Redis解压后文件进行编译
编译完成之后,可以看到解压文件redis-3.0.7 中会有对应的src、conf等文件夹,这和windows下安装解压的文件一样,大部分安装包都会有对应的类文件、配置文件和一些命令文件。
4、编译成功后,进入src文件夹,执行make install进行Redis安装
5、安装完成,界面如下
三、Redis的部署
安装成功后,下面对Redis 进行部署
1、首先为了方便管理,将Redis文件中的conf配置文件和常用命令移动到统一文件中
a)创建bin和redis.conf文件
mkdir -p /usr/local/redis/bin
mkdir -p /usr/local/redis/etc
b)执行Linux文件移动命令:
mv /lamp/redis-3.0.7/redis.conf /usr/local/redis/etc cd /lamp/redis-3.0.7/src mv mkreleasdhdr.sh redis-benchmark redis-check-aof redis-check-dump redis-cli redis-server /usr/local/redis/bin
2、执行Redis-server 命令,启动Redis 服务
注意:这里直接执行Redis-server 启动的Redis服务,是在前台直接运行的(效果如上图),也就是说,执行完该命令后,如果Lunix关闭当前会话,则Redis服务也随即关闭。正常情况下,启动Redis服务需要从后台启动,并且指定启动配置文件。
3、后台启动redis服务
a)首先编辑conf文件,将daemonize属性改为yes(表明需要在后台运行)
cd etc/
vi redis.conf
b)再次启动redis服务,并指定启动服务配置文件
redis-server /usr/local/redis/etc/redis.conf
4、服务端启动成功后,执行redis-cli启动Redis 客户端,查看端口号。
四、总结Linux 、Redis 操作常用命令
Linux:
cd /usr 从子文件夹进入上级文件夹usr
cd local 从父到子
mv /A /B 将文件A移动到B
vi usr/local/redis/redis.conf 编辑redis.conf 文件
:wq 保存修改,并退出
Redis:
Redis-server /usr..../redis.conf 启动redis服务,并指定配置文件
Redis-cli 启动redis 客户端
Pkill redis-server 关闭redis服务
Redis-cli shutdown 关闭redis客户端
Netstat -tunpl|grep 6379 查看redis 默认端口号6379占用情况
linux下redis设置密码登录
redis设置密码访问
你的redis在真实环境中不可以谁想访问就可以访问,所以必须要设置密码
设置密码的流程如下:
vim /etc/redis.conf #requirepass foobared去掉注释,foobared改为自己的密码,我在这里改为 requirepass 123456
然后保存,重启服务
cd /usr/local/bin
./redis-server /etc/redis.conf
测试连接:./redis-cli
输入命令 会提示(error) NOAUTH Authentication required. 这是属于正常现象。
我们输入 auth 123456#你刚才设置的密码
redis安装成功,外部无法访问问题?
原因:redis所在端口的监听地址为127.0.0.1 导致外部网络无法连接
解决方法:修改redis.conf 配置文件 bind 127.0.0.1 为 bind 101.200.166.125(真是ip地址)
解决过程使用的命令总结:
①查看指定端口的监听状态
netstat -anp | grep 9000
③外部测试端口是否可以正常访问
telnet host port
telnet 101.200.189.125 6379
④redis启动方法
redis-server /etc/redis.conf
⑤redis关闭方法
redis-cli -p port -a password shutdown
eg:redis-cli -p 6379 -a mypassword shutdown
⑥修改redis端口号和设置密码
------打开redis.conf配置文件 修改port 6379为 port 9999(默认为6379端口)
------打开redis.conf配置文件 修改requirepass mypassword (设置redis密码)
⑦查看端口状态
/etc/init.d/iptables status