挨踢 | 石武浩

石武浩的博客

shiwuhao

Redis主从复制

Redis主从服务器配置很简单,只需要修改下从服务器的配置文件即可

例如:
master: 10.211.55.6:6379
slaver: 10.211.55.7:6379

修改从服务器配置文件

1
2
3
4
5
6
[root@localhost bin]$ vi /usr/local/redis/etc/redis.conf

// 添加以下配置
slaveof 10.211.55.6 6379
// 如果主服务器开启了身份验证,需要添加主机密码
masterauth shiwuhao

修改完毕,启动测试

主服务器启动

1
2
3
4
5
6
7
8
// 登录
MacBook-Pro:~ root$ ssh root@10.211.55.6
// 启动Redis
[root@localhost ~]$ /usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf &
// 进入客户端
[root@localhost ~]$ /usr/local/redis/bin/redis-cli -a shiwuhao
127.0.0.1:6379> set name shiwuhao
OK

从服务器启动

1
2
3
4
5
6
7
8
9
// 登录
MacBook-Pro:~ root$ ssh root@10.211.55.7
// 启动Redis
[root@localhost ~]$ /usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf &
// 进入客户端
[root@localhost ~]$ /usr/local/redis/bin/redis-cli -a shiwuhao
// 查看是否已同步
127.0.0.1:6379> get name
"shiwuhao"

同步成功

// 如果从服务器启动提示 Error condition on socket for SYNC: No route to host,
解决方案见:Redis主从复制 提示:Error condition on socket for SYNC: No route to host

Redis加入身份验证

Redis数据库可以设置安全,所以做出相关的任何客户端都需要在执行命令之前进行身份验证。为了确保Redis需要设置在配置文件中的密码验证一致。

默认情况下授权密码为空

1
2
3
127.0.0.1:6379> config get requirepass
1) "requirepass"
2) ""

阅读更多

键值相关命令——Redis学习笔记

1:KEYS pattern
返回满足给定pattern的所有key

1
2
3
4
5
6
7
127.0.0.1:6379> keys *
1) "name"
2) "name2"
3) "age"
127.0.0.1:6379> keys n*
1) "name"
2) "name2"

2:EXISTS key [key …]
确认一个key是否存在

1
2
3
4
127.0.0.1:6379> exists name
(integer) 1
127.0.0.1:6379> exists nokey
(integer) 0

阅读更多

有序集合命令——Redis学习笔记

1:ZADD key score member [score member …]
添加一个或多个成员到有序集合,如果该成员已经存在,更新其分数(成员不存在,分数相同时,也会创建新的成员)

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
127.0.0.1:6379> zadd zset1 1 one 2 two 3 three
(integer) 3
127.0.0.1:6379> zrange zset1 0 -1 withscores
1) "one"
2) "1"
3) "two"
4) "2"
5) "three"
6) "3"
127.0.0.1:6379> zadd zset1 4 three
(integer) 0
127.0.0.1:6379> zrange zset1 0 -1 withscores
1) "one"
2) "1"
3) "two"
4) "2"
5) "three"
6) "4"
127.0.0.1:6379> zadd zset1 4 five
(integer) 1
127.0.0.1:6379> zrange zset1 0 -1 withscores
1) "one"
2) "1"
3) "two"
4) "2"
5) "five"
6) "4"
7) "three"
8) "4"

阅读更多

无序集合命令——Redis学习笔记

1:SADD key member [member …]
添加一个或多个成员到无序集合

1
2
3
4
5
6
7
127.0.0.1:6379> sadd myset 'hello'
(integer) 1
127.0.0.1:6379> sadd myset 'world'
(integer) 1
127.0.0.1:6379> smembers myset
1) "world"
2) "hello"

2:SCARD key
获取无序集合成员的数量

1
2
3
4
5
127.0.0.1:6379> smembers myset
1) "world"
2) "hello"
127.0.0.1:6379> scard myset
(integer) 2

阅读更多

列表命令——Redis学习笔记

Redis列表是简单的字符串列表,排序插入顺序。可以在头部或列表的尾部Redis的列表添加元素。

1:LPUSH key value1 [value2]
在列表头部加上一个或多个值 (先进后出)

1
2
3
4
5
127.0.0.1:6379> lpush mylist hello world
(integer) 2
127.0.0.1:6379> lrange mylist 0 -1
1) "world"
2) "hello"

2:RPUSH key value1 [value2]
在列表尾部部加上一个或多个值(先进先出)

1
2
3
4
5
127.0.0.1:6379> rpush list2 hello world
(integer) 2
127.0.0.1:6379> lrange list2 0 -1
1) "hello"
2) "world"

阅读更多

哈希命令——Redis学习笔记

Redis的哈希值是字符串字段和字符串值之间的映射

1:HSET key field value
设置哈希字段的字符串值

1
2
3
4
5
127.0.0.1:6379> hset table_user id 001
(integer) 1
127.0.0.1:6379> hgetall table_user
1) "id"
2) "001"

2:HMSET key field1 value1 [field2 value2 ]
设置哈希字段的多个值

1
2
3
4
5
6
7
8
9
127.0.0.1:6379> hmset table_user id 001 name 'shiwuhao' age 23
OK
127.0.0.1:6379> hgetall table_user
1) "id"
2) "001"
3) "name"
4) "shiwuhao"
5) "age"
6) "23"

阅读更多

linux下安装redis

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// 1.下载安装包
$ wget http://download.redis.io/releases/redis-3.0.4.tar.gz

// 2.编译源程序
$ tar xzvf redis-3.0.4.tar.gz
$ cd redis-3.0.4
$ make

// 3.移动文件,便于管理
$ mkdir -p ./redis/bin
$ mkdir -p ./redis/etc

$ mv mkreleasehdr.sh redis-benchmark redis-check-aof redis-check-dump redis-cli redis-server /usr/local/redis/bin/
$ mv /lnmp/redis-3.0.4/redis.conf  /usr/local/redis/etc/

// 4.启动redis服务 如需后台启动redis,更改配置文件/usr/local/redis/etc/redis.conf 将 daemonize 改为 yes
$ /usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf

// 5.进入客户端
$ /usr/local/redis/bin/redis-cli

// 6.结束redis服务
$ pkill redis-server
上一页
下一页

程序猿,爱游戏,爱电影,爱折腾
邮箱:admin@shiwuhao.com