下载安装,依次执行命令;
安装日志切割服务logrotate: yum -y install logrotate
从官方网站下载redis安装包,注意,当前在哪个目录下执行命令,下载的包将在哪个目录下
wget http://download.redis.io/releases/redis-4.0.11.tar.gz
将下载包解压
tar -zxvf redis-4.0.11.tar.gz
进入解压后的文件夹
cd redis-4.0.11
对文件进行编译,得到可执行的文件,
sudo make
执行make命令时,可能出现的错误: //我们的centos6.7是内置了gcc的,所以不会出现下面的2个错误!
可能的错误1:提示gcc找不到,这是因为centos6.7没安装gcc编译器!
解决:
gcc -v
查看一下gcc是否安装!
如果没有安装,请保证VM中的centos能连网,然后执行yum -y install gcc-c++
命令即可在线安装gcc编译器!
可能的错误2:在第一次没有安装gcc的情况下,执行了make,会产生一些残留文件,所以此时通过在线安装的方式安装gcc后,再次执行make,可能就如下下图错误,提示:jemalloc/jemalloc.h:没有那个文件或目录
所以这次报错是因为在第一次没有安装gcc的情况下,执行了make,会产生一些残留文件!
我们需要用make distclean命令清理这些残留文件后,再次make即可成功!
对编译的文件进行测试,时间较长,没有报错则没有问题,编译出的redis命令文件在src目录下
sudo make test
修改目录名为redis
sudo mv redis-4.0.11 redis
进入redis的目录,执行安装
$ cd redis/
$ sudo make install
生成配置文件
cd utils
./install_server.sh
运行上面的脚本后,会让用户设置一些配置文件
Please select the redis port for this instance: [6379] # 这里输入redis启动端口
Selecting default: 6379
Please select the redis config file name [/etc/redis/6379.conf] # 这里输入redis.conf配置文件路径
Selected default - /etc/redis/6379.conf
Please select the redis log file name [/var/log/redis_6379.log] # 这里输入日志文件路径
Selected default - /var/log/redis_6379.log
Please select the data directory for this instance [/var/lib/redis/6379] # 这里输入数据文件路径
Selected default - /var/lib/redis/6379
Please select the redis executable path [/usr/local/bin/redis-server] # 这里输入redis-server和redis-cli的安装路径
注意:
redis相关操作命令都存放在/usr/local/redis-4.0.11/src 目录下;
测试redis
测试:启动redis服务端
./redis-server
redis使用的是默认配置,也可以通过启动参数告诉redis使用指定配置
./redis-server redis.config
可看到当前的终端被阻塞,按ctrl+C可以关闭服务端,但是有时候会关闭失败,后台依旧会运行;
关闭redis-server
方法一:
找到redis的进程ID
ps -ef|grep redis
或 top | grep redis
sudo kill -9 进程ID
方法二:
使用客户端命令
redis-cli -h ip地址 -p 端口 shutdown
该命令有时会报错,不成功使用方法一
启动redis的客户端
redis-cli
必须是在服务端打开后,客户端才能登陆,否则显示连接被拒绝;成功后进入客户端:
默认只有本机可以访问,端口为6379
127.0.0.1:6379
手动更改配置
为了适应需要,如不能阻塞终端,让redis在后台运行;可以远程访问redis,修改端口以及持久化文件的存储路径等,需要修改配置;
进入redis的配置文件redis.conf
cd redis/
sudo vim redis.conf
更改
允许远程访问:将 bind 127.0.0.1 这一行注释,解除绑定本机;
修改端口:将 port 6379 这一行更改为 port ****(指定自己的端口)
配置以守护进程运行:
找到这一行,默认不是守护进程,会阻塞终端,改成yes,在后台运行,非阻塞
daemonize no
如果有需要,可以为redis设置操作密码
使用末行模式,搜索requirepass
/ requirepass
requirepass 123456
# 取消requirepass foobared 的注释,将foobared的位置换成自己的密码
重新启动redis-server
./src/redis-server redis.config
启动redis-cli客户端
redis-cli -h host -p port
执行
auth passwrod
# 没有这句不能进行读写操作