linux redis

redis下载:https://redis.io/download

redis可视化工具:

redis-desktop-manager  :https://redisdesktop.com/download

 Redis Client 

先安装依赖包

yum install gcc

redis安装:

$ wget http://download.redis.io/releases/redis-4.0.10.tar.gz
$ tar xzf redis-4.0.10.tar.gz
$ cd redis-4.0.10
$ make PREFIX=/usr/local/redis/ install

安装完成:

启动redis

// 启动redis
/usr/local/redis/bin/redis-server   或者 ./redis-server

// 打开一个新ssh窗口运行redis-cli
/usr/local/redis/bin/redis-cli     或者 ./redis-cli

// 全部代码如下
[root@localhost redis-4.0.10]# /usr/local/redis/bin/redis-cli
127.0.0.1:6379> set name 123456
OK
127.0.0.1:6379> get name
"123456"
127.0.0.1:6379> 

将redis配置成服务service

cd /down/redis-4.0.10
// 先建立一个etc文件夹
cp redis.conf /usr/local/redis/etc/redis.conf

//编辑redis.conf 改daemonize no为daemonize yes
vim /usr/local/redis/etc/redis.conf

编辑redis,并且加入以下代码

vim /etc/init.d/redis    // 如果redis文件不存在,可以创建一个(mkdir redis)

#!/bin/sh
#
# redis        Startup script for Redis Server
#
# chkconfig: - 80 12
# description: Redis is an open source, advanced key-value store.
#
# processname: redis-server
# config: /etc/redis.conf
# pidfile: /var/run/redis.pid
source /etc/init.d/functions
BIN="/usr/local/redis/bin"
CONFIG="/usr/local/redis/etc/redis.conf"
PIDFILE="/var/run/redis.pid"
### Read configuration
[ -r "$SYSCONFIG" ] && source "$SYSCONFIG"
RETVAL=0
prog="redis-server"
desc="Redis Server"
start() {
        if [ -e $PIDFILE ];then
             echo "$desc already running...."
             exit 1
        fi
        echo -n $"Starting $desc: "
        daemon $BIN/$prog $CONFIG
        RETVAL=$?
        echo
        [ $RETVAL -eq 0 ] && touch /var/lock/subsys/$prog
        return $RETVAL
}
stop() {
        echo -n $"Stop $desc: "
        killproc $prog
        RETVAL=$?
        echo
        [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/$prog $PIDFILE
        return $RETVAL
}
restart() {
        stop
        start
}
case "$1" in
  start)
        start
        ;;
  stop)
        stop
        ;;
  restart)
        restart
        ;;
  condrestart)
        [ -e /var/lock/subsys/$prog ] && restart
        RETVAL=$?
        ;;
  status)
        status $prog
        RETVAL=$?
        ;;
   *)
        echo $"Usage: $0 {start|stop|restart|condrestart|status}"
        RETVAL=1
esac
exit $RETVAL
View Code

 

chmod +x /etc/init.d/redis

service redis start
service redis stop

chkconfig --add redis

 

修改profile文件:

# vi /etc/profile

在最后行添加:

export PATH="$PATH:/usr/local/redis/bin"

配置下面的内核参数,否则Redis脚本在重启或停止redis时,将会报错,并且不能自动在停止服务前同步数据到磁盘上/etc/sysctl.conf加上 

#vim /etc/sysctl.conf

vm.overcommit_memory = 1 

#sysctl -p 

 

加入开机启动

sudo chkconfig redis on 

 

客户端启动redis-cli

[root@localhost bin]# cd /
[root@localhost /]# redis-cli
127.0.0.1:6379> 

 修改了配置文件redis.conf,重新加载

/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf

/usr/local/redis/bin目录下的几个关键文件

redis-benchmark:redis性能测试工具

redis-check-aof:检查aof日志的工具

redis-check-dump:检查rdb日志的工具

redis-cli:连接用的客户端 redis-server:redis服务进程

conf 配置项介绍

daemonize:如需要在后台运行,把该项的值改为yes

pdifile:把pid文件放在/var/run/redis.pid,可以配置到其他地址

bind:指定redis只接收来自该IP的请求,如果不设置,那么将处理所有请求,在生产环节中最好设置该项

port:监听端口,默认为6379

timeout:设置客户端连接时的超时时间,单位为秒

loglevel:等级分为4级,debug,revbose,notice和warning。生产环境下一般开启notice

logfile:配置log文件地址,默认使用标准输出,即打印在命令行终端的端口上

database:设置数据库的个数,默认使用的数据库是0

save:设置redis进行数据库镜像的频率

rdbcompression:在进行镜像备份时,是否进行压缩

dbfilename:镜像备份文件的文件名

dir:数据库镜像备份的文件放置的路径

slaveof:设置该数据库为其他数据库的从数据库

masterauth:当主数据库连接需要密码验证时,在这里设定

requirepass:设置客户端连接后进行任何其他指定前需要使用的密码

maxclients:限制同时连接的客户端数量

maxmemory:设置redis能够使用的最大内存

appendonly:开启appendonly模式后,redis会把每一次所接收到的写操作都追加到appendonly.aof文件中,当redis重新启动时,会从该文件恢复出之前的状态

appendfsync:设置appendonly.aof文件进行同步的频率

vm_enabled:是否开启虚拟内存支持

vm_swap_file:设置虚拟内存的交换文件的路径

vm_max_momery:设置开启虚拟内存后,redis将使用的最大物理内存的大小,默认为0

vm_page_size:设置虚拟内存页的大小

vm_pages:设置交换文件的总的page数量

vm_max_thrrads:设置vm IO同时使用的线程数量

参考:https://blog.csdn.net/qq_20989105/article/details/76390367

https://blog.csdn.net/yjqyyjw/article/details/73293455

原文地址:https://www.cnblogs.com/wesky/p/9303641.html