จะติดตั้ง Redis บน Ubuntu 16.04 ได้อย่างไร


65

ฉันทำงานกับ Laravel แต่ฉันได้ติดตั้งทั้งหมดด้วยตัวเอง (php, mysql, ผู้แต่ง, 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
Darren Weber

E: Unable to locate package redis-server... ? ลินุกซ์อูบุนตู-xenial 4.4.0-112 ทั่วไป
citynorman

คุณกำลังพยายามติดตั้งสิ่งนี้บน Windows หรือไม่? ฉันหมายความว่ามีE:ในสายของคุณ?
lewis4u

ฉันต้องวิ่งsudo apt-get updateไปซ่อมE: Unable to locate package redis-server
citynorman

คำตอบ:


114

ฉันคิดว่าจะดีกว่า (และง่ายกว่า) ในการติดตั้งจาก repos หลักเป็นตัวเลือกแรกหากคุณไม่มีข้อกำหนดพิเศษ

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 โพสต์ไว้บนคำตอบของเขา

หวังว่ามันจะช่วย


Redis มี 2 รุ่น? Redis ปกติและ Redis ของเซิร์ฟเวอร์หรืออะไรตอนนี้ฉันสับสนนิดหน่อย
lewis4u

6
ตกลงฉันได้ทำการทดสอบแล้วและฉันก็สรุปได้ว่าฉันไม่จำเป็นต้องทำอะไรนอกจากsudo apt-get install redis-serverฉันไม่รู้ว่าคำตอบทั้งหมดข้างต้นนั้นเกี่ยวกับอะไร ... อย่างใดไม่จำเป็นต้องทำทั้งหมด! ?
lewis4u

5
ฉันคิดว่ามันเกี่ยวข้องกับการตั้งค่าส่วนตัวบางคนชอบสร้างจากแหล่งที่มา(และทำสำหรับซอฟต์แวร์แต่ละรุ่น)เพื่อให้ทันสมัยมากขึ้น ฯลฯ ฉันไม่เห็นด้วยกับเรื่องนี้ยกเว้นในกรณีพิเศษเช่นฉันกล่าวถึง (ด้วยระบบที่เสถียร ในใจ) ผมชอบแพคเกจของทีมอูบุนตูเพราะพวกเขาจะถูกทดสอบสวยดีกับทุกระบบอูบุนตู(สก์ท็อป, เซิร์ฟเวอร์หลักเมฆ)
dgonzalez

2
ตกลง ... สำหรับความต้องการของฉัน apt-get redis-server ติดตั้งเพียงพอแล้ว
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. กำหนดค่า Redis:

    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. ตั้งค่าไฟล์ systemd unit:

    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 ด้วย ID เดียวกัน แต่ไม่มีโฮมไดเร็กตอรี่:

    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. ทดสอบ redis:

    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. เริ่มการทำงานใหม่อีกครั้งแล้วทำขั้นตอนที่ 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ใช้งานจริงและวิธีการตั้งค่า โดยส่วนตัวแล้วฉันชอบที่จะทำแบบนี้เพื่อที่ฉันจะได้รู้ว่าภายในและนอกระบบและสามารถปรับให้เข้ากับความต้องการและความคาดหวังของฉัน
George Udosen

ฉันเป็นแฟนของคุณแล้ว
Tiago Bértolo

1
@TiagoBertolo obrigado!
George Udosen

1
@PrimeTimeTran ฉันคิดว่าเขาหมายถึงเรียกใช้ขั้นตอนที่ 1, 4 และ 5 อีกครั้งของขั้นตอนที่ 7: 3 ไม่ใช่ขั้นตอนโดยรวม
muru

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 เริ่มต้นที่มีใน repo มาตรฐานเป็นเวอร์ชัน 4.0 ใน Ubuntu 16.04 ขอบคุณ
jamescampbell

2
คำตอบที่ดีที่สุด !!!!
James M

1
ยังคงใช้ได้สำหรับ Ubuntu 18.04; ฉันสามารถรับ Redis รุ่นล่าสุดได้ด้วยวิธีนี้ซึ่งต่างจากรุ่นที่เก่ากว่า (1 รุ่นหลัก / 12 เดือนหลัง)
cdjaco

4

ทำตามคำตอบของ @ Georgeหลังจากทำงาน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)
Stevie G

0

1) ก่อนอื่นให้ไปที่ไซต์ redis.io

2) และคุณจะเห็นที่นั่นตรวจสอบหน้าดาวน์โหลด

3) เปิดเครื่อง

4) นโยบาย apt-cache redis-server

คุณสามารถดูตารางเวอร์ชันสำหรับเวอร์ชันระบบปฏิบัติการของคุณแสดง

5) sudo apt-get install redis-server

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) ก่อนอื่นคุณจะต้องป้อนคำสั่ง update กิจกรรมซื้อคืนทั้งหมดได้รับการอัปเดต

 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 ไบนารี

ถ้าเมื่อเสร็จแล้วคุณจะเห็นคำสั่ง "ทำการทดสอบ"

14) src/redis-server- เริ่มเซิร์ฟเวอร์ Redis

15) src/redis-cli- เริ่มไคลเอนต์ redis

set name vadivel
    Ok
    get name
    "vadivel"

16) sudo make install- เมื่อใดก็ตามที่ให้คำสั่ง redis เมื่อป้อน dir ใด ๆ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.