Redis ERR Protocol error: too big inline request
How to repeat?
在使用redis-cli set大key的时候,由于一行太长,报错:
1
2
3
4
Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe.
All data transferred. Waiting for the last reply...
ERR Protocol error: too big inline request
ERR server closed connection
How to fix?
使用其它client, 例如python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# from redis import StrictRedis, ConnectionPool
import redis
def getConnectFromPool(host,port,password=''):
try:
pool = redis.ConnectionPool(host=host, port=port, password = password)
conn = redis.Redis(connection_pool=pool)
except Exception as e:
print ("Error:connect to redis %s:%s failed." %(host,port))
return 0
return conn
if __name__ == '__main__':
redis_conn = getConnectFromPool('172.12.1.100', 6379, password="123aaa")
file = "/home/admin/rediskey"
keyname = "galaxy_dcaeg325g24t"
with open(file) as fr:
rows = fr.readlines()[0]
print(redis_conn.set(keyname, rows))