redis的简单安装配置
一、简介
Redis是一种高级key-value数据库,数据可以持久化,支持的数据类型很丰富,有字符串,哈希,链表,集合和有序集合5种数据类型
Redis支持在服务器端计算集合的并,交和补集(difference)等,还支持多种排序功能,所以Redis也可以被看成是一个数据结构服务器
Redis的所有数据都是保存在内存中,然后不定期的通过异步方式保存到磁盘上(半持久化模式);也可以把每一次数据变化都写入到一个append only file(aof)里面(全持久化模式)
二、Redis安装
安装tclsh
Redis在make test有使用到tclsh对Redis进行测试,所有需要想将tclsh安装好,如果没有安装的话,在make test过程中会出现如下错误:
[root@dev ~]# wget http://hivelocity.dl.sourceforge.net/project/tcl/Tcl/8.5.14/tcl8.5.14-src.tar.gz
[root@dev ~]# tar xzvf tcl8.5.14-src.tar.gz
[root@dev ~]# cd tcl8.5.14-src/unix #windows进入tcl8.5.14-src/win
[root@dev ~]# ./configure --prefix=/app/soft/tcl8.5.11 --enable-64bit #enable-64bit对64系统生效
[root@dev ~]# make && make install
安装完成之后需要将tclsh添加到PATH中,并使其生效
[root@dev ~]# vim /etc/profile
···
PATH=/app/soft/tcl8.5.11/bin:$PATH
export PATH
···
[root@dev ~]# source /etc/profile
安装Redis
[root@dev ~]# cd /usr/loca/src
[root@dev ~]# wget http://download.redis.io/releases/redis-3.0.6.tar.gz
[root@dev ~]# tar xzvf redis-3.0.6.tar.gz
[root@dev ~]# cd redis-3.0.6
[root@dev ~]# make
[root@dev ~]# make test #检查Redis是否已经make成功,这个步骤可以省略,不过建议还是使用
[root@dev ~]# make PREFIX=/usr/local/redis install #默认安装路径:/usr/local
三、配置Redis
Redis.conf
[root@dev ~]# cat redis.conf|grep -v ^#
daemonize yes #开启守护进程
pidfile /var/run/redis.pid #设置PID文件
port 6579 #设置Redis端口
timeout 300
tcp-keepalive 0
loglevel verbose #设置日志级别
syslog-enabled yes #开启syslog
syslog-ident redis #设置Redis在syslog里面的标识符
syslog-facility local6 #设置Redis在syslog使用的设备
databases 5
save 900 1 #Redis硬盘数据保存设置
save 300 10
save 60 10000
stop-writes-on-bgsave-error yes
rdbcompression yes
rdbchecksum yes
dbfilename dump.rdb #Redis数据保存文件
dir ./ #Redis数据保存目录
slaveof 183.232.10.64 6579 #开启主从同步,设置Master的IP及端口
masterauth Dmx#xYkJ0Z8 #设置主从同步密码
slave-serve-stale-data yes
slave-read-only yes
repl-disable-tcp-nodelay no
slave-priority 100
requirepass Dmx#xYkJ0Z8 #设置Redis认证密码
maxclients 10000 #设置客户端连接数
maxmemory 512M #设置内容大小
appendonly no #设置是否开启AOF模式
appendfsync everysec
no-appendfsync-on-rewrite no
auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb
lua-time-limit 5000
slowlog-log-slower-than 10000
slowlog-max-len 128
hash-max-ziplist-entries 512
hash-max-ziplist-value 64
list-max-ziplist-entries 512
list-max-ziplist-value 64
set-max-intset-entries 512
zset-max-ziplist-entries 128
zset-max-ziplist-value 64
activerehashing yes
client-output-buffer-limit normal 0 0 0
client-output-buffer-limit slave 256mb 64mb 60
client-output-buffer-limit pubsub 32mb 8mb 60
hz 10
aof-rewrite-incremental-fsync yes
日志设置
通过Redis日志的配置可以知道,这次设置Redis日志是通过syslog来统一管理的,然后再通过logrotate来进行日志轮循,具体配置如下:
##syslog配置
[root@dev ~]# cat /etc/syslog.conf
···
# Log anything (except mail) of level info or higher.
# Don't log private authentication messages!
*.info;mail.none;authpriv.none;cron.none;redis.none /var/log/messages
#redis.none去除Redis的日志输出到message
···
# Save redis messages also to redis.log
local6.* /var/log/redis.log
#设置Redis日志输入到/var/log/redis.log文件
···
##logrotate配置
[root@dev ~]# cat /etc/logrotate.d/redis
/var/log/redis.log {
missingok
weekly
notifempty
rotate 15
size 200M
sharedscripts
postrotate
/usr/bin/killall -HUP syslogd
endscript
}
logrotate配置文档的意思为:每周检查一次Redis日志文件,大小超过200M就轮循一次,保存15个轮循日志文件。
内核设置
因为Redis需要使用到内存,所有最好配置一个内核参数,否则有可能会报警,具体如下:
[root@dev ~]# cat /etc/sysctl.conf
···
vm.overcommit_memory = 1 #指定内核针对内存分配的策略,其值可以是0,1,2
···
# 0 → 表示内核将检查是否有足够的可用内存供应用进程使用;如果有足够的可用内存,内存申请允许;否则,内存申请失败,并把错误返回给应用进程。
# 1 → 表示内核允许分配所有的物理内存,而不管当前的内存状态如何
# 2 → 表示内核允许分配超过所有物理内存和交换空间总和的内存
# sysctl -p
四、Redis启动与关闭
启动脚本
#!/bin/sh
#
# redis - this script starts and stops the redis-server daemon
#
# chkconfig: - 85 15
# description: Redis is a persistent key-value database
# processname: redis-server
# config: /etc/redis/redis.conf
# config: /etc/sysconfig/redis
# pidfile: /var/run/redis.pid # Source function library.
. /etc/rc.d/init.d/functions # Source networking configuration.
. /etc/sysconfig/network # Check that networking is up.
[ "$NETWORKING" = "no" ] && exit 0 source /etc/init.d/functions redis="/usr/local/redis/src/redis-server"
prog=$(basename $redis) REDIS_CONF_FILE="/usr/local/redis/redis.conf"
PIDFILE="/var/run/redis.pid" [ -f /etc/sysconfig/redis ] && . /etc/sysconfig/redis lockfile=/var/lock/subsys/redis start() { if [ -e $PIDFILE ];then
echo "$desc already running...."
exit 1
fi echo -n $"Starting $prog: "
daemon $redis $REDIS_CONF_FILE RETVAL=$?
echo
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/$prog
return $RETVAL
} stop() {
echo -n $"Stopping $prog: "
killproc $prog -QUIT
retval=$?
echo
[ $retval -eq 0 ] && rm -f /var/lock/subsys/$prog $PIDFILE
return $retval
} restart() {
stop
start
} reload() {
echo -n $"Reloading $prog: "
killproc $redis -HUP
RETVAL=$?
echo
} force_reload() {
restart
} rh_status() {
status $prog
} rh_status_q() {
rh_status >/dev/null 2>&1
} case "$1" in
start)
rh_status_q && exit 0
$1
;;
stop)
rh_status_q || exit 0
$1
;;
restart|configtest)
$1
;;
reload)
rh_status_q || exit 7
$1
;;
force-reload)
force_reload
;;
status)
rh_status
;;
condrestart|try-restart)
rh_status_q || exit 0
;;
*)
echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}"
exit 2
esac
五、Redis服务验证
./redis-cli 登录,然后再通过ping、info、命令查看redis情况,具体示例如下:
[root@dev ~]# ./redis-cli -h localhost -p 6579 -a password
redis localhost:6579> info
redis的简单安装配置的更多相关文章
- Redis Cluster 简单安装配置
1 新建目录 “/app/redis”,输入命令 mkdir -p /app/redis 2 先安装ruby-2.3.1.tar.gz 3 测试ruby是否安装成功,输入命令:gem,如果显示以下信息 ...
- tftp服务器简单安装配置
tftp服务器最简单安装配置 1.安装tftp-server sudo apt-get install tftpd-hpa sudo apt-get install tftp-hpa(如果不需要客户端 ...
- Redis for linux安装配置之—-源码安装
一‘redis单实例安装配置1.下载redis源码压缩包,并将其上传至服务器/usr/local2.解压redis源码压缩包 # tar -xzvf redis-3.2.12.tar.gz3.进入r ...
- java:安装tomcat8/tomcat9(简单安装配置)
java:安装tomcat8/tomcat9(简单安装配置) pache-tomcat-8.5.23(免安装板) 1.安装完成后右击我的电脑—属性—高级系统设置—环境变量, 在系统变量中添加以下变量 ...
- redis简介及安装配置
简介 redis是一个开源的高性能键值对数据库.它通过提供多种键值数据类型来适应不同场景下的存储需求,并借助许多高层级的接口使其可以胜任如缓存.队列系统等不同角色. 特性 存储结构:redis是远程字 ...
- 树莓派2系统DietPi简单安装配置使用介绍
DietPi在Raspberrypi.org上的原帖:http://dwz.cn/HSrmY 版本发布很频繁,给原作者们点个赞.功能会越来越多,而且作者的定制观点很明确,适合树莓派的使用. 之前关于D ...
- linux环境下redis数据库的安装|配置|启动
安装 下载:打开redis官方网站,推荐下载稳定版本(stable) 解压 tar zxvf redis-3.2.5.tar.gz 复制:推荐放到usr/local目录下 sudo mv -r red ...
- redis数据库的安装配置
redis是当前比较热门的NOSQL系统之一,它是一个key-value存储系统.和Memcached类似,但很大程度补偿了memcached的不足,它支持存储的value类型相对更多,包括strin ...
- centos下gitlab的简单安装配置
一.安装前配置yum源 #wget https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh #s ...
随机推荐
- 轻量级.NET ORM、高性能.NET ORM 之 SqlSugar 开源ORM - ASP.NET
3.0最新API: http://www.cnblogs.com/sunkaixuan/p/5911334.html 1.前言/Preface SqlSugar从去年到现在已经一年了,版本从1.0升到 ...
- String-------RegularHelper
/// <summary> /// 正则表达式相关方法集合 /// </summary> public static class RegularHelper { private ...
- mysql主从复制replication的一些相关命令
主服务器上的相关命令:show master status; mysql> show master status\G . row *************************** Posi ...
- .Net配置文件——反射+配置文件存储类型实例
配置文件+反射确实去除了选择语句的繁琐,带来了优美的赶脚! 首先改进了一下类(接上文): ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 ...
- petapoco-SQLServer模型增加注释
petapoco是个基于T4模板的轻量级ORM,好用效率高,具体介绍略了 获取注释基本原理是调用数据库::fn_listextendedproperty函数,获取扩展属性MS_Description ...
- 【iOS】单例模式
单例模式在软件开发中经常用到,在iOS系统framework也很多地方用到单例模式,例如 [NSUserDefaults standardUserDefaults], [NSBundle mainBu ...
- 【原创】记一次Sql2008R2的数据库订阅发布遇到的问题!
1.首先新建一个空的数据库 CreditTest,里面没有任何表结构,视图,数据等. 2.在已连接的服务器的下方找到“复制”选项,然后兴建发布: ...(新建发布成功) ...(新建订阅成功) 3.问 ...
- MVC5 + EF6 + Bootstrap3 (11) 排序、搜索、分页
系列教程:MVC5 + EF6 + Bootstrap3 上一节:MVC5 + EF6 + Bootstrap3 (10) 数据查询页面 源码下载:点我下载 我工作的源码:http://www.jin ...
- 容器--Collection和AbstractCollection
一.前言 容器是JAVA中比较重要的一块,整个体系设计得非常好,同时对于代码学习来说也是比较好的范例.同时很多面试官也比较喜欢用容器来考察面试者的基础知识,所以掌握好容器还是比较重要的.本文主要总结一 ...
- Android笔记——Android中数据的存储方式(一)
Android中数据的存储方式 对于开发平台来讲,如果对数据的存储有良好的支持,那么对应用程序的开发将会有很大的促进作用. 总体的来讲,数据存储方式有三种:一个是文件,一个是数据库,另一个则是网络.其 ...