Redis教程(Linux)

这里汇总了从简单的安装到较为复杂的配置,由浅入深的学习redis...

一 , 安装

  1) redis扩展安装

    从 官网上下载扩展压缩包 

  

wget http://pecl.php.net/get/redis-4.1.0.tgz
//下载压缩包

tar -zxvf redis-4.1.0.tgz
//解压

cd redis-4.1.0
//进入解压之后的目录

phpize 
//生成PHP  configure文件

./configure --with-php-config=/usr/bin/php-config  //--with-php-config 是告诉扩展需要安装的位置,自动帮我们配置好编译程序

make && make install

//编译安装

vim /etc/php.ini
//添加redis扩展
[redis]
extension=redis.so

//重启php-fpm
systemctl reload php-fpm

//查看时候已经加载成功
php -m | grep redis

  注意点:

    1. 路径使用自己的实际路径

              2. 如果不确定使用哪个php.ini 文件    可以使用命令进行查看  

php -i | grep php.ini

    3. 执行./configure 报错,看是否安装autoconf  gcc, 否则,安装

yum install autoconf

     

    4.扩展安装一般步骤:

$ cd extname
$ phpize
$ ./configure
$ make
# make install

  常见错误:

    1.  Cannot find config.m4. Make sure that you run '/usr/bin/phpize' in the top level source directory

//将源码包中的 /usr/local/src/php-7.2.13/ext/openssl/config.m4 
// 如果config.m4不存在则将config0.m4拷贝出一个命令为config.m4    
cp config0.m4 config.m4

//拷贝到需要进行编辑的扩展目录下

cp config.m4 /usr/local/src/redis-5.0.3/config.m4

/usr/local/php/bin/phpize

  2)redis 服务端安装

    从官网上下载安装包

  

//下载安装包
wget http://download.redis.io/releases/redis-4.0.10.tar.gz

tar -zxvf redis-4.0.10.tar.gz

cd redis-4.0.10

make

  安装完成之后,会生成一个目录src

    可手动拷贝redis-server、redis-cli、redis-check-aof、redis-check-dump等至/usr/local/bin目录下,也可执行make install

//查看redis服务的版本信息
redis-server -v

  指定目录安装

make  install  PREFIX=/usr/local/redis

  定制的给配置文件分配目录

    1. 创建配置文件目录,dump file 目录 , 进程pid目录, log目录

    

mkdir -p /etc/redis


mkdir -p /var/redis

cd /var/redis

mkdir data log run 

  拷贝解压包下的redis.conf 至 /etc/redis

cp redis.conf /etc/redis/

  编辑配置文件:

  //pidfile

  

  //dump目录

   //log目录

  //修改运行模式 daemonize

   持久化:  默认rdb,可选择是否开启aof,若开启,修改配置文件appendonly

 

  启动redis,  

redis-server /etc/redis/redis.conf

  此时可以观察设置的配置中的目录中的数据信息

  2.  设置开机启动

       将压缩包utils下的redis启动脚本移至/etc/init.d/

cp redis_init_script   /etc/init.d/redis

   修改脚本内容

    此时,可以使用service   redis start/stop  启动/关闭

    

    如果不能使用以上配置, 则需要添加权限  

    

chmod +x /etc/init.d/redis

  

    如果还是不能成功,则修改脚本,添加启动优先级信息

     

# chkconfig:   2345 90 10
# description:  Redis is a persistent key-value database


//注意,一定是这种注释的这样,不能去除

  解释:

  上面的注释的意思是,redis服务必须在运行级2,3,4,5下被启动或关闭,启动的优先级是90,关闭的优先级是10

  这个时候就可以设置自动启动

  

chkconfig redis on

二. 设置密码

vim  /etc/redis.conf

#requirepass foobared去掉注释,foobared改为自己的密码

保存,重启redis服务

cd /usr/local/bin

./redis-server /etc/redis.conf

 链接测试

测试连接:./redis-cli 
auth  密码

  

三. 远程连接

1、修改redis服务器的配置文件
vi redis.conf

注释以下绑定的主机地址

# bind 127.0.0.1

或
vim  redis.conf

bind  0.0.0.0

protected-mode   no

2、修改redis服务器的参数配置
修改redis的守护进程为no,不启用

127.0.0.1:6379> config  set   daemonize  "no"

OK

修改redis的保护模式为no,不启用

127.0.0.1:6379> config   set   protected-mode"no"

OK

或者

config set requirepass 123 ->123是密码

注意:开启 6379端口

常见错误:

  1. 使用服务启动脚本的时候

service redis stop
Stopping ...
OK
(error) NOAUTH Authentication required.
Waiting for Redis to shutdown ...
Waiting for Redis to shutdown ...
Waiting for Redis to shutdown ...
Waiting for Redis to shutdown ...
Waiting for Redis to shutdown ...
Waiting for Redis to shutdown ...
Waiting for Redis to shutdown ...
Waiting for Redis to shutdown ...

出现这样的错误信息,redis 这时是没有停止服务的。

  解决:

  修改配置文件

vi /etc/init.d/redis
$CLIEXEC -a "password" -p $REDISPORT shutdown
原文地址:https://www.cnblogs.com/xingxia/p/redis_linux.html