Redis安装使用
来源:互联网 发布:企业即时聊天软件 编辑:程序博客网 时间:2024/06/05 19:11
Redis安装使用
下载地址
https://pan.baidu.com/s/1eR4yYI2#list/path=%2F%E5%88%86%E4%BA%AB%2FLinux%2FRedis&parentPath=%2F%E5%88%86%E4%BA%AB
Redis简介
说明
1.也是类似于memcached的Key-Value存储机制2.是非关系型数据库的一种3.官网:redis.io,中文网:redis.cn
特点
1.能够持久化存储数据2.支持更多的数据类型3.支持集群,主从同步
优点
1.具有memcached的所有特征,但是比其更强大,是超级增强版的memcached2.可以做到数据的安全存储,能够进行持久化存储,支持事务3.拥有更多的数据类型,可以进行复杂的运算4.可以胜任memcached不能完成的更加复杂的业务场景
Redis安装
解压:tar -zxvf redis-4.0.1.tar.gz
复制:cp -R redis-4.0.1 /usr/local/redis
进入:cd /usr/local/redis
安装:make install
服务:
cd /usr/local/redis/src,该目录下有两个可执行文件,若有必要可以将改目录添加到$PATH环境变量中客户端:redis-cli服务端:redis-server启动测试:./redis-server #默认不会后台执行,需要修改配置文件
修改配置
cd /usr/local/rediscp redis.conf redis_6379.conf #拷贝配置文件修改配置文件redis_6379.conf为:daemonize yes #后台执行cd utils #进入目录cp redis_init_script redis_init_script_6379 #拷贝启动脚本修改启动脚本redis_init_script_6379如下:REDISPORT=6379EXEC=/usr/local/redis/src/redis-serverCLIEXEC=/usr/local/redis/src/redis-cliCONF="/usr/local/redis/redis_${REDISPORT}.conf"./redis_init_script_6379 start #启动服务
开机启动
修改用户开机启动配置文件:/etc/rc.local/usr/local/redis/utils/redis_init_script_6379 start
服务测试
1.查看进程:ps aux | grep redis2.使用客户端连接 /usr/local/redis/src/redis-cli连接参数: --help:获取帮助 -h:指定主机 -p:指定端口号 -a:指定密码redis-cli [-h 127.0.0.1] [-p 6379]127.0.0.1:6379> pingPONGquit #退出3.密码管理,默认是没有密码的,使用密码有以下两种方式1.单次有效,通过命令设置 获取密码:config get requirepass 设置密码:config set requirepass 123456 密码授权:auth 1234562.永久生效,修改配置文件 /usr/local/redis/redis_6379.conf requirepass 123456说明:不指定密码也可以连接成功,但是什么权限都没有
Redis命令
常用:
ping:测试连接情况,返回PONG表示正常quit:退出auth:指定密码select:选择库,总共16个,0~15,默认在第0个info:查看服务器信息command:查看能够使用的命令flushdb:清空当前库flushall:清空所有库save:前台持久化操作bgsave:后台持久化操作exists:判断键是否存在del:删除指定的键
字符串(string)
get:获取set:设置getset:获取后设置mset:设置多个mget:获取多个incr:递增(加1)incrby:指定幅度的递增incrbyfloat:指定幅度的递增一个浮点数decr:递减(减1)decrby:指定幅度的递减append:追加
哈希(hash)
hdel:删除hexists:判断是否存在hget:获取hgetall:获取所有hkeys:获取所有的键hvals:获取所有的值hlen:获取数量hset:设置hmget:获取多个hmset:设置多个
列表(list)
lpush:从左边插入数据lrange:显示某个范围内的数据,lrange m6 0 -1,表示显示全部数据lpop:从左边弹出数据rpush:从右边插入数据rpop:从右边弹出数据llen:显示个数
无序集合(set):不能重复
sadd:添加数据scard:个数统计sdiff:计算差集sinter:计算交集sismember:判断数据是否在集合中smembers:返回所有元素smove:移动元素spop:随机移除元素,可以指定个数srandmember:随机返回一个元素,但是不移除srem:移除元素
有序集合(sorted set)
zadd:添加元素zcard:统计元素zcount:指定区间统计zrange:返回索引区间内的值。。。。
安装phpredis
解压:unzip phpredis-php7.zip进入:cd phpredis-php7解压:phpize配置:./configure --with-php-config=/usr/local/php7/bin/php-config 编译:make 安装:make install修改php配置文件:将上一步编译的动态库添加到/usr/local/php7/etc/php.ini extension=/usr/local/php7/lib/php/extensions/no-debug-non-zts-20160303/redis.so重启PHP服务:service php-fpm restart测试:写一个phpinfo(),查看是否有redis扩展代码测试: <?php $redis = new Redis(); $redis->connect('127.0.0.1', 6379); $redis->auth('123456'); $redis->set('test','ok');可以参考github或提供的中文手册
持久化存储
redis持久化存储有两种方式:RDB和AOF。RDB是写存储文件,AOF是将执行的命令记录到文件中;若没有进行持久化操作,redis与memcached是一样的,相当于基于内存数据库。
RDB,Redis DataBase,将数据写入临时文件,做持久化操作时将临时文件替换原有的。
优点:持久化操作会单独启动一个子进程,主进程不会对其有任何IO,可以保证数据的安全可靠缺点:持久化操作是有间隔的,那么在此期间出现问题,可能会导致数据的丢失。因此,该方式不严谨配置:dbfilename dump.rdb #保存的数据库dir ./ #保存位置save 900 1 #更改了1个key,900秒后自动持久化存储save 300 10 #更改了10个key,300秒后自动持久化存储save 60 10000 #更改了10000个key,60秒后自动持久化存储说明:使用save进行save进行前台保存,使用bgsave进行后台保存,重启服务即可从dump.rdb中恢复数据
AOF,Append Only File,是将执行的命令记录下来,重新执行命令即可完成数据恢复
优点:可以保持更高的数据完整性缺点:AOF比RDB文件大得多,且恢复慢配置:appendonly yes #开关,默认是关闭的appendfilename "appendonly.aof" #保存文件appendfsync everysec|always|no #同步频率,每秒|立即|从不(完全依赖OS)自动重写配置:两个条件同时满足才会触发AOF重写操作auto-aof-rewrite-percentage 100 #新命令占原文件的百分比auto-aof-rewrite-min-size 64mb #本次重写的最小数据量手动重写:bgrewriteaof说明:数据恢复时首先从AOF,若没有开启则从RDB中恢复,两者同时使用没有冲突
Redis保存Session
session.save_handler = redissession.save_path = "tcp://127.0.0.1:6379?auth=123456"说明:auth是有密码才需要,若有多台服务器,可以使用weight参数指定权重
Redis主从复制
主机配置: #bind 127.0.0.1 #注释掉从机配置: slaveof 主机IP 主机端口 masterauth 主机li连接密码
Redis与Memcached对比
阅读全文
0 0
- Redis 简介、Linux 安装 Redis、Redis 使用
- redis安装和使用
- 安装使用php-redis
- redis安装与使用
- Redis安装配置使用
- redis安装使用
- redis 简单安装使用
- redis 安装与使用
- redis 安装及其使用
- 安装使用 redis
- Redis安装与使用
- centos redis安装使用
- Redis安装与使用
- Redis安装及使用
- Redis安装与使用
- redis安装与使用
- Redis安装使用记录
- Redis安装与使用
- JAVA数组
- 面对对象之封装及其好处
- CS231n课程笔记--线性分类
- 数组和指针的区别、字符数组和字符串指针区别
- Servlet中的web.xml
- Redis安装使用
- 【kmp算法next数组-串的最小循环节/循环周期】Period HDU
- 汇编语言(第三版)检测点重点题目整理
- 20152016-acmicpc-neerc-northern-subregional-contest J:Journey to the "The World's Start"(单调队列+DP+二分)
- PAT 甲级 1094. The Largest Generation (25)
- OSI七层模型与TCP/IP五层模型
- JavaSe复习笔记
- 欢迎使用CSDN-markdown编辑器
- 《阿里巴巴Java开发手册》终极版更新