编译安装redis实验文档
一、什么是Redis
Redis是一种主流的非关系型数据库,是完全开源的,遵守 BSD 协议,是一个高性能的 key-value 数据库。它支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储,同时Redis还支持数据的备份,即master-slave模式的数据备份。
与关系型数据库不同的是,关系型数据天然就是表格式的,因此存储在数据表的行和列中。数据表可以彼此关联协作存储,也很容易提取数据。与其相反,非关系型数据不适合存储在数据表的行和列中,而是大块组合在一起。非关系型数据通常存储在数据集中,就像文档、键值对或者图结构。你的数据及其特性是选择数据存储和提取方式的首要影响因素。同时在业务增长的情况下SQL与NoSQL的扩展方式也不同,SQL数据库是纵向扩展,也就是说提高处理能力,使用速度更快速的计算机,而NoSQL数据库是横向扩展的。因为非关系型数据存储天然就是分布式的,扩展可以通过给资源池添加更多普通的数据库服务器(节点)来分担负载。
二、如何从零开始编译安装一个Redis数据库
1.实验环境
虚拟机版本 | VMware® Workstation 16 Pro 16.2.4 build-20089737 |
镜像版本 | CentOS-7-x86_64-DVD-1708.iso |
Redis版本 | Redis-5.0.7 |
2.实验要求
通过编译安装,安装Redis数据库并验证性能。
3.系统配置
systemctl stop firewalld
setenforce 0 // 先关闭防火墙工具
yum install -y gcc gcc-c++ make //安装编译安装所需要的依赖包
tar zxvf redis-5.0.7.tar.gz -C /opt/ //将redis的软件包解压到opt下
cd /opt/redis-5.0.7/ //进入到redis文件夹内
make //编译
make PREFIX=/usr/local/redis install //指定安装目录
#由于Redis源码包中直接提供了 Makefile 文件,所以在解压完软件包后,不用先执行 ./configure 进行配置,可直接执行 make 与 make install 命令进行安装。
cd /opt/redis-5.0.7/utils
./install_server.sh
#执行软件包提供的 install_server.sh 脚本文件设置 Redis 服务所需要的相关配置文件
回车4次,选择默认设置。
Please select the redis executable path [] /usr/local/redis/bin/redis-server
#在选择可执行文件路径这一栏需要手动修改为 /usr/local/redis/bin/redis-server ,注意要一次性正确输入。
结束后确认信息如下:
Selected config:
Port : 6379 #默认侦听端口为6379
Config file : /etc/redis/6379.conf #配置文件路径
Log file : /var/log/redis_6379.log #日志文件路径
Data dir : /var/lib/redis/6379 #数据文件路径
Executable : /usr/local/redis/bin/redis-server #可执行文件路径
Cli Executable : /usr/local/bin/redis-cli #客户端命令工具
----------------------------------------------------------------------------------------------------------
#把redis的可执行程序文件放入路径环境变量的目录中便于系统识别
ln -s /usr/local/redis/bin/* /usr/local/bin/
#当 install_server.sh 脚本运行完毕,Redis 服务就已经启动,默认监听端口为 6379
netstat -natp | grep redis
#Redis 服务控制
/etc/init.d/redis_6379 stop #停止
/etc/init.d/redis_6379 start #启动
/etc/init.d/redis_6379 restart #重启
/etc/init.d/redis_6379 status #状态
#修改配置 /etc/redis/6379.conf 参数
vim /etc/redis/6379.conf
bind 127.0.0.1 192.168.254.106 #70行,添加 监听的主机地址
port 6379 #93行,Redis默认的监听端口
daemonize yes #137行,启用守护进程
pidfile /var/run/redis_6379.pid #159行,指定 PID 文件
loglevel notice #167行,日志级别
logfile /var/log/redis_6379.log #172行,指定日志文件
/etc/init.d/redis_6379 restart //重启redis服务
使用redis-cli登录数据库
使用redis-benchmark工具进行数据库测试。
#向 IP 地址为 192.168.254.106、端口为 6379 的 Redis 服务器发送 100 个并发连接与 100000 个请求测试性能
redis-benchmark -h 192.168.254.106 -p 6379 -c 100 -n 100000
#测试存取大小为 100 字节的数据包的性能
redis-benchmark -h 192.168.10.161 -p 6379 -q -d 100