Redis详解与配置

在这里插入图片描述
Redis(非关系型数据库)

数据库分类

l 关系型数据库

l 非关系型数据库

关系型数据库:一般面向于记录,借助集合代数等数学概念和方法来处理数据库中的数据,SQL语句是一种标准的数据库查询语言,用于对关系型数据库的检索和操作

主流:Oracle, MySQL, SQL Server,Microsoft Access,DB2 等

非关系型数据库:它有一个总称”NoSQL” 意思是不仅仅是SQL,这类数据库他们的存储方式,存储结构以及使用的场景是完全不同的。具有非关系型,分布式,开源和横向扩展等优势。

主流:Redis,MongBD,Hbase,CouhDB等

使用场景:随着web网站的兴起,关系型数据库在应对web网站,特别是海量数据和高并发时

主要处理生产环境下的问题:

l 对数据库高并发读取要求(网站访问量大)

l 对海量的数据高效存储与访问需求(存储大量用户的数据)

l 对数据库高扩展性与高可用性需求

Redis介绍:

使用C语言编写的,基于内存运行并支持持久化,采用键值对(key),所以主要依靠于内存!

redis是单进程,可以一台服务器上开启多个redis进程,要根据实际情况来做

安装方式有两种,一种是YUM直接安装,一种是源码包,编译安装

源码包编译安装(redis-4.0.9.tar.gz)

注意:编译时不用./Configure来编译,因为是redis源码包中直接提供了makefile文件

解压包

#tar xfv redis-4.0.9.tar.gz -C /usr/src/

编译包

#cd /usr/src/redis-4.0.9

在这里插入图片描述
其中redis.conf是主配置文件,可定义自己想要的配置(例如:开放端口等)

#make(有可能会出现报错,如果出现报错,就再重新来一遍)

#make PREFIX=/usr/local/redis install

#cd /src && make install

编译安装完成后,需要给它命令做一下软连接

#ln -s /usr/local/redis/bin/* /usr/local/bin/

到此redis算是基本安装完成,但是没有启动脚本和配置文件

软件包中提供一个install_server.sh脚本文件,通过该文件可以设置服务所需要的相关配置文件,当脚本运行完毕,服务实例即启动,默认端口6379

找到软件包里的脚本并运行

如图:

解释:

Please select the redis port for this instance: [6379] (请为这个实例选择redis端口:[6379])

Please select the redis config file name [/etc/redis/6379.conf](请选择redis配置文件名[/etc/redis/6379.conf])

Please select the redis log file name [/var/log/redis_6379.log](请选择redis日志文件名[/var/log/redis_6379.log])

Please select the data directory for this instance [/var/lib/redis/6379](请选择此实例的数据目录[/var/lib/redis/6379])

Please select the redis executable path [/usr/local/bin/redis-server](请选择redis可执行路径[/usr/local/bin/redis-server](服务端的命令))

以上在创建实例时,都可根据自己需要的来创建,创建完成后即启动

开放端口:

安装完成后,可以根据控制脚本来对实例服务进行控制,如启停服务等(/etc/init.d/redis_6379)

Redis 实例服务的主配置文件(/etc/redis/6379.conf)详解

可根据生产环境进行相关参数的调整:

#cat /etc/redis/6379.conf

70 bind 127.0.0.1 192.168.30.201 //监听的主机地址(实例在本机就本机地址)

93 port 6379 //端口

114 timeout 0 //客户端闲置多长时间关闭,0:表示关闭该功能

137 daemonize yes //开启守护进程

159 pidfile /var/run/redis_6379.pid //制定PID文件

167 loglevel notice //日志级别

172 logfile /var/log/redis_6379.log //日志文件

252 dbfilename dump.rdb //指定本地数据库文件名,默认值为dump.rdb (持久化)

531 # maxclients 10000 //最大客户端连接数,为0时是不限制,如果达到最大,会返回客户端max number of clients reached 错误信息

240 rdbcompression yes // 指定是否要压缩数据,默认是,为了节省cpu资源

280 # slaveof //设置主从时用到的,这个是从指定主的IP和端口

287 # masterauth //主端的密码

499 # requirepass foobared //指定连接redis密码,如果有,客户端连接时要输密码,默认关闭状态

558 # maxmemory //指定redis最大内存限制

671 appendonly no //redis默认是异步的把数据写入磁盘,如果不开启,可能会造成数据丢失,默认是NO

675 appendfilename “appendonly.aof” //指定更新日志文件,默认

701 appendfsync everysec //指定更新的日志文件(no/always/everysec)默认是每秒同步一次

1127 activerehashing yes //指定是否激活重置哈希,默认开启

36 # include /path/to/local.conf //引用其他文件,可以一台主机多个实例同一份文件

这里只需要修改bind即可,修改完后重启即可

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值