NoSql——redis(高级操作)

前端之家收集整理的这篇文章主要介绍了NoSql——redis(高级操作)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

  上篇博客讲了一下redis的基本操作,主要是安装以及一些常用命令,这篇博客来说一下redis的高级操作

一、安全性:

 设置了操作权限之后,必须先登录,没有登录的会报没有操作权限的错误

 在配置文件中,添加requirepass

  服务端:redis-start -requirepass.bat
    redis-server.exe D:\test\redis\32bit\redis.conf
  客户端:redis-client.bat
    redis-cli.exe -h 127.0.0.1 -p 6379
  再次启动客户端,报没有权限的错误
    redis 127.0.0.1:6379> keys *
    (error) ERR operation not permitted

  授权:auth+密码进行授权,用redis-client.bat每次登陆都需要验证

  redis 127.0.0.1:6379> auth leilei
	OK
  redis 127.0.0.1:6379> keys *
	(empty list or set)
  redis 127.0.0.1:6379> set username leilei
	OK
  redis 127.0.0.1:6379> get username
	"leilei"

 一次性授权,直接配置在bat文件中,在客户端添加了-a +密码
  服务端:redis-start -requirepass.bat
     redis-server.exe D:\test\redis\32bit\redis.conf
  客户端:redis-client.bat
 redis-cli.exe -h 127.0.0.1 -p 6379 -a leilei

、主从复制

  整体结构




<span style="font-size:18px;">redis-start-1.bat
    redis-server.exe								
redis-start-2.bat
    redis-server.exe redis-02.conf
redis-02.conf
    port 6380
    requirepass leilei
redis-client-1.bat
    redis-cli.exe -h 127.0.0.1 -p 6379
redis-client-2.bat
    redis-cli.exe -h 127.0.0.1 -p 6380 -a leilei</span>



  其中redis01是主机,使用默认的配置,redis02是从机,端口是6380


  操作

1、在redis-client-2.bat执行命令:
			redis 127.0.0.1:6380> slaveof 127.0.0.1 6379
			OK
2、在redis-client-1.bat添加数据
			redis 127.0.0.1:6379> set name leilei
			OK
			redis 127.0.0.1:6379> set sex man
			OK
			redis 127.0.0.1:6379> set age 24
			OK
3、在redis-client-2.bat查询
			redis 127.0.0.1:6380> keys *
			1) "sex"
			2) "age"
            3) "name"

  另一种方式,直接在配置文件修改配置信息就可以了

# Master-Slave replication. Use slaveof to make a Redis instance a copy of
# another Redis server. Note that the configuration is local to the slave
# so for example it is possible to configure the slave to save the DB with a
# different interval,or to listen to another port,and so on.
#
# slaveof <masterip> <masterport>


三、发布订阅

  整体结构


  操作


	1、启动两个订阅的客户端
			sbuscribe命令
	2、启动一个发布的客户端
			publish命令


  效果




四、持久化

  redis的持久化有两种方式,一种是默认的快照方式snapshotting,默认存的是数据,另一种是append-only file (aof),存的是操作,默认生成的aof文件是只读的,需要去掉只读属性。这个只需要设置一下配置文件中的appendonly yes即可!

猜你在找的NoSQL相关文章