linux下如何安装配置redis及主从配置

 

http://www.cnblogs.com/blueel/archive/2013/01/29/2881025.html

 

 

redis的优点:支持主从备份,操作指令丰富,支持异步的数据持久化

 

将 redis 安装到 /apps/svr/redis/

1.下载

wget http://download.redis.io/releases/redis-2.8.9.tar.gz

如果下载不了  直接打开官网下载:   http://www.redis.io/download

   tar zxvf redis-2.2.15.tar.gz

   cd redis-2.2.15

make &&  make install
mkdir -p /apps/svr/redis/conf
mkdir -p /apps/svr/redis/run
mkdir -p /apps/svr/redis/db
cp redis.conf /apps/svr/redis/conf/
cd src

 

2.将 src 目录下所有可执行文件复制到安装目录
cp redis-benchmark redis-check-aof  redis-check-dump redis-cli  redis-server mkreleasehdr.sh  /apps/svr/redis/

 

3.修改配置文件 
------- vi /apps/svr/redis/conf/redis.conf --------
daemonize yes --yes启用守护进程
pidfile /apps/svr/redis/run/redis.pid --Redis以守护进程方式运行时把pid写入文件
dir /apps/svr/redis/db --数据存放的目录
--------------------------------------------------------------

 

4.创建启动和停止服务脚本
------- vi /apps/svr/redis/start.sh ---------
#!/bin/bash
/apps/svr/redis/redis-server /apps/svr/redis/conf/redis.conf
------- vi /apps/svr/redis/stop.sh ---------
#!/bin/bash
kill `cat /apps/svr/redis/run/redis.pid`
chmod a+x/apps/svr/redis/start.sh /apps/svr/redis/stop.sh

 

5.启动 redis 服务 
/apps/svr/redis/start.sh
验证证服务是否成功:
netstat -nlpt | grep 6379  #端口注意防火墙哈
6.启动客户端验证
/apps/svr/redis/redis-cli
>set key1 val1
>get key1

 

 

二. M/S主从集群配置

1台Master和一台Slave
Master IP:127.0.0.1 PORT:6379
Slave1 IP:127.0.0.1 PORT:63791

 

2.复制slave目录,方便管理

cp -r /apps/svr/redis /apps/svr/redis-slave1

 

3.修改slave的配置文件和服务脚本
-- vi /apps/svr/redis-slave1/conf/redis.conf --
port 63791
pidfile /apps/svr/redis-slave1/run/redis.pid
slaveof 127.0.0.1 6379
----------------------------------------------------------

 

-- vi /apps/svr/redis-slave1/start.sh --
#!/bin/bash
/apps/svr/redis-slave1/redis-server /apps/svr/redis-slave1/conf/redis.conf
---------------------------------------------------

 

------- vi /apps/svr/redis-slave1/stop.sh ---------
#!/bin/bash
kill `cat /apps/svr/redis-slave1/run/redis.pid`
--------------------------------------------------------


4.启动M/S服务
/apps/svr/redis/start.sh
/apps/svr/redis-slave1/start.sh
验证服务是否正常
netstat -nlpt | grep redis-server

 

5.验证redis是否有效
/apps/svr/redis/redis-cli [默认连接端口:6379 的 Master服务]
>set key1 val1
>quit

/apps/svr/redis/redis-cli -p 63791 [连接 Slave1 服务]
>get key1
“val1″ (数据成功同步了)
多个slave同理配置

 

php 扩展

http://pecl.php.net/package/redis

wget http://pecl.php.net/get/redis-3.1.2.tgz

tar -zxvf redis-3.1.2.tgz

cd redis-3.1.2


/apps/svr/php/bin/phpize

 ./configure  --with-php-config=/apps/svr/php/bin/php-config

make && make install

vim /apps/svr/php/etc/php.ini 

找到extension_dir的位置

在下边添加如下内容:extension=redis.so

 

 

redis密码设置、访问权限控制等安全设置

1.比较安全的办法是采用绑定IP的方式来进行控制。

 

bind 127.0.0.1

 

2.设置密码,以提供远程登陆

redis.conf
找到
requirepass
写上
requirepass yourpassword

登陆带密码方式

/apps/svr/redis/redis-cli -a redis

 

 

自动开机脚本

 

1.安装tcl支持

