Як встановити Redis на Ubuntu 16.04?


65

Я працюю з Laravel, але я все встановив самостійно (php, mysql, composer, nginx), і тепер мені потрібно встановити Redis і налаштувати його, щоб я міг використовувати його для драйвера черги в Laravel.

Як його встановити, оскільки його неможливо встановити apt-get install redis

я отримую цю помилку:

ubuntu@ubuntu:~$ sudo apt-get install redis
[sudo] password for ubuntu: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
E: Unable to locate package redis

13
sudo apt-get install redis-server
Даррен Вебер

E: Unable to locate package redis-server...? Linux ubuntu-xenial 4.4.0-112-generic
citynorman

Ви намагаєтесь встановити це в Windows? Я маю на увазі, що є E:у вашій лінії?
lewis4u

Мені довелося бігти sudo apt-get updateвиправитиE: Unable to locate package redis-server
citynorman

Відповіді:


114

Я думаю, що завжди краще (і простіше) встановити з основних репостів як перший варіант, якщо у вас немає особливих вимог.

Пакет, який ви шукаєте, названий redis-server. Ви можете перевірити інформацію про його пакет за допомогою apt show redis-server.

Крім того, то ви можете знайти все пакети , згадуючи Redis з apt search redis, або навіть робити деякі прості фільтрації з використанням grep, використовуйте apt search redis | grep phpдля пошуку php-redisабо відповідного пакета (ів), наприклад.

Отже, ви можете просто запустити:

sudo apt install redis-server

на своєму терміналі, щоб встановити повністю працююче redis(серверне) середовище.

Якщо у вас є якісь особливі вимоги, ви завжди можете створити з джерела та встановити, як @George розмістив його відповідь.

Сподіваюся, це допомагає.


чи є 2 версії redis? нормальний redis і сервер redis чи що, зараз я трохи заплутався
lewis4u

6
Гаразд, я перевірив це, і я прийшов до висновку, що мені не потрібно нічого робити, крім того, що sudo apt-get install redis-serverя не знаю, про що все йдеться у відповіді вище ... якось не потрібно все це робити! ?
lewis4u

5
Я думаю, що це пов’язано з особистими уподобаннями, деякі люди вважають за краще будувати з джерела (і робити це для кожної версії програмного забезпечення), щоб бути в курсі більше, і т. Д. Я не згоден з цим, за винятком дуже особливих випадків, як я вже згадував (зі стабільною системою на увазі), я віддаю перевагу командним пакетам Ubuntu, оскільки вони досить добре перевірені проти всіх систем Ubuntu (настільних, серверних, ядерних, хмарних) .
dgonzalez

2
Гаразд ... для моїх потреб apt-get install redis-сервер більш ніж достатньо
lewis4u

11
Це має бути прийнята відповідь
Nam G VU

54

Щоб встановити redis, виконайте наступні дії:

  1. Налаштуйте користувача, який не є кореневим користувачем, з sudoпривілеями

  2. Встановити залежність побудови та тестування:

    sudo apt update
    sudo apt full-upgrade
    sudo apt install build-essential tcl
    
  3. Налаштування redis:

    1. Завантажте останню копію за цим посиланням або за цим посиланням

      curl -O http://download.redis.io/redis-stable.tar.gz
      
    2. Створіть тимчасову папку для неї, скажімо, у вашому /home/username/redis-stableкаталозі
    3. Перемістіть у створену папку та витягніть її

      tar xzvf redis-stable.tar.gz
      
    4. Перейдіть у папку cd redis-stableта створіть її

      make
      make test
      sudo make install
      
  4. Налаштувати редис:

    1. Створення каталогу конфігурації:

      sudo mkdir /etc/redis
      
    2. Перемістити зразок файлу конфігурації redis:

      sudo cp /home/george/redis-stable/redis.conf /etc/redis
      
    3. Відредагуйте файл:

      sudo nano /etc/redis/redis.conf # or with any other text editor
      
    4. Зробіть два зміни там:
      supervised noдо supervised systemd
      dirдо dir /var/lib/redis# для постійного скидання даних
  5. Налаштуйте файл системного блоку:

    sudo nano /etc/systemd/system/redis.service
    

    Додати текст:

    [Unit]
    Description=Redis In-Memory Data Store
    After=network.target
    
    [Service]
    User=redis
    Group=redis
    ExecStart=/usr/local/bin/redis-server /etc/redis/redis.conf
    ExecStop=/usr/local/bin/redis-cli shutdown
    Restart=always
    
    [Install]
    WantedBy=multi-user.target
    
  6. Налаштування redis користувачів, груп та каталогів:

    створити користувача redis та групу з таким самим ідентифікатором, але без домашньої директорії:

    sudo adduser --system --group --no-create-home redis   
    sudo mkdir /var/lib/redis   # create directory
    sudo chown redis:redis /var/lib/redis   # make redis own /var/lib/redis
    sudo chmod 770 /var/lib/redis   # adjust permission
    
  7. Тест-редакція:

    1. Запуск послуги redis:

      sudo systemctl start redis
      
    2. Перевірити статус:

      systemctl status redis
      

      Результат статусу при успішному запуску:

      Output
      ● redis.service - Redis Server
       Loaded: loaded (/etc/systemd/system/redis.service; enabled; vendor preset: enabled)
       Active: active (running) since Wed 2016-05-11 14:38:08 EDT; 1min 43s ago
       Process: 3115 ExecStop=/usr/local/bin/redis-cli shutdown (code=exited, status=0/SUCCESS)
       Main PID: 3124 (redis-server)
       Tasks: 3 (limit: 512)
       Memory: 864.0K
       CPU: 179ms
       CGroup: /system.slice/redis.service
                └─3124 /usr/local/bin/redis-server 127.0.0.1:6379
      
    3. Тестовий приклад:

      1. Підключення:

        redis-cli
        
      2. Підключення до тесту у відповідь:

        127.0.0.1:6379> ping   # result PONG
        
      3. Перевірте здатність встановлювати клавіші:

        127.0.0.1:6379 set test "It's working!"  # result ok
        
      4. Отримайте ключ, щойно встановлений:

        127.0.0.1:6379 get test  # result "It's working!"
        
      5. Вихід з червоного кольору:

        127.0.0.1:6379 exit
        
      6. Перезапустіть redis, а потім повторіть кроки 1, 4 і 5, щоб знову з’єднатися з клієнтом і підтвердити, що ваше тестове значення все ще доступне, отже, воно працює як очікувалося:

        sudo systemctl restart redis
        
  8. Увімкнути redis для запуску під час завантаження:

    sudo systemctl enable redis
    

