redis

【安装redis】

1.获取redis资源

  wget http://download.redis.io/releases/redis-4.0.8.tar.gz

2.解压

  tar xzvf redis-4.0.8.tar.gz

3.安装

  cd redis-4.0.8

  make

  cd src

  make install PREFIX=/usr/local/redis

4.移动配置文件到安装目录下

  cd ../

  mkdir /usr/local/redis/etc

  mv redis.conf /usr/local/redis/etc

 5.配置redis为后台启动

  vi /usr/local/redis/etc/redis.conf //将daemonize no 改成daemonize yes

6.将redis加入到开机启动

  vi /etc/rc.local //在里面添加内容:/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf (意思就是开机调用这段开启redis的命令)

7.开启redis

  /usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf 

常用命令  

  redis-server /usr/local/redis/etc/redis.conf //启动redis

  pkill redis  //停止redis

  卸载redis:

    rm -rf /usr/local/redis //删除安装目录

    rm -rf /usr/bin/redis-* //删除所有redis相关命令脚本

    rm -rf /root/download/redis-4.0.4 //删除redis解压文件夹

【redis配置】

配置redis可通过配置文件 redis.conf或者通过命令行修改,

命令行修改方式:

/usr/local/redis/bin/redis-cli -h host -p port -a password 即可连接redis

[1] 获取配置文件信息

127.0.0.1:6379> CONFIG GET loglevel   //获取配置文件中,loglevel这个变量的值
1) "loglevel"
2) "notice"

返回的数值中,1)是变量名  2)变量的值

[2]编辑配置文件信息

CONFIG SET 命令基本语法:
redis
127.0.0.1:6379> CONFIG SET CONFIG_SETTING_NAME NEW_CONFIG_VALUE
redis 127.0.0.1:6379> CONFIG SET loglevel debug

 OK
 redis 127.0.0.1:6379> CONFIG get loglevel
 1) "loglevel"
 2) "debug"

 

[3] 插入数据

1)string类型

string是redis最基本的类型,你可以理解成与Memcached一模一样的类型,一个key对应一个value。

string类型是二进制安全的。意思是redis的string可以包含任何数据。比如jpg图片或者序列化的对象 。

string类型是Redis最基本的数据类型,一个键最大能存储512MB。

实例
redis 127.0.0.1:6379> SET username "testuser1"
OK
redis 127.0.0.1:6379> GET username
"testuser1"
redis 127.0.0.1:6379> del username
2)list类型
Redis 列表是简单的字符串列表,按照插入顺序排序
实例:
127.0.0.1:6379> lpush key value 127.0.0.1:6379> lpush userlist user1 (integer) 1 127.0.0.1:6379> lpush userlist user2 (integer) 2 127.0.0.1:6379> lpush userlist user3 (integer) 3 127.0.0.1:6379> lrange key start stop 127.0.0.1:6379> lrange userlist 0 20 1) "user3" 2) "user2" 3) "user1"

3)set类型

sadd命令:添加一个 string 元素到 key 对应的 set 集合中,成功返回1,如果元素已经在集合中返回 0,如果 key 对应的 set 不存在则返回错误。

sadd key member

以上实例中 user3 添加了两次,但根据集合内元素的唯一性,第二次插入的元素将被忽略。

【清空数据】

1)清空单个库中的所有数据

127.0.0.1:6379> flushdb
OK

2)清空所有数据

127.0.0.1:6379> flushall
OK

【redis安全】

1)查看是否启用了密码验证

127.0.0.1:6379> CONFIG get requirepass
1) "requirepass"
2) ""

默认情况下 requirepass 参数是空的,这就意味着你无需通过密码验证就可以连接到 redis 服务。

你可以通过以下命令来修改该参数:

127.0.0.1:6379> CONFIG set requirepass "test_password"
OK
127.0.0.1:6379> CONFIG get requirepass
1) "requirepass"
2) "test_password"

设置密码后,客户端连接 redis 服务就需要密码验证,否则无法执行命令。

修改密码也可以通过直接修改配置文件的方法来进行,配置文件redis.conf中加入如下行

requirepass your_pass

【禁用危险命令】

为了保证redis的数据安全,在启用了连接密码后,防止误操作修改配置,删除数据等,需要将控制台里面的敏感命令禁用掉,方法如下:

redis.conf文件中添加如下语句

rename-command CONFIG ""
rename-command flushall ""
rename-command flushdb ""

如果不想禁用,想替换成别的名字也是可以的
rename-command FLUSHALL joYAPNXRPmcarcR4ZDgC81TbdkSmLAzRPmcarcR  
rename-command FLUSHDB  qf69aZbLAX3cf3ednHM3SOlbpH71yEXLAX3cf3e  
rename-command CONFIG   FRaqbC8wSA1XvpFVjCRGryWtIIZS2TRvpFVjCRG 

禁用后,再次执行config等敏感操作,会提示 unknown command

 

AUTH 命令基本语法格式如下:

127.0.0.1:6379> AUTH "test_password"
OK
验证通过后即可执行命令
127.0.0.1:6379> SET mykey "Test value"
OK
127.0.0.1:6379> GET mykey
"Test value"

 

posted @ 2018-06-19 17:40  TomasWangkai  阅读(153)  评论(0编辑  收藏  举报