1 、问题一
centos7 redis (error) NOAUTH Authentication required. 需要验证(设置的密码)
redis-cli -h ip地址 -a 密码 -p 端口 -c ---备注: -c 代表集群 去掉代表单机
或者如下操作 auth 密码
2、问题二
redis-cli 每次执行命令都要到redis 目录下执行,这样很不方便,不然会报错 command not found 表示系统不识别redis-cli命令
redis中实现redis-cli任意目录执行
找到redis-cli文件所在的目录 cp redis-cli /usr/local/bin 直接copy 到bin 文件中,这样就可以任意目录执行
3、问题三
redis 集群配置中出现Waiting for the cluster to join 一直等待中
1、设置对应的redis 端口开发 和 (端口 +10000)的端口总线程端口开放
2 杀死redis进程 pkill -9 redis 查看进程是否存在 ps -ef | grep redis
3 启动所有的redis 并查看是否启动成功 ps -ef | grep redis
如果每个都进入目录运行很麻烦,有什么方法呢?能一次性搞定呢?如下操作:
创建 start-all.sh stop-all.sh 并写入
并对文件信息赋权限
chmod +x start-all.sh
chmod +x stop-all.sh
ok 成功赋权限 现在就可以通过 ./start-all.sh 脚本运行所有的redis ,停止运行同理
4、#启动集群服务,启动之前删除所有redis 目录下的nodes.conf dump.rdb appendonly.aof
nodes.conf dump.rdb appendonly.aof
redis-cli --cluster create ip:端口1 ip:端口2 ip:端口3 ip:端口4 ip:端口5 ip:端口6 --cluster- replicas 1 -a 密码
输入yes
出现上图几句话,证明集群成功Ok
5、redis集群报错: (error) CLUSTERDOWN Hash slot not served
1.redis01/redis-cli -h "xxx.xxx.xxx.xxx" -p 8001 -c
登陆进去测试
xxx.xxx.xxx.xxx>set root adc
报错(error) CLUSTERDOWN Hash slot not served
重点:没有分配槽,因为redis集群要分配16384个槽来储存数据,那么没有分配槽则报如上错误
退出 redis 然后检测是否正常redis-trib.rb check xxx.xxx.xxx.xxx:端口
如果出现[ERR] Not all 16384 slots are covered by nodes
可以看到 16384号slots没有被分配
下一步,我们尝试使用 redis 官方推荐的 redis-trib.rb fix 命令 来修复集群(同样 redis 3版本以上的请使用redis-cli –cluster fix 进行修复
redis-trib.rb fix xxx.xxx.xxx.xxx:端口
出现ok 则成功!
6、安装Ruby,需要gem
由于国内网络原因,导致 rubygems.org 存放在 Amazon S3 上面的资源文件间歇性连接失败。所以会与遇到 gem install rack
或 bundle install 的时候半天没有响应;故此解决办法如下:
添加gem sources --add http://gems.ruby-china.org/ --remove https://rubygems.com/
发现https://gems.ruby-china.org/添加出现404错误,访问http://gems.ruby-china.org/ 也是404
换成gem sources --add http://gems.ruby-china.com/ --remove https://rubygems.org/
就可以了