命令兼容性
<p>本文主要介绍Redis服务暂不支持的命令。</p>
<p>出于安全考虑,平安云弹性缓存Redis服务限制执行一些权限较高的命令。</p>
<p>集群版目前暂不支持以下命令。</p>
<table border="1" cellpadding="0" cellspacing="0">
<tbody>
<tr>
<td style="background-color:#ededed; vertical-align:top">
<p><strong>类型</strong></p>
</td>
<td style="background-color:#ededed; vertical-align:top">
<p><strong>命令</strong></p>
</td>
<td style="background-color:#ededed; vertical-align:top">
<p><strong>解释</strong></p>
</td>
</tr>
<tr>
<td rowspan="6" style="vertical-align:top">
<p>Keys(键)</p>
</td>
<td style="vertical-align:top">
<p>MIGRATE</p>
</td>
<td style="vertical-align:top">
<p>将key原子性地从当前实例迁移到目标实例的指定数据库上。</p>
</td>
</tr>
<tr>
<td style="vertical-align:top">
<p>KEYS</p>
</td>
<td style="vertical-align:top">
<p>查找所有符合指定模式的key, 比如KEYS h?llo匹配hello, hallo和hxllo等。</p>
</td>
</tr>
<tr>
<td style="vertical-align:top">
<p>MOVE</p>
</td>
<td style="vertical-align:top">
<p>将当前数据库的key移动到指定的数据库当中。</p>
</td>
</tr>
<tr>
<td style="vertical-align:top">
<p>RENAME</p>
</td>
<td style="vertical-align:top">
<p>将key改名为newkey。</p>
</td>
</tr>
<tr>
<td style="vertical-align:top">
<p>RENAMENX</p>
</td>
<td style="vertical-align:top">
<p>将key改名为newkey,newkey必须是之前不存的。</p>
</td>
</tr>
<tr>
<td style="vertical-align:top">
<p>SORT</p>
</td>
<td style="vertical-align:top">
<p>返回指定列表、集合、有序集合中经过排序的元素。</p>
</td>
</tr>
<tr>
<td rowspan="8" style="vertical-align:top">
<p>Server(服务器)</p>
</td>
<td style="vertical-align:top">
<p>SHUTDOWN</p>
</td>
<td style="vertical-align:top">
<p>停止所有客户端,关闭Redis服务器。</p>
</td>
</tr>
<tr>
<td style="vertical-align:top">
<p>CONFIG SET</p>
</td>
<td style="vertical-align:top">
<p>可以动态调整Redis服务器的配置而无须重启。</p>
</td>
</tr>
<tr>
<td style="vertical-align:top">
<p>CONFIG REWRITE</p>
</td>
<td style="vertical-align:top">
<p>对启动Redis服务器时所指定的<strong>redis.conf</strong>文件进行改写。</p>
</td>
</tr>
<tr>
<td style="vertical-align:top">
<p>CONFIG RESETSTAT</p>
</td>
<td style="vertical-align:top">
<p>重置INFO命令中的某些统计数据。</p>
</td>
</tr>
<tr>
<td style="vertical-align:top">
<p>FLUSHDB</p>
</td>
<td style="vertical-align:top">
<p>清空当前数据库中的所有key。</p>
</td>
</tr>
<tr>
<td style="vertical-align:top">
<p>FLUSHALL</p>
</td>
<td style="vertical-align:top">
<p>清空整个Redis服务器的数据(所有数据库的所有key)。</p>
</td>
</tr>
<tr>
<td style="vertical-align:top">
<p>CLUSTER MEET</p>
</td>
<td style="vertical-align:top">
<p>用来连接不同的Redis集群节点,并使该Redis节点进入工作集群。</p>
</td>
</tr>
<tr>
<td style="vertical-align:top">
<p>CLUSTER FORGET</p>
</td>
<td style="vertical-align:top">
<p>从集群中移除指定的节点。</p>
</td>
</tr>
<tr>
<td style="vertical-align:top">
<p>String(字符串)</p>
</td>
<td style="vertical-align:top">
<p>MSETNX</p>
</td>
<td style="vertical-align:top">
<p>当且仅当所有指定的key都不存在时,同时设置一个或多个key-value对。</p>
</td>
</tr>
<tr>
<td rowspan="4" style="vertical-align:top">
<p>List(列表)</p>
</td>
<td style="vertical-align:top">
<p>RPOPLPUSH</p>
</td>
<td style="vertical-align:top">
<p>移出source列表的尾元素,并将其插入到destination列表的头元素位置。</p>
</td>
</tr>
<tr>
<td style="vertical-align:top">
<p>BRPOP</p>
</td>
<td style="vertical-align:top">
<p>移出并获取列表内最后一个元素时,如果列表没有元素可以弹出,连接会被阻塞到列表超时或发现列表有可弹出元素为止。</p>
</td>
</tr>
<tr>
<td style="vertical-align:top">
<p>BLPOP</p>
</td>
<td style="vertical-align:top">
<p>移出并获取列表内第一个元素时,如果列表没有元素可以弹出,连接会被阻塞列表直到超或发现列表有可弹出元素为止。</p>
</td>
</tr>
<tr>
<td style="vertical-align:top">
<p>BRPOPLPUSH</p>
</td>
<td style="vertical-align:top">
<p>将source列表的尾元素弹出,插入到destination列表的头元素位置,如果source列表没有元素,连接会被阻塞source列表超时,或source列表有可弹出元素为止。</p>
</td>
</tr>
<tr>
<td rowspan="2" style="vertical-align:top">
<p>HyperLogLog</p>
</td>
<td style="vertical-align:top">
<p>PFMERGE</p>
</td>
<td style="vertical-align:top">
<p>将多个Hyperloglog合并为一个Hyperloglog。</p>
</td>
</tr>
<tr>
<td style="vertical-align:top">
<p>PFCOUNT</p>
</td>
<td style="vertical-align:top">
<ul>
<li>作用于单个键时,返回储存在给定键的Hyperloglog的近似基数;</li>
<li>如果作用于多个键时,返回所有给定键的Hyperloglog并集的近似基数。</li>
</ul>
</td>
</tr>
<tr>
<td rowspan="5" style="vertical-align:top">
<p>Transaction(事务)</p>
</td>
<td style="vertical-align:top">
<p>DISCARD</p>
</td>
<td style="vertical-align:top">
<p>取消事务,放弃执行事务块内的所有命令。</p>
</td>
</tr>
<tr>
<td style="vertical-align:top">
<p>EXEC</p>
</td>
<td style="vertical-align:top">
<p>执行所有事务块的命令。</p>
</td>
</tr>
<tr>
<td style="vertical-align:top">
<p>MULTI</p>
</td>
<td style="vertical-align:top">
<p>标记一个事务块的开始。</p>
</td>
</tr>
<tr>
<td style="vertical-align:top">
<p>UNWATCH</p>
</td>
<td style="vertical-align:top">
<p>取消WATCH命令对所有key的监视。</p>
</td>
</tr>
<tr>
<td style="vertical-align:top">
<p>WATCH</p>
</td>
<td style="vertical-align:top">
<p>监视一个(或多个)key,如果在事务执行之前这个(或这些)key被其他命令所改动,那么事务将被打断。</p>
</td>
</tr>
<tr>
<td rowspan="6" style="vertical-align:top">
<p>Scripting(脚本)</p>
</td>
<td style="vertical-align:top">
<p>EVAL</p>
</td>
<td style="vertical-align:top">
<p>对lua脚本进行求值。语法为EVAL script numkeys key[key…] arg[arg…]。</p>
</td>
</tr>
<tr>
<td style="vertical-align:top">
<p>EVALSHA</p>
</td>
<td style="vertical-align:top">
<p>作用和EVAL命令一样,都用于对脚本求值。但为了减少带宽的消耗,EVALSHA命令接受的第一个参数不是脚本,而是脚本的SHA1校验和。</p>
</td>
</tr>
<tr>
<td style="vertical-align:top">
<p>SCRIPT EXISTS</p>
</td>
<td style="vertical-align:top">
<p>根据指定的脚本校验和,检查指定的脚本是否存在于脚本缓存中。</p>
</td>
</tr>
<tr>
<td style="vertical-align:top">
<p>SCRIPT FLUSH</p>
</td>
<td style="vertical-align:top">
<p>清除所有脚本缓存。</p>
</td>
</tr>
<tr>
<td style="vertical-align:top">
<p>SCRIPT KILL</p>
</td>
<td style="vertical-align:top">
<p>结束当前正在运行的脚本。</p>
</td>
</tr>
<tr>
<td style="vertical-align:top">
<p>SCRIPT LOAD</p>
</td>
<td style="vertical-align:top">
<p>将一个脚本存入脚本缓存,但并不立即运行它。</p>
</td>
</tr>
</tbody>
</table>
提交成功!非常感谢您的反馈,我们会继续努力做到更好!