yum install tcl

 

 

 

2   vim /etc/init.d/redis

###########################
# chkconfig: 2345 90 10

# description: redis is a persistent key-value database
PATH=/usr/local/bin:/sbin:/usr/bin:/bin

REDISPORT=6379
EXEC=/apps/svr/redis/redis-server
REDIS_CLI=/apps/svr/redis/redis-cli

PIDFILE=/apps/svr/redis/run/redis.pid
CONF="/apps/svr/redis/conf/redis.conf"

case "$1" in
start)
if [ -f $PIDFILE ]
then
echo "$PIDFILE exists, process is already running or crashed"
else
echo "Starting Redis server..."
$EXEC $CONF
fi
if [ "$?"="0" ]
then
echo "Redis is running..."
fi
;;
stop)
if [ ! -f $PIDFILE ]
then
echo "$PIDFILE does not exist, process is not running"
else
PID=$(cat $PIDFILE)
echo "Stopping ..."
$REDIS_CLI -p $REDISPORT SHUTDOWN
while [ -x ${PIDFILE} ]

do
echo "Waiting for Redis to shutdown ..."
sleep 1
done
echo "Redis stopped"
fi
;;
restart|force-reload)
${0} stop
${0} start
;;
*)
echo "Usage: /etc/init.d/redis {start|stop|restart|force-reload}" >&2
exit 1
esac
##############################

 

 

修改权限,可以运行

chmod +x /etc/init.d/redis
 
sudo chkconfig redis on

 

启动服务:

service redis start

停止服务:

service redis stop

 

配置防火墙打开对应的端口:

vi /etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp --dport 6379 -j ACCEPT

 重启防火墙

service iptables restart

 


Redis学习笔记2--Redis数据类型及相关命令

 

 

Redis支持的种数据类型包括string、list 、set 、sorted set 和hash。

Redis相关的命令可以查看:http://redis.io/commands 这是官方的命令使用手册,

也有中文翻译的:http://redis.readthedocs.org/en/2.4/index.html

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Linux配置Redis主从复制,可以按照以下步骤进行: 1. 安装Redis:首先,您需要下载Redis安装包并解压。使用以下命令进行下载和解压: ``` wget http://download.redis.io/releases/redis-3.0.4.tar.gz tar -xzvf redis-3.0.4.tar.gz cd redis-3.0.4 make ``` 2. 配置主库:在Redis安装目录下创建主库的配置文件,例如在`/usr/local/redis-3.0.0/conf`目录下创建`redis-6379.conf`文件,并编辑该文件: ``` daemonize yes # 使用后台模式 bind 127.0.0.1 # 注释此行以允许远程访问 port 6379 # 修改端口为6379 pidfile /usr/local/redis-3.0.0/conf/redis_6379.pid # 修改pid文件路径 dir /usr/local/redis-3.0.4/db/master/ # 定义主库数据存放路径 ``` 3. 启动主库:使用以下命令启动主库Redis服务器: ``` ./src/redis-server /usr/local/redis-3.0.0/conf/redis-6379.conf ``` 4. 配置从库:在Redis安装目录下创建从库的配置文件,例如在`/usr/local/redis-3.0.0/conf`目录下创建`redis-6380.conf`文件,并编辑该文件: ``` daemonize yes # 使用后台模式 bind 127.0.0.1 # 注释此行以允许远程访问 port 6380 # 修改端口为6380 pidfile /usr/local/redis-3.0.0/conf/redis_6380.pid # 修改pid文件路径 dir /usr/local/redis-3.0.4/db/slave1/ # 定义从库数据存放路径 slaveof 127.0.0.1 6379 # 设置该从库的主库地址和端口 ``` 5. 启动从库:使用以下命令启动从库Redis服务器: ``` ./src/redis-server /usr/local/redis-3.0.0/conf/redis-6380.conf ``` 6. 配置第二个从库:按照步骤4和步骤5的操作,创建第二个从库的配置文件,并且设置正确的端口和数据存放路径。 7. 启动第二个从库:按照步骤5的操作,启动第二个从库Redis服务器。 现在,您已经成功配置了一个主库和两个从库的Redis主从复制。主库会将数据同步到两个从库上,实现数据的备份和冗余。<span class="em">1</span><span class="em">2</span><span class="em">3</span>

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值