Centos 7 LNMP+Redis 详细安装配置使用_2018_lcf

LNMP+Redis 安装配置使用,今天整理了下.希望对大家有所帮助,有什么感想或问题都可以留言.

我的系统是Centos7.4


http://www.redis.cn/
可以下载最新稳定版本是Redis 4.0.9 


Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。 它支持多种类型的数据结构,如 字符串(strings), 散列(hashes), 列表(lists), 集合(sets), 有序集合(sorted sets) 与范围查询, bitmaps, hyperloglogs 和 地理空间(geospatial) 索引半径查询。 Redis 内置了 复制(replication),LUA脚本(Lua scripting), LRU驱动事件(LRU eviction),事务(transactions) 和不同级别的 磁盘持久化(persistence), 并通过 Redis哨兵(Sentinel)和自动 分区(Cluster)提供高可用性(high availability)。


这里用4.0.8版本的测试

++++>首先安装测试Redis


++装包

[root@host52 ~]# tar redis-4.0.8.tar.gz 
[root@host52 ~]# cd redis-4.0.8/
[root@host52 redis-4.0.8]# make 
.....
[root@host52 redis-4.0.8]# make install


++配置


//接着上面步骤继续操作,这个程序是交互式配置初始目录等
[root@host52 redis-4.0.8]# ./utils/install_server.sh 
Welcome to the redis service installer
This script will help you easily set up a running redis server


Please select the redis port for this instance: [6379]    //设置端口
Selecting default: 6379
Please select the redis config file name [/etc/redis/6379.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]  //设置运行程序存放位置
Selected config:
Port           : 6379
Config file    : /etc/redis/6379.conf
Log file       : /var/log/redis_6379.log
Data dir       : /var/lib/redis/6379
Executable     : /usr/local/bin/redis-server
Cli Executable : /usr/local/bin/redis-cli
Is this ok? Then press ENTER to go on or Ctrl-C to abort.
Copied /tmp/6379.conf => /etc/init.d/redis_6379
Installing service...
Successfully added to chkconfig!
Successfully added to runlevels 345!
Starting Redis server...
Installation successful!
//以上标注项配置好后就会自动开启服务,回车键选择默认端口或目录等


以下是默认程序相关文件存放位置
Port           : 6379
Config file    : /etc/redis/6379.conf
Log file       : /var/log/redis_6379.log
Data dir       : /var/lib/redis/6379
Executable     : /usr/local/bin/redis-server
Cli Executable : /usr/local/bin/redis-cli
-------
常用配置选项
vim /etc/redis/6379.conf

– port 6379 // 端口
//注意事项,如果改了端口起服务后,要关闭时就不能正常脚本停止了,有两种方式停止服务
//一是改redis_6379脚本里指定的端口,
//二是[root@host52 /]# redis-cli -p 6352 shutdown这种方式停,
//三就是用kill -9 进程号
//重开启服务依然是可以用脚本启动
– bind 127.0.0.1 //IP 地址
– tcp-backlog 511 //tcp 连接总数(正在连接和已连接的总数)
– timeout 0 // 连接超时时间 0指永不超时
– tcp-keepalive 300 // 长连接时间
– daemonize yes // 守护进程方式运行
– databases 16 // 数据库个数
– logfile /var/log/redis_6379.log //pid 文件
– maxclients 10000 // 并发连接数量
– dir /var/lib/redis/6379 // 数据库目录


• 内存清除策略(->注释说明文件)
–> volatile-lru  最近最少使用 (针对设置了过期时间的 key )
–> allkeys-lru 删除最少使用的 key
–> volatile-random 在设置了过期的 key 里随机移除
–> allkeys-random 随机移除 key
–> volatile-ttl (minor TTL) 移除最近过期的 key
–> noeviction  不删除 写满时报错
–591 # maxmemory-policy noeviction  //591行那里设置内存清除策略 默认noeviction


内存管理
• 选项默认设置
– maxmemory <bytes> // 最大内存
– maxmemory-policy noeviction // 定义使用的策略
– maxmemory-samples 5 // 选取模板数据的个数 


设置登陆密码
– 501 # requirepass foobared //501行设置服务的登陆密码
//以上没指定行数的,可以在vim里搜索关键字查找
//如果设置了密码,关服务方式是[root@host52 /]# redis-cli -p 6352  -a 123123 shutdown
//重开启服务依然是可以用脚本启动




++启服务查状态



[root@host52 /]# /etc/init.d/redis_6379 --help     //服务在这里操作
Please use start, stop, restart or status as first argument
[root@host52 /]# ln -s /etc/init.d/redis_6379 /sbin/  //创建快捷链接,方便操作
[root@host52 /]# redis_6379 status
Redis is running (5461)


