- Redis
redis官网地址:http://www.redis.io/
所有历史版本下载地址:http://download.redis.io/releases/
redis中文文档地址:http://www.redis.cn/documentation.html
Linux安装部署Redis_linux redis安装部署-CSDN博客
Linux下Redis的安装和部署_redis在linux部署-CSDN博客
Linux环境下安装部署redis-腾讯云开发者社区-腾讯云
5.1)安装redis的时候遇到的问题
5.1.1)下载redis7.2.4
5.1.2)安装gcc sudo apt install gcc
5.1.3)安装make sudo apt install make
5.1.4)sudo mv redis-7.2.4 /usr/local/redis下
5.1.5)make 这个没指定目录 ,不知道redis安装到了哪里,而且不知道怎么启动,找不到启动目录
5.1.6)cd src make install
/usr/local/bin (redis运行文件所在地)redis-benchmark redis-check-aof redis-check-rdb redis-cli redis-sentinel redis-server
/usr/local/lib (redis 库文件所在目录) 空目录
/usr/local/etc (redis配置文件所在目录)空目录
不知道怎么修改配置文件,在/usr/local/etc下没有redis的信息
Redis.conf在我们copy到放置的/usr/local/redis下
5.1.7)ps -elf |grep redis 才能看到 redis进程号
5.1.8)禁用 bind=127.0.0.1 可以让所有ip都可以访问,否则只有本机可以访问
5.1.9)启用 daemonize yes 会有warning出现
WARNING Memory overcommit must be enabled! Without it, a background save or replication may fail under low memory condition. Bein g disabled, it can also cause failures without low memory condition, see https://github.com/jemalloc/jemalloc/issues/1328. To fix this issue add 'vm.overcommit_mem ory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.
解决办法:sudo vim /etc/sysctl.conf
在最后加
vm.overcommit_memory = 1
修改redis密码
requirepass 123456
修改redis日志:q
logfile "wzredis.lo” 这个要加目录吗?
修改样本数量
maxmemory-samples 5
Maxmemory 设置
# maxmemory <bytes>
maxmemory 512M
- 安装redis 第二次
Mv redis-7.2.4 /usr/local/redis
Cd /usr/local/reids
6.1)make PREFIX=/usr/local/redis install
6.2)mkdir log (用于存放日志)
daemonize yes (开启守护)
dir /usr/local/redis/bin (为了使redis-server可以在任意目录执行)
appendonly yes (每次redis有数据更新都写日志,以防掉电丢数据)
Port 6378
#bind 127.0.0.1 -::1 所有ip都可以访问
Timeout 300 客户端闲置300秒关闭连接
maxclients 10000 最大客户连接数限制
开机脚本
Cp redis_init_script /etc/init.d/redisd (重新启动了个名字)
默认redis下的utils下有个redis_init_script 这个就可以作为启动脚本
由于redis存放路径的不同,我们修改了几个配置
REDISPORT=6379
#EXEC=/usr/local/bin/redis-server
EXEC=/usr/local/redis/bin/redis-server
#CLIEXEC=/usr/local/bin/redis-cli
CLIEXEC=/usr/local/redis/bin/redis-cli
PIDFILE=/var/run/redis_${REDISPORT}.pid
#CONF="/etc/redis/${REDISPORT}.conf"
CONF="/usr/local/redis/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
;;
stop)
if [ ! -f $PIDFILE ]
then
echo "$PIDFILE does not exist, process is not running"
else
PID=$(cat $PIDFILE)
echo "Stopping ..."
$CLIEXEC -p $REDISPORT shutdown
while [ -x /proc/${PID} ]
do
echo "Waiting for Redis to shutdown ..."
sleep 1
done
echo "Redis stopped"
fi
;;
*)
echo "Please use start or stop as first argument"
;;
esac
Ubuntu 开机自启动
Vim /lib/systemd/system/rc-local.service
[Unit]
Description=/etc/rc.local Compatibility
Documentation=man:systemd-rc-local-generator(8)
ConditionFileIsExecutable=/etc/rc.local
After=network.target
[Service]
Type=forking
ExecStart=/etc/rc.local start
TimeoutSec=0
RemainAfterExit=yes
GuessMainPID=no
[Install]
WantedBy=multi-user.target
Alias=rc-local.service
增加最后3行
Sudo vim /etc/rc.local
#!/bin/bash
whoami >> /usr/test.log
/etc/init.d/redisd start
exit 0
Sudo chmod +x /etc/rc.local
Reboot 重启