redis安装和使用详细教程文档格式.docx
- 文档编号:16713093
- 上传时间:2022-11-25
- 格式:DOCX
- 页数:10
- 大小:19.21KB
redis安装和使用详细教程文档格式.docx
《redis安装和使用详细教程文档格式.docx》由会员分享,可在线阅读,更多相关《redis安装和使用详细教程文档格式.docx(10页珍藏版)》请在冰豆网上搜索。
install
2.移动配置文件位置(为了便于管理)
/usr/local/
mkdir
-p
/usr/local/redis/bin
/usr/local/redis/etc
mv
/lamp/redis-2.4.17/redis.conf
/lamp/redis-2.4.17/src
mkreleasehdr.sh
redis-benchmark
redis-check-aof
redis-check-dump
redis-cli
redis-server
3.修改配置文件
vi
/usr/local/redis/etc/redis.conf
一、将daemonize
no
中no改为yes[yes指后台运行]
4.启动/随机启动:
./redis-server
/usr/local/redis/etc/redis.conf#启动redis并指定配置文件。
#vi
/etc/rc.local
#设置随机启动。
/usr/local/redis/bin/redis-server
5.查看是否启动成功
ps
-ef
|
grep
redis
netstat
-tunpl
6379#查看端口是否占用。
6.进入客户端/退出
./redis-cli#进入
quit#退出
7.关闭redis
pkill
redis-server#关闭
./redis-cli
shutdown#关闭
************************************Redis安全************************************
Redis的安全性?
?
(由以下4种方式)
1.用ACL控制器安全性。
2.在redis.conf配置文件增加下面这一行配置,即可把redis绑定在单个接口上(但并不是只有接受这个网卡的数据)。
bind
127.0.0.1
3.给redis加上较长密码(无需要记住)
4.在redis.conf配置启用认证功能。
5.SSL代理
6.禁用指定命令。
**************************************
Redis配置
**********************************************
daemonize
如果需要在后台运行,把该项改为yes
pidfile
配置多个pid的地址
默认在/var/run/redis.pid
绑定ip,设置后只接受来自该ip的请求
port
监听端口,默认为6379
timeout
设置客户端连接时的超时时间,单位为秒
loglevel
分为4级,debug、verbose、notice、warning
logfile
配置log文件地址
databases
设置数据库的个数,默认使用的数据库为0
save
设置redis进行数据库镜像的频率
rdbcompression
在进行镜像备份时,是否进行压缩
Dbfilename
镜像备份文件的文件名
Dir
数据库镜像备份的文件放置路径
Slaveof
设置数据库为其他数据库的从数据库
Masterauth
主数据库连接需要的密码验证
Requirepass
设置登录时需要使用的密码
Maxclients
限制同时连接的客户数量
Maxmemory
设置redis能够使用的最大内存
Appendonly
开启append
only模式
以下了解即可:
Appendfsync
设置对appendonly.aof文件同步的频率
vm-enabled
是否开启虚拟内存支持
vm-swap-file
设置虚拟内存的交换文件路径
vm-max-memory
设置redis使用的最大物理内存大小
vm-page-size
设置虚拟内存的页大小
vm-pages
设置交换文件的总的page数量
vm-max-threads
设置VM
IO同时使用的线程数量
Glueoutputbuf
把小的输出缓存存放在一起
hash-max-zipmap-entries
设置hash的临界值
Activerehashing
重新hash
*******************************************************************
5种数据类型:
字符串、哈希、链表、集合、有序集合。
支持:
push/pop、add/remove
、取交集、并集、差集、排序。
redis<
===同步====>
mysql
select
num#选择库,默认在0库,共16个库
auth
liweijie#授权用户所需密码(密码就是redis.conf中配置的密码)
flushdb#清空数据库。
String(字符串)类型:
set
name
lijie#设置键name的值为lijie
get
name#获取name的值。
keys
*#查询所有的键。
setnx
liweijie#如果键已存在则返回0,不更新,防止覆盖。
setex
haircolor
10
red
#设置键的值的有效期为10秒。
setrange
6
#替换键的值从第6个字符开始换为
mset
name1
李大伟
name2
李小伟#设置多个键的值。
msetnxname1
张三
name3
李四#判断键是否存在,不存在则设置,否则不设置返回0
mget
name3#一次获取多个键的值。
getset
Tom#重新设置键的值,并返回旧的键值。
getrange
18#截取email键的值,从第6-18位间的字符。
incr
uid#每次自增1
(如果key中uid不存在,则设置并从0开始,下同)
incrby
uid
5#每次自增5
-5#每次自减5
decr
#每次自减1
decrby
5#每次自减5
appendname1
@#给name1的值,添加字符串@
strlenname1#返回键name1的值的长度。
*************************************************************************
Hashes(哈希)类型:
hset
user:
001
liweijie#哈希设置用户user:
001的name键值为liweijie
age
21#同样,增加一个age键值为21
hsetnx
22#同上,但检测键是否存在。
若不存在创建。
hmset
002
liweijie2
26
sex
1#同时设置多个键的值。
hget
name#哈希获取用户user:
001的name键的值。
#同上。
hmget
sex#获取多个指定的键的值。
hgetall
001#获取所有键的值。
hincrbyuser:
-8#在指定键上加上给定的值。
hexists
sex#检测指定的键值是否存在。
hlen
001#返回指定哈希的键个数/字段个数。
hdel
sex#删除指定(user:
001)哈希的指定字段或是键值。
hkeys
003#返回哈希里所有字段或是键值。
*********************************************************************
Lists(链表)类型及操作(棧或队列):
lpush
mylist
"
world"
#从头部插入字符串
hello"
#同上
lrange
0
-1#获取从0到最后一个如[1)
2)
]
rpush
jiejie"
#在尾部插入
linsert
before
this
is
linsert"
#指定插入位置(在hello之前插入)。
lset
what"
#设置修改指定下标的值。
lrem
1
#删除(1个)一个值为hello的元素。
(n<
0从尾部删除,n=0全部删除)
ltrim
2
#保留表中下标为1/2的元素。
lpop
mylist#弹出开头元素并返回。
rpop
mylist#弹出尾部元素并返回。
rpoplpush
mylist2
#从mylist尾部弹出插入到mylist2的头部。
lindex
0#获取表下标为0的元素值。
llen
mylist#返回表元素个数(相当于count($arr
))。
sets(集合)类型及操作(好友推荐、blog、tag功能):
smembers
myset#查看myset集合中所有元素值。
sadd
myset
#向mysets集合中添加一个值hello
srem
#删除myset集合中名称为hello的元素。
spop
#随机弹出并返回mysets中的一个元素。
sdiff
myset2
myset3#返回myset2中的与myset3的差集(以myset2为准)。
sdiffstore
myset4
myset3#返回myset2中的与myset3的差集,并存入myset4中去。
sinter
myset3#返回myset2与myset3的交集。
sinterstore
myset5
myset3#返回myset2与myset3的交集,并存入myset5中去。
sunion
myset3#求并集(去重复)
sunionstore
myset6
myset3#求并集,并存入myset6中去。
smove
myset3
three"
#将myset2中的three移到myset3中去。
scard
myset2#返回元素个数。
sismember
one"
#判断元素one是不是myset2集合的(相当于is_array())。
srandmember
myset2#随机返回myset2集合中的一个元素,但不删除(相当于array_rand())。
sorted
sets(有序集合)类型及操作(以scores排序):
zadd
myzset
#向顺序1的添加元素one
two"
3
#相当于更新顺序为2的值
zrange
-1
withscores#查看所有元素并带上排序(默认升序)。
zrem
#删除two
zincrby
#将two的顺序值加上2
zrank
#返回集合中元素的索引下标值。
zrevrank
two#元素反转并返回新下标值。
zrevrange
withscores#按顺序反转(相当于降序排序)
zrangebyscore
withscores#返回顺序为1-10的元素(可做分页)。
zcount
#返回顺序在1-10之间元素的个数。
zcard
myzset#返回集合中所有元素的个数。
zremrangebyrank
2#删除集合中下标为1到2的元素。
zremrangebyscore
10#删除集合中顺序为1到10的元素。
Redis常用命令
键/值相关命令。
*
#查询所有
user*#查询指定的
exists
001#判断是否存在。
del
name#删除指定的键。
expire
addr
10#设置过期时间
ttl
addr#查询过期时间
#选择数据库
move
1#将age移到1数据库。
#获取
persist
age#移除age的过期时间。
randomkey#随机返回一个key
rename
name2#重命名键
type
myset#返回键的类型。
ping
#测试redis连接是否存活。
echo
lamp#输出一个lamp
10#选择数据库。
quit/exit/crtl+C#退出客户端
dbsize#返回库里的键的个数。
服务器相关命令:
info#显示redis服务器的相关信息。
config
*/loglevel
#返回所有/指定的配置信息。
flushdb#删除当前库中的所有键/表。
flushall#删除所有数据库中的所有键/表
二、Redis高级部分:
1、Redis安全性:
2.给redis加上较长密码
#
requirepass
foobared
beijing
3.在redis.conf配置启用认证功能。
方式一:
Auth
beijing
方式二:
-a
4.在redis.conf配置文件增加下面这一行配置,即可把redis绑定在单个接口上(但并不是只有接受这个网卡的数据)。
127.0.0.1(单台机器的时候可以配置,分布式或主从复制时最好不要配置)
2、Redis主从复制:
redis只需在从服务器(slave)上配置即可:
slaveof
211.122.11.11
6379
#指定master
的ip
和端口
masterauth
beijing#这是master主机的密码
Info#查看主/从服务器的状态。
3、Redis事务处理:
Redis事务很不完善。
4、Redis持久化机制:
1.两种方式:
一、备份数据到磁盘(快照)[
snapshotting(快照)也是默认方式]
二、记录操作命令[
Append-only
file(缩写aof)的方式]
snapshotting(快照)也是默认方式]
900
#900秒内如果超过1个key被修改,则发起快照保存
300
#300秒内容如超过10个key被修改,则发起快照保存
60
10000
file(缩写aof)的方式](较安全持久化)
appendonly
yes
#启用aof
持久化方式
appendfsync
always
//收到写命令就立即写入磁盘,最慢,但是保证完全的持久化
everysec
//每秒钟写入磁盘一次,在性能和持久化方面做了很好的折中
//完全依赖os,性能最好,持久化没保证
三、PHP
+
Redis组合
1.上传模块:
owlient-phpredis-2.1.1-1-g90ecd17.tar.gz文件
解压tar
zxf
Cd
owlient-phpredis-g90ecd17/
/usr/local/php/bin/phpize#执行生成configure文件
./configure
-
-with-php-config=/usr/local/php/bin/php-config#配置编译
Make
install
2.修改php.ini文件添加如下:
Extension=redis.so
重启apache服务器。
3.PHP连接Redis服务器
<
Php
$redis
=
new
redis();
$redis->
connect('
localhost'
6379);
>
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- redis 安装 使用 详细 教程