[root@host52 /]# redis-cli //进入程序内部命令操作
127.0.0.1:6379> 


++使用



--常用命令
常用操作指令(支持自动补全)
– Set keyname keyvalue // 存储
– get keyname      // 获取
– Select 数据库编号 0-15 // 切换库(默认0-15,可以修改配置文件改范围)
– Keys *        // 打印所以变量
– Keys a?       // 打印指定变量 ?通配符,一个?号代表一个字符
– EXISTS keyname   // 测试是否存在
– ttl keyname   // 查看生存时间
– type keyname  // 查看类型
– move keyname dbname // 移动变量
– expire keyname 10 // 设置有效时间
– del keyname      // 删除变量
– flushall        // 删除所有变量
– save           // 保存变量
– shutdown      // 关闭服务


-->示例
[root@host52 /]# redis-cli
127.0.0.1:6379> set name jim    //set设置变量name值为jim
OK
127.0.0.1:6379> get name         //get获取变量值
"jim"
127.0.0.1:6379> keys *     //查看当前库所有变量
1) "name"
127.0.0.1:6379> keys n???  //查找n开头的四个字符长度的变量值,使用?通配符
1) "name"
127.0.0.1:6379> EXISTS name  //查看变量是否存在,1表示存在 0表示不存在
(integer) 1
127.0.0.1:6379> type name    //查看变量类型,默认都是字符类型
string
127.0.0.1:6379> TTL name     //查看变量生存时间
(integer) -1
127.0.0.1:6379> SELECT 3  //选择数据库3
OK
127.0.0.1:6379[3]> KEYS *   //查看所有变量,这个库里未设置有变量,所以是空的
(empty list or set)
----+
在设置有密码时,可以在登陆时写密码,或在登陆后输入密码
[root@host52 /]# redis-cli -p 6352  -a 123123
127.0.0.1:6352>
[root@host52 /]# redis-cli -p 6352
127.0.0.1:6352> auth 123123
OK


++++>然后安装LNMP测试

(我的系统是centos7/yum包也是centos7的)

安装源码nginx和php
[root@host52 ~]# yum -y install gcc gcc-c++ pcre-devel zlib-devel 
.....
[root@host52 ~]# tar -xf nginx-1.14.0.tar.gz 
[root@host52 ~]# cd nginx-1.14.0/
[root@host52 nginx-1.14.0]# useradd nginx
...
[root@host52 nginx-1.14.0]# # ./configure --user=nginx --group=nginx
......
[root@host52 nginx-1.14.0]# make && make install
......
[root@host52 /]# yum -y install php php-common    //php-common需要网上下载
[root@host52 /]# yum -y install php-fpm-5.4.16-42.el7.x86_64.rpm  //需要网上下载
.....


安装 php 支持 Redis 依赖包等
[root@host52 /]# yum -y install autoconf automake
...
[root@host52 /]# yum -y install php-devel-5.4.16-42.el7.x86_64.rpm   //需要网上下载
...
[root@host52 /]# tar -zxf php-redis-2.2.4.tar.gz     //需要网上下载
[root@host52 /]# cd phpredis-2.2.4/
[root@host52 phpredis-2.2.4/]# /usr/bin/phpize
Configuring for:
PHP Api Version:         20100412
Zend Module Api No:      20100525
Zend Extension Api No:   220100525
[root@host52 phpredis-2.2.4]# ./configure --with-php-config=/usr/bin/php-config
...
[root@host52 phpredis-2.2.4]# make install
..
Installing shared extensions:     /usr/lib64/php/modules/   //模块存放目录,支持php对redis的操作
[root@host52 /]# vim /etc/php.ini
...
extension_dir = "/usr/lib64/php/modules/"   //在php.ini配置文件中指定那个模块存放路径
extension = "redis.so"             //extension_dir=改成extension = 
...
[root@host52 /]# php -m | grep -i redis  //检测是否配置成功 php -m查看php支持的功能模块
redis


开始测试
[root@host52 /]# vim /usr/local/nginx/html/redis.php     //编写一个PHP测试网页
<?php
$redis = new redis();            //创建redis()对像
$redis->connect('127.0.0.1',6352);    //根据自己实际情况填写IP和端口
$redis->set('label','nice');        //创建一个redis变量并同赋值
echo $redis->get('label');               //获取redis变量
?>
http://192.168.0.52/redis.php  //打开浏览器测试,记得要确保nginx, php-fpm, redis服务的开启
nice
-----
127.0.0.1:6352> get label    //再登陆进redis端查看
"nice"


--至此LNMP+Redis配置成功了,有什么感想或问题都可以留言.

猜你喜欢

转载自blog.csdn.net/cbuy888/article/details/80612525