介绍 REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-value存储系统。
Redis是一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。
它通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Hash), 列表(list), 集合(sets) 和 有序集合(sorted sets)等类型。
安装步骤
安装环境,下载,解压,编译
修改配置
启动,登录
安装 以下为一键安装脚本
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 #!/bin/bash redis_dir=/usr/local redis_version=redis-stable wget http://download.redis.io/$redis_version .tar.gz yum -y install gcc tar xf $redis_version .tar.gz -C $redis_dir cd $redis_dir /$redis_version make && make install mkdir $redis_dir /$redis_version /{data,logs} cat > redis.conf <<EOF daemonize yes protected-mode no port 6379 pidfile "$redis_dir/$redis_version/logs/redis.pid" logfile "$redis_dir/$redis_version/logs/redis.log" dbfilename "dump.rdb" dir "./data" save 900 1 save 300 10 save 60 10000 EOF $redis_dir /$redis_version /src/redis-server $redis_dir /$redis_version /redis.conf
启动,登录 1 2 3 4 5 6 7 8 9 10 cd /usr/local /redis-stable ./src/redis-server ./redis.conf ./src/redis-cli -p 6379 shutdown ./src/redis-cli -h 127.0.0.1 -p 6379
自启动脚本 将以下文件保存为redis.service,并放在:/usr/lib/systemd/system/ 每次更改文件必须重启:systemctl daemon-reload
1 2 3 4 5 6 7 8 9 10 11 12 [Unit] Description=Redis After=network.target [Service] Restart=always RestartSec=1 ExecStart=/usr/local /redis-stable/src/redis-server /usr/local /redis-stable/redis.conf --daemonize no ExecStop=/usr/local /redis-stable/src/redis-cli -h 127.0.0.1 -p 6379 shutdown [Install] WantedBy=multi-user.target
[Unit] 表示这是基础信息 Description 是描述 After 是在那个服务后面启动,一般是网络服务启动后启动 [Service] 表示这里是服务信息 Restart=always 定义何种情况 Systemd 会自动重启当前服务,可能的值包括always(总是重启)、on-success、on-failure、on-abnormal、on-abort、on-watchdog RestartSec=1 定义 Systemd 停止当前服务之前等待的秒数 ExecStart 是启动服务的命令 ExecStop 是停止服务的指令 [Install] 表示这是是安装相关信息 WantedBy 是以哪种方式启动:multi-user.target表明当系统以多用户方式(默认的运行级别)启动时,这个服务需要被自动运行。
redis-dump导入导出 1 2 3 4 5 6 7 8 9 10 11 yum install centos-release-scl-rh -y yum install rh-ruby23* -y scl enable rh-ruby23 bash ruby -v gem install redis-dump -V
1 2 3 4 5 6 7 8 redis-dump -u 192.168.0.32 -d 2 > test.json < test.json redis-load -u 192.168.0.31 sed -i 's/"db":2/"db":0/g' test.json
报错 1 2 3 4 5 6 WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128. net.core.somaxconn= 1024 vm.overcommit_memory=1