RDBMS服务软件php
NoSQL服务软件html
Redis介绍nginx
1、装包web
从源码安装redis
[root@ip50 redis]# yum -y install gcc //安装编译环境 [root@ip50 redis]# tar -zxvf redis-4.0.8.tar.gz [root@ip50 redis]# cd redis-4.0.8/ [root@ip50 redis-4.0.8]# make && make install
2、初始化配置数据库
配置服务运行参数vim
[root@ip50 redis-4.0.8]# cd utils/ [root@ip50 utils]# ./install_server.sh //初始化
3、启动/中止服务windows
默认初始化完毕以后服务就是启动的服务器
(1)启动服务并发
[root@ip50 utils]# /etc/init.d/redis_6379 start
(2)中止服务
[root@ip50 utils]# /etc/init.d/redis_6379 stop
4、链接Redis数据库服务
访问redis服务
[root@ip50 ~]# ps -C redis-server [root@ip50 ~]# ss -ntulp | grep redis-server [root@ip50 ~]# redis-cli //链接本机的redis数据库服务
5、经常使用操做指令
set keyname keyvalue | 存储 |
get keyname | 获取 |
select 数据库编号0-15 | 切换库 |
keys * | 打印全部变量 |
keys a? | 打印指定变量 |
EXISTS keyname | 测试该变量是否存在 |
ttl keyname | 查看生存时间 |
type keyname | 查看类型 |
move keyname keyname | 移动变量 |
expire keyname 10 | 设置有效时间 |
del keyname | 删除变量 |
flushall | 删除全部变量 |
save | 保存全部变量,马上将内存中的数据写入到硬盘 |
shutdown | 关闭redis服务 |
127.0.0.1:6379> SET school tarena //存值 127.0.0.1:6379> KEYS * //打印全部的key值 127.0.0.1:6379> get school //根据key值获取value 127.0.0.1:6379> EXISTS school // 0不存在,1存在 127.0.0.1:6379> ttl school //-1表示永不过时,-2变量已过时 127.0.0.1:6379> move a 1 //将变量a移动到1号数据库 127.0.0.1:6379> keys a //打印a变量 127.0.0.1:6379> expire school 200 //设置school变量名过时时间是200s,过时后会被从内存中清除 127.0.0.1:6379> type school //查看school变量的类型 127.0.0.1:6379> del school //删除变量 127.0.0.1:6379> flushall //删除全部变量
port 6379 | 端口 |
bind 127.0.0.1 | ip地址,能够空格隔开写多个地址 |
tcp-backlog 511 | tcp链接总数 |
timeout 0 | 链接超时时间 |
tcp-keepalive 300 | 长链接保持时间 |
daemonize yes | 守护进程方式运行(时刻活跃,设置为NO就是没有任务处理的时候,redis会处于休眠状态,有任务处理时会被系统唤醒处理任务) |
databases 16 | 数据库个数 |
logfile /var/log/redis_6379.log | pid文件 |
maxclients 10000 | 并发链接数 |
dir /var/lib/redis/6379 | 数据目录 |
volatile-lru
//最近最少使用(针对设置了TTL的key)allkeys-lru
//删除最少使用的keyvolatile-random
//在设置了TTL的key里随机移除allkeys-random
//随机移除keyvolatile-ttl (minor TTL)
//移除最近过时的keynoeviction
//不删除,写满时报错maxmemory <bytes>
//最大内存maxmemory-policy noeviction
//定义使用策略maxmemory-samples 5
//选取模板数据的个数(针对lru和ttl策略)设置密码
[root@ip50 ~]# vim /etc/redis/6379.conf ... ... requirepass 123456 ... ...
重启服务
[root@ip50 ~]# /etc/init.d/redis_6379 stop [root@ip50 ~]# /etc/init.d/redis_6379 start
使用密码登陆
[root@ip50 ~]# redis-cli -a 123456 或者 [root@ip50 ~]# redis-cli 127.0.0.1:6379> auth 123456
修改了密码以后没法正常中止redis
须要这样执行
[root@ip50 ~]# redis-cli -a 123456 shutdown [root@ip50 ~]# /etc/init.d/redis_6379 start
中止redis修改默认的ip跟端口
[root@ip50 ~]# redis-cli -a 123456 shutdown [root@ip50 ~]# vim /etc/redis/6379.conf ... ... bind 192.168.4.50 port 6350 ... ... [root@ip50 ~]# /etc/init.d/redis_6379 start [root@ip50 ~]# redis-cli -h 192.168.4.50 -p 6350 -a 123456 //进入服务
端口、ip地址、密码修改后必须这样操做中止服务
[root@ip50 ~]# redis-cli -h 192.168.4.50 -p 6350 -a 123456 shutdown
修改启动脚本
[root@ip50 ~]# vim /etc/init.d/redis_6379 ... ... PID=$(cat $PIDFILE) echo "Stopping ..." $CLIEXEC -p 6350 -h 192.168.4.50 -a 123456 shutdown while [ -x /proc/${PID} ] do echo "Waiting for Redis to shutdown ..." sleep 1 done echo "Redis stopped" ... ... [root@ip50 ~]# /etc/init.d/redis_6379 stop [root@ip50 ~]# /etc/init.d/redis_6379 start
1、部署LNMP请参考这篇文章 LNMP搭建
2、配置php支持redis
(1)安装redis服务
(2)配置php支持redis
[root@ip56 ~]# yum -y install php [root@ip56 ~]# cd redis/lnmp/ [root@ip56 lnmp]# yum -y install php-devel-5.4.16-42.el7.x86_64.rpm [root@ip56 lnmp]# tar -xf php-redis-2.2.4.tar.gz [root@ip56 lnmp]# cd phpredis-2.2.4/ [root@ip56 phpredis-2.2.4]# phpize //扩展模块 [root@ip56 phpredis-2.2.4]# ./configure --with-php-config=/usr/bin/php-config [root@ip56 phpredis-2.2.4]# make && make install [root@ip56 ~]# ls /usr/lib64/php/modules/ //查看php支持哪些模块 [root@ip56 ~]# vim /etc/php.ini //修改配置文件,添加redis模块 ... ... extension_dir = "/usr/lib64/php/modules/" ; On windows: extension = "redis.so" ... ... [root@ip56 ~]# systemctl restart php-fpm [root@ip56 ~]# php -m | grep -i redis //验证模块是否加载成功 [root@ip56 ~]# vim /usr/local/nginx/html/setRedis.php //编写php链接本地redis的脚本 <?php $redis = new redis(); $redis->connect('127.0.0.1',6379); $redis->set('redistest','666666'); echo $redis->get('redistest'); ?> [root@ip56 ~]# curl http://localhost/setRedis.php //调用php [root@ip56 ~]# redis-cli //验证 127.0.0.1:6379> keys * 1) "redistest" 2) "x"