前言
最近闲来无事,将自己的MBP系统重装里,导致里面原来安装的软件都需要重新安装,今天记录一下MacOs安装Redis并设置为开机启动、后台启动的步骤,安装过程略有波折,参考里几篇文章才搞定。
一、安装Redis
两种方式,我都尝试了,也都成功了,但第一种方式安装完后没有搞定开机自启动,所以又尝试了方法2:
1.去官网下载安装包手动编译、安装
1)下载redis
reids下载地址 http://download.redis.io/releases ,当前稳定版为redis-7.0.8.tar.gz
2)解压
tar zxvf redis-7.0.8.tar.gz
3)复制到 /usr/local/redis目录
cp redis-7.0.8 /usr/local/redis
4)编译redis
sudo make
5)如果是第一次,系统会要求下载xcode,大概2分钟下载完成,继续安装
sudo make install
6)至此安装成功,这时候千万不要启动Redis
因为没有配置路径,会出错,需要修改redis.conf的配置
我的redis.conf 在 /usr/local/redis-7.0.8目录下,不同版本或操作系统会稍有不同,大家可自行寻找。修改dir的路径:
7)启动redis
redis-server
此种方法可以启动成功。
2.使用HomeBrew安装
1)执行安装命令
brew install redis
第一次可能需要下载一些依赖包,如果执行完没有安装成功,请再执行一次这个命令。
2)查看安装信息,看看安装到哪个目录去了。
brew list redis
/usr/local/Cellar/redis/7.0.8/homebrew.mxcl.redis.plist这个文件比较关键,是我们设置开机自启动的关键。
二、设置开机自启动
通过前面的安装,我们在控制台执行redis-server就可以启动了,但有个问题,这样启动好后需要一直开着这个窗口,关机重启后,需要重新启动才行,所以接着往下看。
网上一般提到的开机自启动设置方式,需要自己手动新建.plist这么一个文件,但大家看到了,实际上使用brew的安装方式,这个文件已经生成好了,但我尝试直接用这个文件去设置自启动,失败了。
1.先查看这个文件中的内容
vi /usr/local/Cellar/redis/7.0.8/homebrew.mxcl.redis.plist
复制一下我绿线画出来的部分,后面有用。
<string>/usr/local/opt/redis/bin/redis-server</string>
<string>/usr/local/etc/redis.conf</string>
提示下vi进去后的文本编辑方式:
i:进入编辑模式
esc:退出编辑模式
:q!:不保存退出
:wq:保存退出
2.设置为开机自启动
sudo launchctl load /usr/local/Cellar/redis/7.0.8/homebrew.mxcl.redis.plist
很可惜,报错了
按报错信息去搜索,大部分都说是因为文件的权限不对,要sudo chmod 600为这个权限,我也试过了,依然不行。
下面是正确的方式:
1)创建.plist配置文件
sudo vi /Library/LaunchDaemons/io.redis.redis-server.plist
注意,这里不要拷贝/usr/local/Cellar/redis/7.0.8/homebrew.mxcl.redis.plist这个文件,我开始耍小聪明,拷贝过来依然会报权限不足的问题,所以老老实实vi一个新文件出来。
2)将下面配置内容拷贝到io.redis.redis-server.plist文件中
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>io.redis.redis-server</string>
<key>ProgramArguments</key>
<array>
<string>/usr/local/opt/redis/bin/redis-server</string>
<string>/usr/local/etc/redis.conf</string>
</array>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>
3)检查路径是否正确
<string>/usr/local/opt/redis/bin/redis-server</string>
<string>/usr/local/etc/redis.conf</string>
要与/usr/local/Cellar/redis/7.0.8/homebrew.mxcl.redis.plist文件中的路径是一样的。
4)保存退出
:wq
5)执行开机自启动命令
sudo launchctl load /Library/LaunchDaemons/io.redis.redis-server.plist
6)验证是否生效
重启电脑,并执行redis-cli,显示为下图即成功
7)使用launchctl手动启动/关闭redis
-
启动redis
sudo launchctl start io.redis.redis-server
-
关闭redis
sudo launchctl stop io.redis.redis-server
8)可对上述命令进行简化(通过设置别名的方式)
- 控制台输入cd,切换到用户目录
- 编辑环境变量配置,将别名设置粘贴到配置文件
vi .bash_profile
alias redisstart='sudo launchctl start io.redis.redis-server'
alias redisstop='sudo launchctl stop io.redis.redis-server'
source ~/.bash_profile
source ./.bash_profile
保存退出即可!
三、总结
两种安装方式都可以按文章设置为开机自启动!
安装完毕,容易遇到的坑,权限不足,编译错误等,注意即可,耐心解决问题。
over!
参考文档:
1.MacOS redis开机启动设置_tacity的博客-CSDN博客_mac redis 开机启动
2.macOS安装redis并设置服务自启动_小范馆的博客-CSDN博客_macos redis 启动