linux下安装redis 启动,停止,连接

阅读更多

linux版下载地址

http://download.redis.io/releases/

windows版下载地址

https://github.com/MicrosoftArchive/redis/releases

 

一、安装

上传redis-3.2.6.tar.gz到/opt下

[root@dev opt]# tar -xvf redis-3.2.6.tar.gz

[root@dev opt]# cd redis-3.2.6

#[root@dev redis-3.2.6]# make test

#All tests passed without errors!

[root@dev redis-3.2.6]# make

 

指定安装目录PREFIX

[root@dev redis-3.2.6]# make PREFIX=/opt/redis install

 

[root@dev redis-3.2.6]# cd /opt/redis/bin

[root@dev bin]# ll

总用量 26336

-rwxr-xr-x. 1 root root 5578215 12月 28 15:31 redis-benchmark

-rwxr-xr-x. 1 root root   22169 12月 28 15:31 redis-check-aof

-rwxr-xr-x. 1 root root 7823872 12月 28 15:31 redis-check-rdb

-rwxr-xr-x. 1 root root 5706916 12月 28 15:31 redis-cli

lrwxrwxrwx. 1 root root      12 12月 28 15:31 redis-sentinel -> redis-server

-rwxr-xr-x. 1 root root 7823872 12月 28 15:31 redis-server

 

[root@dev ~]# cd /opt/redis

[root@dev redis]# ll

总用量 4

drwxr-xr-x. 2 root root 4096 12月 28 15:31 bin

 

二、配置

创建目录(非必须)

[root@dev redis]# mkdir conf(配置文件目录)

[root@dev redis]# mkdir db(数据库文件目录)

[root@dev redis]# mkdir logs(日志文件目录)

 

拷贝配置文件

[root@dev redis]# cp /opt/redis-3.2.6/redis.conf /opt/redis/conf

编辑配置文件

[root@dev redis]# vi /opt/redis/conf/redis.conf

 

#关闭保护模式

#protected-mode yes

protected-mode no

 

守护进程,在后台运行

#daemonize no

daemonize yes

 

设置pid文件路径

#pidfile /var/run/redis_6379.pid

pidfile /opt/redis/redis_6379.pid

 

#设置数据库文件路径

dbfilename dump.rdb

#dir ./

dir /opt/redis/db

 

#设置日志文件路径

#logfile ""

logfile /opt/redis/logs/redis.log

 

#设置连接密码

# requirepass foobared

requirepass redis326

 

#设置主密码(主从切换后才会用到)

# masterauth

masterauth redis326

 

设置最大内存

# maxmemory

maxmemory 2gb

 

三、应用

启动redis服务

[root@dev redis]# /opt/redis/bin/redis-server /opt/redis/conf/redis.conf

 

打开redis客户端,测试

[root@dev redis]# /opt/redis/bin/redis-cli -h 127.0.0.1 -p 6379 -a redis326

127.0.0.1:6379> set foo bar

OK

127.0.0.1:6379> get foo

"bar"

127.0.0.1:6379> quit (退出)

 

停止redis服务

[root@dev redis]# /opt/redis/bin/redis-cli -h 127.0.0.1 -p 6379 -a redis326 shutdown

 

杀进程

[root@dev redis]# ps -ef|grep redis

root     44525     1  0 19:47 ?        00:00:00 ./redis-server 127.0.0.1:6379    

root     44553 42778  0 19:47 pts/3    00:00:00 grep redis

[root@dev bin]# kill -9 44525

 

查看日志

[root@dev redis]tail -f /opt/redis/logs/redis.log

 

性能测试

 

[root@dev bin]# /opt/redis/bin/redis-benchmark -n 1000

 

在线文档

http://www.redis.net.cn/tutorial/3501.html

 

Redis的Java客户端Jedis的八种调用方式(事务、管道、分布式…)介绍

http://blog.csdn.net/truong/article/details/46711045

 

关于最大内存

RDB原理

在执行fork的时候操作系统(类Unix操作系统)会使用写时复制(copy-on-write)策略,即fork函数发生的一刻父子进程共享同一内存数据,当父进程要更改其中某片数据时(如执行一个写命令 ),操作系统会将该片数据复制一份以保证子进程的数据不受影响,所以新的RDB文件存储的是执行fork那一刻的内存数据。

 

多留一倍内存是最安全的。重写AOF文件和RDB文件的进程(即使不做持久化,复制到Slave的时候也要写RDB)会fork出一条新进程来,采用了操作系统的Copy-On-Write策略(如果父进程的内存没被修改,子进程与父进程共享Page。如果父进程的Page被修改, 会复制一份改动前的内容给新进程),留意Console打出来的报告,如"RDB: 1215 MB of memory used by copy-on-write"。在系统极度繁忙时,如果父进程的所有Page在子进程写RDB过程中都被修改过了,就需要两倍内存。

 

9482:M 19 Jan 15:45:41.038 * 10000 changes in 60 seconds. Saving...

9482:M 19 Jan 15:45:41.095 * Background saving started by pid 13017

13017:C 19 Jan 15:46:04.138 * DB saved on disk

13017:C 19 Jan 15:46:04.159 * RDB: 16 MB of memory used by copy-on-write

9482:M 19 Jan 15:46:04.231 * Background saving terminated with success

 

个人建议最大内存,设置成系统内存的1/2

 

你可能感兴趣的:(linux,redis,安装,目录)