zoukankan      html  css  js  c++  java
  • 一,温习Redis (详解从安装到配置)

    Redis(非关系型数据库)

    数据库分类

    关系型数据库

    非关系型数据库

    关系型数据库:一般面向于记录,借助集合代数等数学概念和方法来处理数据库中的数据,SQL语句是一种标准的数据库查询语言,用于对关系型数据库的检索和操作

    主流:Oracle, MySQL, SQL Server,Microsoft Access,DB2 

    非关系型数据库:它有一个总称”NoSQL” 意思是不仅仅是SQL,这类数据库他们的存储方式,存储结构以及使用的场景是完全不同的。具有非关系型,分布式,开源和横向扩展等优势。

    主流:Redis,MongBD,Hbase,CouhDB

    使用场景:随着web网站的兴起,关系型数据库在应对web网站,特别是海量数据和高并发时

    主要处理生产环境下的问题:

    对数据库高并发读取要求(网站访问量大)

    对海量的数据高效存储与访问需求(存储大量用户的数据)

    对数据库高扩展性与高可用性需求

    Redis介绍:

    使用C语言编写的,基于内存运行并支持持久化,采用键值对(key),所以主要依靠于内存!

    redis是单进程,可以一台服务器上开启多个redis进程,要根据实际情况来做

    安装方式有两种,一种是YUM直接安装,一种是源码包,编译安装

    ****源码包编译安装(redis-4.0.9.tar.gz****

    注意:编译时不用./Configure来编译,因为是redis源码包中直接提供了makefile文件

    解压包

    #tar xfv redis-4.0.9.tar.gz -C /usr/src/

    编译包

    #cd /usr/src/redis-4.0.9

     

    其中redis.conf是主配置文件,可定义自己想要的配置(例如:开放端口等)

    #make(有可能会出现报错,如果出现报错,就再重新来一遍)

    #make PREFIX=/usr/local/redis install

    #cd /src && make install

    编译安装完成后,需要给它命令做一下软连接

    #ln -s /usr/local/redis/bin/* /usr/local/bin/

    到此redis算是基本安装完成,但是没有启动脚本和配置文件

    软件包中提供一个install_server.sh脚本文件,通过该文件可以设置服务所需要的相关配置文件,当脚本运行完毕,服务实例即启动,默认端口6379

    找到软件包里的脚本并运行

    如图:

     

    解释:

    Please select the redis port for this instance: [6379] 请为这个实例选择redis端口:[6379]

    Please select the redis config file name [/etc/redis/6379.conf](请选择redis配置文件名[/etc/redis/6379.conf]

    Please select the redis log file name [/var/log/redis_6379.log](请选择redis日志文件名[/var/log/redis_6379.log]

    Please select the data directory for this instance [/var/lib/redis/6379](请选择此实例的数据目录[/var/lib/redis/6379]

    Please select the redis executable path [/usr/local/bin/redis-server](请选择redis可执行路径[/usr/local/bin/redis-server](服务端的命令))

    以上在创建实例时,都可根据自己需要的来创建,创建完成后即启动

    开放端口:

     

    安装完成后,可以根据控制脚本来对实例服务进行控制,如启停服务等(/etc/init.d/redis_6379

     

    Redis 实例服务的主配置文件(/etc/redis/6379.conf)详解

    可根据生产环境进行相关参数的调整:

    #cat /etc/redis/6379.conf

    70  bind 127.0.0.1 192.168.30.201        //监听的主机地址(实例在本机就本机地址)

    93  port 6379                         //端口

    114 timeout 0                         //客户端闲置多长时间关闭,0:表示关闭该功能

    137 daemonize yes                    //开启守护进程

    159 pidfile /var/run/redis_6379.pid         //制定PID文件

    167 loglevel notice                       //日志级别

    172 logfile /var/log/redis_6379.log           //日志文件

    252 dbfilename dump.rdb         //指定本地数据库文件名,默认值为dump.rdb (持久化)

    531 # maxclients 10000      //最大客户端连接数,为0时是不限制,如果达到最大,会返回客户端max number of clients reached 错误信息

    240 rdbcompression yes     // 指定是否要压缩数据,默认是,为了节省cpu资源

    280 # slaveof <masterip> <masterport>    //设置主从时用到的,这个是从指定主的IP和端口

    287 # masterauth <master-password>    //主端的密码

    499 # requirepass foobared      //指定连接redis密码,如果有,客户端连接时要输密码,默认关闭状态

    558 # maxmemory <bytes>            //指定redis最大内存限制

    671 appendonly no       //redis默认是异步的把数据写入磁盘,如果不开启,可能会造成数据丢失,默认是NO

    675 appendfilename "appendonly.aof"  //指定更新日志文件,默认

    701 appendfsync everysec //指定更新的日志文件(no/always/everysec)默认是每秒同步一次

    1127 activerehashing yes                //指定是否激活重置哈希,默认开启

    36 # include /path/to/local.conf   //引用其他文件,可以一台主机多个实例同一份文件

    这里只需要修改bind即可,修改完后重启即可

     

  • 相关阅读:
    Python(2.7.6) 特殊方法
    Python(2.7.6) 列表推导式
    代码神注释鉴赏,喜欢拿去用
    为什么说重启能解决90%的问题
    为什么说重启能解决90%的问题
    编程语言简史
    编程语言简史
    Shell脚本中循环select命令用法笔记
    程序员职业规划
    程序员职业规划
  • 原文地址:https://www.cnblogs.com/123456likun/p/13827294.html
Copyright © 2011-2022 走看看