Linux - Instal redis-cli saja

182

Saya memiliki server Linux dengan Redis terinstal dan saya ingin menghubungkannya melalui baris perintah dari mesin Linux lokal saya.

Apakah mungkin untuk menginstal redis-clisaja (tanpa redis-serverdan alat lainnya)?

Jika saya hanya menyalin redis-clifile ke mesin lokal saya dan menjalankannya, saya memiliki kesalahan berikut:

./redis-cli: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.14' not found (required by ./redis-cli)
Oleg
sumber
2
1. Tidak mengherankan bahwa hanya menyalin yang dapat dieksekusi tidak berfungsi: kemungkinan besar Anda memiliki versi arsitektur dan perpustakaan yang berbeda, itu tidak dapat berfungsi. 2. Anda harus berkonsultasi dengan sistem manajemen perangkat lunak yang disediakan distribusi Anda dan melihat reditpaket apa yang disediakannya. Kemudian menginstal salah satu dari shoudl tersebut hanya memerlukan satu klik. Anda seharusnya tidak pernah melakukan instalasi liar ke dalam sistem Linux jika Anda dapat menggunakan manajemen perangkat lunak sebagai gantinya.
arkascha
@arkascha Terima kasih atas tipnya. Saya cukup baru di Linux sehingga informasi ini sangat berguna bagi saya
Oleg
Maksud Anda, Anda adalah pengembang yang bekerja di bawah lingkungan Linux, tetapi Anda tidak pernah menggunakan sistem manajemen perangkat lunak sistem? Distribusi apa yang Anda gunakan?
arkascha
Anda mungkin juga tertarik dengan paket yang disebut 'hiredis' yang menawarkan c klien minimalis untuk redis. Namun tidak ada klien klien yang siap digunakan.
arkascha
1
Bagaimana dengan git clone [email protected]:antirez/redis.gititu cd src && make redis-cli?
deltheil

Jawaban:

350

Ubuntu (diuji pada 14.04) memiliki paket bernama redis-toolsyang berisi di redis-cliantara alat-alat lainnya. Untuk menginstalnya ketik:

sudo apt-get install redis-tools
Иван Бишевац
sumber
17
hal serupa untuk centos?
Ariel Allon
@AlinPurcaru docker run --rm --network = host redis redis-cli info
yihuang
sekarang tidak berfungsi, http://security.ubuntu.com/ubuntu bionic-updates/universe amd64 redis-tools amd64 5:4.0.9-1ubuntu0.1pengembalian 404 Tidak Ditemukan
Andrew Sneck
92

Alih-alih redis-cliAnda cukup menggunakan nc!

nc -v --ssl redis.mydomain.com 6380

Kemudian kirimkan perintah.

Balázs Németh
sumber
11
Coba nc -v redis.mydomain.com 6379(atau port khusus Anda)
James111
4
Ini adalah jawaban terbaik karena sama sekali tidak memerlukan dependensi atau alat eksternal.
pyrospade
1
apakah mungkin menggunakan ini dengan kata sandi redis?
Matt Bucci
2
Anda juga dapat menggunakan rlwrap nc -v redis.mydomain.com 6379jika Anda memiliki rlwrapyang memungkinkan Anda menggunakan pintasan keyboard seperti yang Anda lakukan dalam sebuah shell (mis. Siklus / cari perintah sebelumnya, kata berikutnya)
Prashanth Chandra
1
Saya tidak dapat menemukan --sslopsi untuk nc. Apakah maksud Anda ncat?
hashlash
37

Dari http://redis.io/topics/quickstart

wget http://download.redis.io/redis-stable.tar.gz
tar xvzf redis-stable.tar.gz
cd redis-stable
make redis-cli
sudo cp src/redis-cli /usr/local/bin/

Dengan Docker saya biasanya menggunakan https://registry.hub.docker.com/_/redis/ . Jika saya perlu menambahkan redis-cli ke gambar saya menggunakan cuplikan berikut.

RUN cd /tmp &&\
    curl http://download.redis.io/redis-stable.tar.gz | tar xz &&\
    make -C redis-stable &&\
    cp redis-stable/src/redis-cli /usr/local/bin &&\
    rm -rf /tmp/redis-stable
Kevin Watson
sumber
30

Untuk menginstal 3.0 yang merupakan versi stabil terbaru :

$ git clone http://github.com/antirez/redis.git 
$ cd redis && git checkout 3.0 
$ make redis-cli 

Secara opsional, Anda dapat menempatkan executable yang dikompilasi di jalur beban Anda untuk kenyamanan:

