开发者学堂课程【Redis 入门实战演练:Redis 使用基础及配置文件详解(二)】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/653/detail/10833
Redis 使用基础及配置文件详解(二)
五、Redis 的连接
假设现在有两个Redis,一个是17.31.7.101另一个是172.31.4.1:22。用4.1作为客户端,现在跨主机去连接,要在172.31.4.1:22去链接17.31.7.101。
[root@172 ~]#redis-cli -h 172.31.7.101 -p 6379
Could not connect to Redis at 172.31.7.101 :6379: Connection refused
Could not connect to Redis at 172.31. 7. 101 :6379: Connection refused
Not connected>
无法进行连接,端口没有授权连接,没有监听服务器地址。
如果想通过远程去连接的话,需要改一下 redis 配置文件[ root@redis-serverl redis-4.0.14]# vim /apps/ redis/etc/redis.conf这个配置文件是第一次改,需要更改监听地址。至少让 redis 服务能够通过远程地址连过来。Bind 后面可以写多个地址,用空格隔开。
现在输入为 bind 172.31.7.101.如果服务器有好多地址,而且都想让其连接过来,就输入 bind 0.0.0.0。改完地址之后进行重启
[ root@redis-server1 redis-4.0.14]# vim / apps/ redis/ etc/ redis . conf
[ root@redis-serverl redis-4.0. 14]#
[ rootaredis-serverl redis-4.0.14]# systemctl restart redis
[ root@redis-serverl redis-4.0.14]# ss tnl
State Recv-Q Send-Q Local Address :Port Peer Address:Port
LISTEN 0 100 127.0.0. 1:25 *:*
LISTEN 0 511 *:6379 *:*
LISTEN 0 128 *:22 *:*
LISTEN 0 100 [::1]:25 [::]:*
LISTEN 0 128 [::]:22 [::] *
进行连接
[ root@172 ~]# redis-cli -h 172.31.7.101 -p 6379
172.31.7.101:6379>
172.31.7.101 :6379>
172.31. 7. 101:6379>
通过 info[section] 查看是否连接的是172.31.7.101。Info 可以查看 redis 的运行状态或者系统等等。
本机非密码连接:# redis-cli
跨主机非密码连接:# redis-cli -h HOSTNAME/IP -p PORT
跨主机密码连接:# redis-cli -h HOSTNAME/IP -p PORT -a PASSWORD
输入密码的两种方式,一种是直接在后面跟密码,另一种是在认证的时候 AUTH+密码
Requespass +密码 客户端在连接的时候需要输入密码。
六、Shell 脚本写入数据到 Redis
1.shell 脚本内容
# cat redis. write-linux38. sh
#! /bin/bash
NUM=”seq 1 100000*
for i in S{NUM};do
redis-cli -h 127.0.0.1 set key-${i} value-${i}
echo "key-S{i} value-${i} 写入完成”
done
echo“十万个key写入到Redis完成
[ root@redis-server1 redis-4.0.14]# vim /apps/ redis/ etc/ redis. conf
[ root@redis -server1 redis-4.0.14]# systemctl
restart redis
| [ root@redis-serverl redis-4.0.14]# free
-m
total
used
free
shared buff/cache
available
Mem:972 107 630 7 234 719
Swap: 3 3
| [ root@redis-serverl redis-4.0.14]#
| [ root@redis-server1 redis-4.0.14]# LL /apps/ redis/
total 0
drwxr-xr-x 2 redis redis 134 Feb 7 19:41 bin
drwxr-xr-x 2 redis redis
6 Feb
7 19:42 data
drwxr-xr-x 2 redis redis
24 Feb
7 22:22 etc
drwxr-xr-x 2 redis redis 工
6 Feb
7 19:42 Logs
drwxr-xr-x 2 redis redis
6 Feb
7 19:42 run
[ root@redis-serverl redis-4.0.14]# LL /apps/ redis/data/
total 0
[ rootaredis-serverl redis-4. 0.14]#vim/apps/reds/etc/redis.conf
配置文件中有一个 RDB 快照,所以在进行数据持久化的时候报错了,关掉 save,先不做数据保存了,打开 ave "",即不让数据做持久化了。进行重启
[ root@redis-serverl redis-4.0.14]# systemctl restart redis
[root@redis-server1 redis-4.0.14]# ll /apps/redis/data/total 0
[root@redis-server1 redis-4.0.14]# vim /apps/redis/etc/redis.conf[root@redis-server1 redis-4.0.14]# systemctlrestart redis
[root@redis-server1 redis-4.0.14]# /apps/redis/bin/redis-cli127.0.0.1:6379>AUTH linux39
oK
127.0.0.1:6379>KEYS *.
KEYS *可以看到服务器上的所有数据,如果想查看 key 的值,例如查看 key996的值,可以输入127.0.0.2:6379>get key- 996
"valde-996".FLISHDB命令可以把所有的key清除。
127.0.0.1:6379>127.0.0.1:6379> loK
127.0.0.1:6379>KEYS*( empty list or set)
127.0.0.1:6379>SELECT 0oK
127.0.0.1:6379>SELECT 1oK
127.0.0.1:6379[1]>SELECT 15oK
127.0.0.1:6379[15]>SELECT 16
(error)ERR DB index is out of range127.0.0.1:6379[15]>SELECT 0
oK
127.0.0.1:6379>FLUSHDB
OK
127.0.0.1:6379>FLUSHALL
2.shell 脚本执行结果
key- 99998 value-99998写入完成
OK
key-99999 value-99999 写入完成
0K
key- 100000 value- 100000写入完成
十万个key写入到Redis完成
Real 7m58.757
User 0m57. 461s
Sys 6m33.032s