今天我们一起讨论一下程序员日常"战斗"中的有力武器——瑞士军刀redis。随着系统的访问量增大,一般情况下数据库的IO将会成为系统性能瓶颈,由于传统的RDB数据是保存在磁盘中的,磁盘的读写效率远不如内存和cpu。当系统中引入redis后这些问题将会迎刃而解,当然,redis的作用还远不止这些...
1、Redis简介
Redis:REmote DIctionary Server(远程字典服务)的缩写,是C语言编写的、典型的Nosql(not only sql)数据库之一,可内存亦可持久化的key-value数据结构存储系统,它可以用作数据库、缓存和消息中间件。
redis中文网:https://www.redis.net.cn/tutorial/3501.html
redis爱好者:http://doc.redisfans.com/index.html
2、Linux下安装
- 下载Redis的tar.gz包
方式一:windows中下载,上传到Linux中
方式二: wget http://download.redis.io/releases/redis-5.0.4.tar.gz
- 解压到指定目录 tar -zxvf redis-5.0.4.tar.gz -C javaTools
- cd redis-5.0.4
- make(编译redis源码,编译前确保系统安装了gcc)
- make install (将redis的相关运行文件复制一份放到/usr/local/bin/下,这样就可以在任意目录下执行redis的命令了)
执行 make 指令时可能会出现 gcc(一个C语言编译器) 找不到,通过指令 yum install gcc-c++ 安装gcc,一路yes即可。
(可能会出现 另一个程序锁定了yum,等待它退出... 的提示,通过指令 rm -f /var/run/yum.pid关闭yum进程即可),
(可能会出现错误:jemalloc/jemalloc.h:没有那个文件或目录,执行命令: make MALLOC=libc 即可)
安装成功!
2.1、启动Redis
启动前必知:
安装redis时如果执行了make install 命令,会在/usr/local/bin(用户的可执行命令的文件,该路径默认被配置到了PATH系统环境变量里面,所以在任意地方都能使用这些命令) 目录下生成redis的一些工具命令,包括redis的启动服务命令 redis-server 和客户端连接命令 redis-cli 等。
在redis的安装目录中 有一个redis.conf 文件,是redis的配置文件,
把 daemonize no -》daemonize yes 表示可以作为后台服务运行。
启动redis服务:
redis-server /opt/javaTools/myRedis/redis.conf #使用指定的配置文件启动redis,默认使用安装路径下的redis.conf启动。
使用客户端连接redis:
redis-cli -p 6379 #redis默认是监听6379端口,所以可以不用加 -p 6379
2.2、关闭redis
redis提供了shutdown命令来关闭redis,且关闭前会自动的保存RDB文件。
方式一:
redis-cli连接进去redis后,执行shutdown命令即可。
方式二:
redis-cli -h ip -p 端口 shutdown
2.3、配置远程连接Redis
为了安全,默认情况下redis的配置文件中
bind 127.0.0.1 #只允许本地连接
protected-mode yes #开启保护模式
requirepass "" #不需要密码即可连接redis
应改成
1)#bind 127.0.0.1 #注释掉bind表示允许任意ip连接
· 此时redis还是处于保护模式中,解决:要么protected-mode no,要么设置redis连接密码(第二种好)
2)requirepass 密码 #设置redis连接密码
然后使用修改后的配置文件重启redis服务,防火墙开放redis的端口,并重启防火墙。
远程连接:redis-cli -h ip -p 端口 回车 -》输入auth 密码 即可访问
2.4、redis的一些基本常识
1、redis是用单线程来处理命令的,在Linux中利用Linux的IO多路复用函数epoll来处理读写请求。
2、数据库方面:
- redis默认有16个库,序号为0-15,默认使用0号库。
- 默认的端口是6379。
3、redis的命令不区分大小写。
3、window版的安装与启动
1、关于下载地址请移步到:一些常用的开发工具
下载的.zip文件,解压到一个文件夹中即可使用。最多配置个path变量。
2、window版的redis的配置文件是 redis-windows.conf ,配置文件中没有daemonize 这个属性,所以不能后台运行。
所以:方式一:开俩窗口,一个服务,一个客户端。
方式二:在redis.windows.conf的同级目录进入cmd,然后
redis-server --service-install redis.windows.conf 将redis注册成window的服务,就能开机自启了。
注册成window的服务后,若配置文件修改后想要生效,需要先删除服务( sc delete 服务名 ),再重新注册成服务即可。
关于redis的配置文件,我们会在接下来的文章里面讨论。