Як перезапустити redis, який я встановив за допомогою варіння?


66

Я використовував Brew для встановлення redis (сервер бази даних ключів / цінностей) для свого додатка node.js.

brew install redis

Однак він, здається, зникає і дуже мінливий. Оскільки я використовую redis як свій сесійний магазин, мені потрібно мати можливість швидко перезапустити його на своєму mac, коли це станеться.

Як перезапустити redis, який я встановив за допомогою варіння?

Відповіді:


64

оновлення

Термін дії пивоваріння закінчився через те, що ніхто не хоче його підтримувати. перевірити нижче: https://github.com/Homebrew/homebrew/isissue/28657

перевірити launchctlфункцію замість цього.

або lunchy

Тож замість:

launchctl load ~/Library/LaunchAgents/io.redis.redis-server.plist

Ви можете це зробити:

lunchy start redis

і:

lunchy ls

посилання: https://github.com/eddiezane/lunchy

Раніше можна було використовувати як нижче:

brew services restart redis

повинна бути командою перезавантаження, яку ви хочете. Ви також можете бігати

brew services list

який надасть вам список ваших пивоварних послуг.


2
Мені довелося перевстановити redis з brew, щоб потрапити в стартовий список, тоді це спрацювало чудово
Стюарт Нельсон

1
"Попередження: послуги пивоваріння не підтримуються і незабаром буде видалено."
користувач72923

2
Видалити такий корисний ярлик досить глупо. Але це, до речі, баггі. Я можу припинити повторне використання brew services, але після цього я не можу запустити його знову.
Пхуонг Нгуєн

3
brew більше не підтримує дієслово "services" станом на 0.9.5
oDDsKooL

4
Зверніть увагу , що квас робить підтримує команду на послуги в даний час з допомогою крана. Дивіться відповідь нижче, зараз це більш відповідна відповідь.
GrayedFox

38

Станом на 7 грудня 2015 р. Ви можете користуватися brew services.

Вам потрібно, brew tap homebrew/servicesа потім виконати наступні дії, як очікується:

встановити brew install redis

почати brew services start redis

Стоп brew services stop redis

перезапустити brew services restart redis

Більше інформації тут: https://github.com/Homebrew/homebrew-services


суперечлива відповідь, сказана вище brew services, застаріла.
чови

5
@chovy Вони були зняті з-за відсутності технічного обслуговування, але тепер знову повернулися як пивовар . Як ви бачите, остання фіксація відбувається з 27 днів тому .
мікроспіно

3
Це більш відповідна і сучасна відповідь зараз, ніж вищезазначені, та швидша у здійсненні, ніж ручний launchctlшлях.
GrayedFox

2
Настав 2017 рік, і я використовую Brew v1.3.6, і це працює чудово.
Райан Тейлор

23

Brew більше не підтримує servicesкоманду.

Рекомендований спосіб - використовувати launchctlкоманду os x .

Спочатку вам потрібно налаштувати redis як службу, якою керує startctl:

$ ln -sfv /usr/local/opt/redis/*.plist ~/Library/LaunchAgents

Потім ви можете скористатися launchctl load/ launchctl unloadзапустити / зупинити послугу:

$ # start redis server
$ launchctl load ~/Library/LaunchAgents/homebrew.mxcl.redis.plist
$
$ # stop redis server
$ launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.redis.plist

brew 0.9.5 служби підтримки, ось вони $ brew --version Homebrew 0.9.5 (git revision bf22; останнє зобов’язання 2016-03-06) $ brew Послуги списку Ім'я Статус Список Список користувачів postgresql зупинився redis stop $
AMIC MING

19

Я виявив, що всі ці параметри, перелічені в упаковці для заварювання ( brew info redis), дуже баггі. Наприклад, redis видає купу помилок, якщо він не починається з root. Я в кінцевому підсумку просто робив прямий дзвінок із sudo та видаляв файли startctl.

sudo redis-server /usr/local/etc/redis.conf

Я сподівався, що існує спосіб легко перезапустити redis з командного рядка, але це не здається можливим. Тому я запускаю з демоновим режимом, встановленим на "ні", і спостерігаю, як він записується до stdout, тоді я можу його легко вбити.


1
Я додав цю команду "і відхилити" до тла та відірвався від процесу
Бен Сімпсон

2
Дивіться іншу відповідь, яка використовує launchctl, вона працює і підтримується зараз рецептом заварки.
oDDsKooL

1

Для домашньої версії 1.5.14

redis-server


4
Ласкаво просимо до Супер Користувача! Це дублює інформацію, що присутня в іншій відповіді - чи можна взагалі її розмежувати? :)
bertieb

Тепер це те саме, що прийнята відповідь !! (Ви дійсно повинні просто видалити цю відповідь.)
robinCTS

ні це не так. Він включив шлях до файлу конф. Ясно не те саме, і не потрібно. Я знаю, що я не хочу вводити шлях до файлу conf щоразу, коли запускаю і зупиняю Redis, і я думаю, що хтось, хто читає це (окрім вас), вважав би це цінним.
Мігель Кодер
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.