您的位置:首页 > 数据库 > Redis

redis基本使用

2017-01-07 10:18 295 查看
1.redis持久化介绍
a.remote dictionary server

b.也是基于key-value的键值的存储

c.redis支持的数据类型更丰富

d.持久化缓存服务,

e.支持master-slave同步 (主从同步)

2.redis特点
a.性能很高:redis能支持超过100k每秒的读写频繁
b.丰富的数据类型:redis支持二进制的strings lists hashes sets 等
c.原子性:redis的所有操作都是原子性的,同时redis还支持对几个操作全并
后的原子性执行
d.丰富的特征:redis支持publish/subscribe。

e.redis支持异机主从复制

f.可以持久化存储数据

3.数据类型

a.String
b.Hash
c.List
d.Set
e.Sorted set

4.redis应用场景说明 (*)

a.mysql需要不断地拆库拆表,memcached也需要不断跟着扩容,扩容和维护工作占据
大量开发运维时间

b.memcached和mysql数据库数据一致性问题是一个老大难

c.memcached命中率很低,会导致让后端数据库的访问压力增大。

redis的最佳场景

1.redis最佳试用场景是全部数据in-memory
2.redis作为memcache的替代品来使用
3.当需要更多的数据类型支持时,可以使用redis
4.当存储的数据不能被剔除时,使用redis
5.需要负载均衡的场景(redis主从同步)

5.redis的安装部署
a.下载源码包

wget http://download.redis.io/releases/redis-2-8-9.tar.gz
tar xf redis-2-8-9.tar.gz

cd redis-2-8-9

b.编译安装 (不需要configure)

less README

make MALLOC=jemalloc

make PREFIX=/application/redis-2.8.9 install #在安装时指定路径 make PREFIX=

c.加link
ln -s /application/redis-2.8.9 /application/redis

6.redis的目录结构及文件
d.查看目录结构

tree /application/redis-2.8.9/bin

e.bin目录下文件说明

redis-server: Redis服务器的daemon启动程序
redis-cli : Redis命令行操作工具,当然,也可以用telnet根据纯文本协议操作
redis-benchmark Redis性能测试工具,测试Redis在系统及配置下的读写性能

redis-check-aof: 更新日志检查

redis-check-dump: 用于本地数据检查
7.启动redis

a.配置redis的环境变量

echo 'export PATH=/application/redis/bin:$PATH'>>/etc/profile
source /etc/profile
b.创建redis的配置文文件目录

mkdir -p /application/redis/conf/

cp -apr (redis的解压目录) redis.conf /application/redis/conf/

c.启动redis (redis-server )

redis-server /application/redis/conf/redis.conf &

WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect. (可能会报这个错)

解决: echo 'vm.overcommit_memory' >>/etc/sysctl.conf
sysctl vm.overcommit_memory=1

redis-server /application/redis/conf/redis.conf &

d.redis正确关闭方法

redis-cli shutdown

8.启动redis服务及利用客户端命令测试redis

a.连接redis (redis-cli --help查看基本使用)

redis-cli -h 127.0.0.1

b.不登录创建
redis-cli -h 127.0.0.1 -p 6379 set 001 jiahb

c.telnet方式登录
telnet 127.0.0.1 6379

9.redis多数据类型介绍
d

10.redis 的php客户端扩展安装
a.下载源码
wget https://github.com/nicolasff/phpredis/archive/master.zip b.解压

tar xf phpredis2.2.4 #解压

cd phpredis2.2.4 #切换目录

/application/php5.3.27/bin/phpize

./configure --with-php-config=/application/php/bin/php-config

make && make install #编译并安装redis.so文件

c.修改php.ini设置并重启php

echo "extension_dir = /application/php/lib/php/extensions/no../"
echo "extension = redis.so" >> /application/php/lib/php.ini

session.save_path = "tcp://IP:6379"

pkill php-fpm
-
/application/php/sbin/php-fpm
http://IP:8080 可以查看redis的扩展是否安装正常。

11.redis配置文件介绍及主从同步配置

a.查看配置文件

vim /application/redis/conf/redis.conf

b.关键参数
port 6379 监听端口
tcp-keeplive 40 会话保持
loglevel warnning 日志级别
databases 16 设置数据库数量
save 900 1 900秒有一个key变化,则保存
save 300 10 300秒有一个key变化,则保存

slaveof <masterip> <masterport> 主从复制的配置9

12.监控redis数据库写入

1.redis-cli -h 127.0.0.1 -p 6379 monitor 监视redis数据库的写及变化

2.redis-cli -h 127.0.0.1 -p 6379 info #查看redis的状态信息

3.redis-cli -h 127.0.0.1 -p 6379 info Replication #查看redis主从复制情况

13.Redis负载均衡的应用

1.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  redis