$ ln -s src/redis-cli /usr/local/bin/redis-cli
Agis
sumber
4
git clone http://github.com/antirez/redis.git && cd redis && git checkout 2.8.6 && make redis-cli && cp src/redis-cli /usr/local/bin- ini bekerja untuk saya.
Dhamu
mencoba mengedit ini. tetapi di sini ada intisari tentang bagaimana melakukannya sekarang ... gist.github.com/Artistan/d9288f8e12c4027096e66bd331d4e4fd
Artistan
15

Untuk centOS, mungkin dapat mencoba langkah-langkah berikut

cd /tmp
wget http://download.redis.io/redis-stable.tar.gz
tar xvzf redis-stable.tar.gz
cd redis-stable
make
cp src/redis-cli /usr/local/bin/
chmod 755 /usr/local/bin/redis-cli
robert
sumber
6
Komentar yang berpotensi bodoh, tetapi jangan lupa untuk menginstal gcc sudo yum install gccsebelum menjalankan make!
Bryan Cote-Chang
Bekerja di linux juga.
barath
15

Dalam kasus saya, saya harus menjalankan beberapa langkah lagi untuk membangunnya di RedHat atau Centos .

# get system libraries
sudo yum install -y gcc wget

# get stable version and untar it
wget http://download.redis.io/redis-stable.tar.gz
tar xvzf redis-stable.tar.gz
cd redis-stable

# build dependencies too!
cd deps
make hiredis jemalloc linenoise lua geohash-int
cd ..

# compile it
make

# make it globally accesible
sudo cp src/redis-cli /usr/bin/
Damoiser
sumber
7

Untuk memperluas jawaban @ Agis, Anda juga dapat menginstal Redis CLI dengan menjalankan

$ git clone -b v2.8.7 [email protected]:antirez/redis.git
$ make -C redis install redis-cli /usr/bin

Ini akan membangun Redis CLI dan melemparkan biner ke / usr / bin. Bagi siapa pun yang menggunakan Docker , saya juga membuat Dockerfile yang melakukan ini untuk Anda: https://github.com/bacongobbler/dockerfiles/blob/master/redis-cli/Dockerfile

bacongobbler
sumber
Terima kasih atas jawaban Anda. Saya akan mencobanya secepat mungkin
Oleg
Bagi saya perintah ini mengkompilasi seluruh Redis, tidak hanyaredis-cli
Oleg
5

Menggunakan Docker , Anda dapat menjalankan perintah ini untuk mendapatkan Redis CLI:

docker run -it redis redis-cli -h redis.mycompany.org -p 6379

di mana redisadalah redisburuh pelabuhan gambar dari Docker Hub,
redis-cli adalah pra-instal dalam gambar itu, dan semua setelah itu adalah parameter untuk redis-cli:
-hadalah nama host terhubung ke,
-pternyata port untuk menghubungkan ke.

Ondra Žižka
sumber
5

Anda juga dapat menggunakan telnet sebagai gantinya

telnet redis-host 6379

Dan kemudian mengeluarkan perintah, misalnya untuk pemantauan

monitor
xelber
sumber
0

Anda dapat scp dari mesin redis Anda jika Anda memilikinya, hanya biner tunggal. Atau salin dengan nc jika jaringan pribadi (metode ini tidak aman):

redisclient: nc -l 8888 > /usr/local/bin/redis-cli
redisserver: cat /usr/local/bin/redis-cli | nc redisclient 8888
Zaur
sumber
0

Saya membuat solusi murni sederhana, yang sedang dikembangkan.

redis-cli: https://github.com/holys/redis-cli

Bangun sekali, dan jalankan di mana-mana. Sepenuhnya portabel.

Silahkan mencoba.

holys
sumber
0

Ada banyak cara untuk menginstal radis-cli. Itu datang dengan redis-toolsdan redis-server. Menginstal salah satunya akan menginstal redis-clijuga. Tetapi itu juga akan menginstal alat lain juga. Karena Anda telah redis-servermenginstal suatu tempat dan hanya tertarik untuk menginstal redis-cli. Untuk menginstal instal hanya redis-clitanpa alat lain yang tidak perlu ikuti perintah di bawah ini

cd /tmp
wget http://download.redis.io/redis-stable.tar.gz
tar xvzf redis-stable.tar.gz
cd redis-stable
make
cp src/redis-cli /usr/local/bin/
chmod 755 /usr/local/bin/redis-cli
Shalauddin Ahamad Shuza
sumber
1
Mendapatkan kesalahan ini pada perintah salin, tahu cara memperbaikinya cp src / redis-cli / usr / local / bin / cp: tidak dapat stat 'src / redis-cli': Tidak ada file atau direktori seperti itu
Vipresh