scribble

吕小荣

Blog Friends RSS About

Mac 开机启动 MySQL/MongoDB/PG/Redis

16 August, 2014

今天刚发现一个很实用的 brew 技巧:开机启动 MySQL/MongoDB/PG/Redis

  1. 使用 brew info redis 查看 redis 这个包的信息

    > brew info redis
    redis: stable 2.8.13 (bottled), HEAD
    http://redis.io/
    /usr/local/Cellar/redis/2.4.10 (9 files, 416K)
    /usr/local/Cellar/redis/2.8.3 (10 files, 1.2M) *
      Poured from bottle
    From: https://github.com/Homebrew/homebrew/blob/master/Library/Formula/redis.rb
    ==> Caveats
    To reload redis after an upgrade:
        launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.redis.plist
        launchctl load ~/Library/LaunchAgents/homebrew.mxcl.redis.plist
    
    
    
    Surprise,brew 已经把 plist 文件放到`~/Library/LaunchAgents` 下。
    
  2. 运行 load ~/Library/LaunchAgents/homebrew.mxcl.redis.plist

    下次开机后,Mac 会自动启动 Redis。

同理,通过以下命令找到 MongoDB、PostgreSQL、MySQL 的 plist 文件。load 相应的 plist,下次开机自动启动。再也不用一次次的手工启动了,每天节省1分钟。

brew info mongodb

brew info postgresql

brew info mysql

Mac OS 的开机启动方式

launchd 是 Mac OS 下用于初始化系统环境的关键进程,它是内核装载成功之后在OS环境下启动的第一个进程。采用这种方式来配置自启动项很简单,只需要一个plist文件,该plist文件存在的目录有:

  1. LaunchDaemons

    ~/Library/LaunchDaemons

    用户登陆前运行 plist(程序)

  2. LaunchAgents

    ~/Library/LaunchAgents

    用户登录后运行相应的 plist(程序)

LaunchDaemons Vs LaunchAgents 的区别

这两种开机启动的分水岭如下图所示

Login

Reference

  1. Homebrew, Mac OS X 最强大的包管理工具
  2. Mac OS 的开机启动配置