redis安装参考
这步我是下载压缩包在usr/local下解压的, make &make intall 没出什么问题
我把原本的重要的几个文件文件位置有所移动:
在/usr/local/redis-3.2.12下新建了:
/etc :放redis.conf (并不是自启动用的,自启动用的redis.conf在etc/redis下)
/bin:
图片.png
—————————————————————————————————————
命令行进入,以及开启后台管理参考
redis作为一个高速数据库,在互联网上,必须有对应的安全机制来进行保护,方法有2,如下。
1.比较安全的办法是采用绑定IP的方式来进行控制。
请在redis.conf文件找到如下配置
# If you want you can bind a single interface, if the bind option is not
# specified all the interfaces will listen for incoming connections.
#
# bind 127.0.0.1
把# bind 127.0.0.1前面的 注释#号去掉,然后把127.0.0.1改成你允许访问你的redis服务器的ip地址,表示只允许该ip进行访问
这种情况下,我们在启动redis服务器的时候不能再用:redis-server,改为:redis-server path/redis.conf 即在启动的时候指定需要加载的配置文件,其中path/是你上面修改的redis配置文件所在目录,这个方法有一点不太好,我难免有多台机器访问一个redis服务。
2.设置密码,以提供远程登陆
打开redis.conf配置文件,找到requirepass,然后修改如下:
requirepass yourpassword
登录:
连接服务器的时候就可以指定登录密码,避免单独输入上面授权命令
命令如下:
redis-cli -h 127.0.0.1 -p 6379 -a youPassword
有时候我们不知道当前redis服务器是否有设置验证密码,或者忘记了密码是什么,我们可以通过命令行输入命令查看密码,命令如下:
config get requirepass
—————————————————————————————————————
配置redis到linux服务器上变成服务:参考
redis配置成自启动:
1、在etc下创建redis文件夹,将redis.conf放置在里面,命名6379.conf
2、在/etc/init.d下新建redis文件,文件内容为(接下来是我服务器的配置:带密码的,同时在redis.conf有开启守护进程,密码运行,bind本地)
3、更改redis文件权限使其可以执行
#!/bin/sh
# chkconfig: 2345 80 90
#
# Simple Redis init.d script conceived to work on Linux systems
# as it does use of the /proc filesystem.
REDISPORT=6379
REDISPASSWORD=password #这里自己去redis.conf开启并设置密码
EXEC=/usr/local/bin/redis-server #这里如果是make&make install则会自动在这个文件夹下生成
CLIEXEC=/usr/local/bin/redis-cli #这里如果是make&make install则会自动在这个文件夹下生成
PIDFILE=/var/run/redis_6379.pid
CONF="/etc/6379.conf"
#echo $1
case "$1" in
cli)
echo "Cli Redis server..."
$CLIEXEC -p 6379 -a xuanxijia
;;
start)
if [ -f $PIDFILE ]
then
echo "$PIDFILE exists, process is already running or crashed"
else
echo "Starting Redis server..."
$EXEC $CONF &
fi
;;
stop)
if [ ! -f $PIDFILE ]
then
echo "$PIDFILE does not exist, process is not running"
else
PID=$(cat $PIDFILE)
echo $PID
echo "Stopping ..."
$CLIEXEC -p $REDISPORT -a $REDISPASSWORD shutdown
while [ -x /proc/${PID} ]
do
echo "Waiting for Redis to shutdown ..."
sleep 1
done
echo "Redis stopped"
fi
;;
*)
echo "Please use start or stop as first argument"
;;
esac
3、chkconfig --add redis 注册服务
特别要注意:
1、windosz编辑会出现换行符问题,需要在liunx 下转化
2、chkconfig --add redis 注册服务不通过时需要加以下两个在文件开头)
#chkconfig: 2345 90 10
#description: Redis is a persistent key-value database
3、有些镜像没有/etc/init.d,自己建
—————————————————————————————————————
配置php支持redis:参考
1、//进入目录
cd /usr/local/src
2、//下载源码包
wget https://github.com/nicolasff/phpredis/archive/2.2.4.tar.gz
3、//解压
tar zxvf phpredis-2.2.4.tar.gz
4、//进入安装包
cd phpredis-2.2.4
5、//此时需要使用php的phpize文件进行编译:
我找的在:
图片.png
输入 /usr/local/php5/bin/phpize, 即可,如果报没有php-devel
这是直接使用yum安装php-devel包即可:
yum install php-devel
6、输入 配置
./configure --with-php-config=/usr/local/php5/bin/php-config
7、
make #编译
这一步报错:
! ERROR ! |
| The test-suite requires that proc_open() is available. |
| Please check if you disabled it in php.ini.
图片.png
解决方法:
vi /usr/local/php/etc/php.ini
找到disable_functions = shell_exec, system, passthru, exec, popen, proc_open
改为disable_functions = shell_exec, system, passthru, exec, popen
保存退出。
接着
8、make install #安装生成.so文件
图片.png
//其中redis.so文件默认加载位置影响make install的执行,要去php目录实际寻找,并添加入etc目录下的php.ini
9、配置php支持
vi /usr/local/php/etc/php.ini #编辑配置文件,在最后一行添加以下内容
添加 注意前面千万不要有;
extension=/usr/local/php5/lib/php/extensions/no-debug-non-zts-20131226/redis.so;
10、apache重启服务器, nignx重启FPM模块
网友评论