操作软件:Xshell、VMware、RedisDesktopManager
Redis 是完全开源免费的,遵守BSD协议,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。
特点:
支持数据的持久化,可以将内存中的数据保存到硬盘,在重启后再次加载使用。
支持的数据结构丰富,String,list,set, zset, hash等等。
支持数据备份,master-slave模式进行数据备份。
优势:
性能高,Redis能读的速度是110000次/s,写的速度是81000次/s。
数据类型丰富
原子性,redis中所有操作都是原子的,并且多个操作也支持原子性
丰富的特性,如通知,key过期等。
- 备份Linux自带的EPEL源
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
- 生成阿里源
cd /etc/yum.repos.d
wget -O CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
- 清空缓存
yum clean all
- 重新生成缓存
yum makecache
关于gcc和make
GCC(GNU Compiler Collection,GNU编译器套件),是由 GNU 开发的编程语言编译器。它是以GPL许可证所发行的自由软件,也是 GNU计划的关键部分。GCC是Linux下重要的编译工具。
make工具的定义是通过编写的makefile脚本文件描述整个工程的编译、链接规则;通过脚本文件,对于复杂的工程也可以只通过一个命令就完成整个编译过程。类似于java中的maven
yum install gcc-c++
注意下载位置 本例是直接下载到了root目录
wget http://download.redis.io/releases/redis-5.0.3.tar.gz
注: wget简介
wget是linux下常用的文件下载工具,wget支持http,https,ftp等协议,支持使用http代理。
wget有很多参数,常用的有一下几个:
-V --version 显示wget的版本
-o --output-file=file 将信息写入file,如果不提供默认以下载的文件作为文件名。
-v --verbose 详细输出,默认值
-t --tries=number 设置重试次数,0表示无限制
- 在/usr/local目录下创建一个redis目录又来放置解压后的redis。
mkdir /usr/local/redis
- 在本例中redis下载在/root目录,来到该目录执行解压
tar -zxvf redis-5.0.3.tar.gz -C /usr/local/redis
编译-安装(在/usr/local/redis/redis-5.0.3目录下执行)
#编译
make
#安装
make install
编译成功的输出:
安装完成时的输出:
可以查看编译完成的redis命令文件:
ls /usr/local/bin/redis*
文件 | 作用 |
---|---|
/usr/local/bin/redis-benchmark | 性能测试工具 |
/usr/local/bin/redis-check-aof | 更新日志检查 |
/usr/local/bin/redis-check-dump | 本地数据文件检查 |
/usr/local/bin/redis-cli | 命令行操作工具 |
/usr/local/bin/redis-server | 服务器程序 |
在执行编译后,安装之前,可以选择性的执行make test,我们下载的一般都是release版本,该步骤是可选的(该步骤运行所有的单元测试代码,需要较长的时间),如果执行时报:You need tcl 8.5 or newer in order to run the Redis test,则需要先安装tcl,可以使用:
wget https://nchc.dl.sourceforge.net/project/tcl/Tcl/8.6.8/tcl8.6.8-src.tar.gz执行安装。
vim /usr/local/redis/redis-5.0.3/redis.conf
配置文件需要做如下修改(在进入文件后可用斜杆" \ "加上名字进行指定查找):
bind 127.0.0.1 改行限制redis只能本机访问,需要在前面加#注释掉
下图是未修改状态
port 6379 设置redis的访问端口,一般保存为默认值6379即可
修改protected-mode 为 no 关闭保护模式,如果开启则需要将可以访问redis的机器IP地址配置到bind属性中,同时为redis设置访问密码
下图是未修改状态
修改daemonize 为 yes 开启守护进程模式。在该模式下,redis会在后台运行,并将pid写入到redis.conf选项pidfile设置的文件中,此时redis将一直运行,除非手动kill该进程。
下图是未修改状态
requirepass 123456 设置访问密码,如果protected-mode设置为yes,则必须设置密码
pidfile /var/run/redis_6379.pid,如果使用默认端口则保持默认值即可。
logfile /usr/local/redis/redis-5.0.3/redis_log.log 设置redis日志
引号可不要
下图是未修改状态
dir redis位置,默认为./ 当前目录,保持默认值。
安装成功后可以使用redis-server命令进行启动,改命令已经放入/usr/local/bin目录下,且该目录已经放入path环境变量,所以不必进入redis的安装目录也可以执行redis-server命令,在执行时为了使在/usr/local/redis/redis-5.0.3/redis.conf配置文件起效,需要作为启动参数提供。
redis-server /usr/local/redis/redis-5.0.3/redis.conf
注意:为了能正常读取redis.conf配置文件,需要切换到root用户,或通过sudo命令启动。
启动成功后可以通过如下命令查看:
ps -aux|grep redis
可以使用如下命令进行关闭
redis-cli shutdown #未设置密码,直接关闭
redis-cli -a 密码 shutdown #设置密码,在关闭时需要提供密码
在 usr/local/redis/redis-5.0.3 目录下,可以看到有utils目录
进入utils,执行install_server.sh脚本
./install_server.sh
进行交互选择
[root@localhost utils]# ./install_server.sh
Welcome to the redis service installer
This script will help you easily set up a running redis server
Please select the redis port for this instance: [6379] #直接回车
Selecting default: 6379
Please select the redis config file name [/etc/redis/6379.conf] /usr/local/redis/redis-5.0.3/redis.conf #←需要输入的路径
Please select the redis log file name [/var/log/redis_6379.log] #直接回车
Selected default - /var/log/redis_6379.log
Please select the data directory for this instance [/var/lib/redis/6379] #直接回车
Selected default - /var/lib/redis/6379
Please select the redis executable path [/usr/local/bin/redis-server] #直接回车
Selected config:
Port : 6379
Config file : /usr/local/redis/redis-5.0.3/redis.conf
Log file : /var/log/redis_6379.log
Data dir : /var/lib/redis/6379
Executable : /usr/local/bin/redis-server
Cli Executable : /usr/local/bin/redis-cli
Is this ok? Then press ENTER to go on or Ctrl-C to abort. #直接回车
Copied /tmp/6379.conf => /etc/init.d/redis_6379
Installing service...
Successfully added to chkconfig!
Successfully added to runlevels 345!
/var/run/redis_6379.pid exists, process is already running or crashed
Installation successful!
在/etc/init.d/目录下可以看到redis_6379这个自启动脚本
[root@localhost utils]# cd /etc/init.d
[root@localhost init.d]# ls
functions netconsole network README redis_6379 tomcat
chkconfig --list
可以看到redis程序在2,3,4,5这四个等级下是开机自启动的
如果服务器开启了防火墙,则需要将redis使用的端口号加入防火墙。
firewall-cmd --zone=public --add-port=6379/tcp --permanent
firewall-cmd --reload
至此,CentOS7中的redis安装完毕
其他文章:
linux系统安装(CentOS 7) 和软件安装(mysql,tomcat,jdk)