Джерело:

Digital Ocean - як встановити і налаштувати redis на Ubuntu 16.04

Прямі посилання для завантаження


чи потрібно все це робити, як ви писали? тому що я просто намагався встановити redis на іншій машині, sudo apt-get install redis-serverі я можу запускати redis-cliта встановлювати змінні та викликати їх без проблем ... тому я прошу, тому що я хочу вчитися!
lewis4u

4
Якщо ви хочете встановити останню версію, це шлях, але якщо ви не так стурбовані отриманням останньої, то sudo apt-get install redis-serverце шлях до буксирування. Знову ж таки це можливість дізнатися, як redisнасправді працює і як відбувається налаштування. Особисто я вважаю за краще це робити так, щоб я знав і виходив із системи і можу змінити це відповідно до моїх потреб та очікувань.
Джордж Удосен

Зараз я твій фанат.
Тіаго Бертоло

1
@TiagoBertolo obrigado!
Джордж Удосен

1
@PrimeTimeTran Я думаю, що він має на увазі повторне виконання кроків 1, 4 та 5 кроку 7: 3, а не загальної процедури.
муру

25

Як описано тут . Спочатку додайте сховище PPA до вашої ОС, а потім оновіть свій список сховищ та встановіть його.

sudo add-apt-repository ppa:chris-lea/redis-server
sudo apt-get update
sudo apt-get install redis-server

3
використовувати ppa набагато зручніше
cwhsu

4
Це було чудово для оновлення на місці від версії 3.0 за замовчуванням, доступної у стандартній репо до версії 4.0 в Ubuntu 16.04. Спасибі
jamescampbell

2
Найкраща відповідь !!!!
Джеймс М

1
Досі діє для Ubuntu 18.04; Я зміг отримати останню версію Redis таким чином, на відміну від значно старшої (на 1 головний реліз / 12 місяців позаду) версії.
cdjaco

4

Після відповіді @ Джорджа , після запуску make(крок 3, частина 4), cdперейдіть redis-stable/utilsі запустіть ./install_server.sh.

Цей інтерактивний скрипт допоможе вам визначити порт та інші розташування файлів, після чого ви можете негайно запустити redis-cli.

Цей самий каталог також має зручний сценарій для запуску та зупинки сервера.


Job for redis-server.service failed because the control process exited with error code. See "systemctl status redis-server.service" and "journalctl -xe" for details. invoke-rc.d: initscript redis-server, action "start" failed. ● redis-server.service - Advanced key-value store Loaded: loaded (/lib/systemd/system/redis-server.service; enabled; vendor preset: enabled) Active: activating (auto-restart) (Result: exit-code) since Wed 2017-03-29 19:19:59 UTC; 37ms ago Docs: http://redis.io/documentation, man:redis-server(1)
Стіві Г

0

1) Перш за все, перейдіть на сайт redis.io

2) і ви бачите там перевірте сторінку завантаження

3) Відкрийте термінал

4) політика apt-кеша redis-сервера

Ви можете побачити таблицю версій для відображення версії операційної системи

5) sudo apt-get install redis-сервер

Don't getting this way install. Because redis server installing, but redis server install the your Ubuntu operating system version.

6) Найпростіший спосіб Перейдіть на сайт redis.io і натисніть на посилання для завантаження. Далі ви будете прокручувати ще більше вниз, ви побачите встановлення

almost same way mac

7) Перш за все, ви вводите команду оновлення. Все, що збирається на репо, було оновленням.

 sudo apt-get update

8) sudo apt-get install build-essential tcl

9) mkdir redis

10) wget http://download.redis.io/releases/redis-4.0.0.tar.gz

11) Тепер дайте команду tar

   unzip tar file.
   tar xzf redis-4.0.0.tar.gz

12) cd redis-4.0.0

13) make- внесення на redis binary

якщо один раз закінчити, ви можете побачити команду "зробити тест"

14) src/redis-server- запустити сервер redis

15) src/redis-cli- запуск клієнта redis

set name vadivel
    Ok
    get name
    "vadivel"

16) sudo make install- щоразу, коли дають команду redis на введення будь-якого dir

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.