web-dev-qa-db-ja.com

ubuntu14.04のredis-server:バインドアドレスはすでに使用されています

ターミナルで$ redis-serverと入力して、ubuntuでredisサーバーを起動しました。

この結果、次のようになります> http://paste.ubuntu.com/12688632/

aruns ~ $ redis-server
27851:C 05 Oct 15:16:17.955 # Warning: no config file specified, using the default config. In order to specify a config file use redis-server /path/to/redis.conf
27851:M 05 Oct 15:16:17.957 # You requested maxclients of 10000 requiring at least 10032 max file descriptors.
27851:M 05 Oct 15:16:17.957 # Server can't set maximum open files to 10032 because of OS error: Operation not permitted.
27851:M 05 Oct 15:16:17.958 # Current maximum open files is 4096. maxclients has been reduced to 4064 to compensate for low ulimit. If you need higher maxclients increase 'ulimit -n'.
27851:M 05 Oct 15:16:17.958 # Creating Server TCP listening socket *:6379: bind: Address already in use

どうすればこの問題を修正できますか、このバインディングを修正するための手動または自動プロセスがあります。

17
aruns
$ ps aux | grep redis

実行されているポートを見つけます。私の場合は..

MyUser  8821   0.0  0.0  2459704    596   ??  S    4:54PM   0:03.40 redis-server *:6379

そして、手動でポートを閉じます

$ kill -9 8821

Redisを再実行

$ redis-server
55

私にとって、多くの問題の後、これは私の問題を解決しました:

 root@2c2379a99b47:/home/ ps -aux | grep redis
    redis     3044  0.0  0.0  37000  8780 ?        Ssl  14:59   0:00 /usr/bin/redis-server *:6379  

redisを見つけたら、それを殺します!

root@2c2379a99b47:/home# Sudo kill -9 3044
root@2c2379a99b47:/homek# Sudo service redis-server restart
Stopping redis-server: redis-server.
Starting redis-server: redis-server.
root@2c2379a99b47:/home# Sudo service redis-server status 
redis-server is running
12
Iman Mirzadeh

http://www.redis.io のドキュメントを読み、redis.confファイルを開いてredis-serverを構成し、/etc/redis/redis.confにあります

$ Sudo subl /etc/redis/redis.conf

崇高なエディタの代わりに、あなたが選んだエディタ、すなわちnano、vi、emacs、vim、gedit。

このファイルでは、#bind 127.0.0.1行のコメントを外しました。したがって、0.0.0.0:6379の代わりに127.0.0.1:6379になりました

Redisサーバーを再起動します

$ Sudo service redis-server restart

サーバーはポート6379で接続を受け入れる準備ができました。

これによりサーバーが起動します。より詳細な構成と設定については、これに従うことができます buntuのredis-server

7
aruns

Macでredis-cli shutdownと入力するだけでこの問題を解決しました。その後、ターミナルを再度開いてredid-serverと入力すると動作します。

3
PetarCeho
Sudo service redis-server stop
2
Aslam Shaik

コマンドparam -ef

ps -ef|grep redis

-ef手段

-A      Display information about other users' processes, including those
         without controlling terminals.
-e      Identical to -A.

-f      Display the uid, pid, parent pid, recent CPU usage, process start
        time, controlling tty, elapsed CPU usage, and the associated com-
        mand.  If the -u option is also used, display the user name
        rather then the numeric uid.  When -o or -O is used to add to the
        display following -f, the command field is not truncated as se-
        verely as it is in other formats.

その後、PIDを殺します

kill -9 $pid
2
Zgpeace

それが言うように、プロセスはすでに実行されているので、最善の方法は、それを停止し、分析して再起動し、todoすることです。次のコマンドがあります。

redis-cli ping #should return 'PONG'

そして、これは私の問題を解決しました:

$ ps -ef |grep redis

root      6622  4836  0 11:07 pts/0    00:00:00 grep redis
redis     6632     1  0 Jun23 ?        04:21:50 /usr/bin/redis-server *:6379

Redisプロセスを見つけて停止します!

$ kill -9 6632
$ service redis restart


Stopping redis-server: [  OK  ]
Starting redis-server: [  OK  ]


$ service redis status

そうでなければ、これがすべてうまくいかない場合は、単にredis-cli

それが役に立てば幸い :)

1
rust

試してみてください

$ make

それから

$ Sudo cp src/redis-cli /usr/local/bin/ターミナルでredisをインストールし、そのredis-cliコマンドです。

最後に、redis-cli shutdownコマンド。この回答があなたのお役に立てば幸いです。

1
plotseeker

OSで起動した後に実行されていたプロセスを強制終了することは、私にとってはうまくいきました。 Ubuntu OSの起動時にredisが起動しないようにするには:

Sudo systemctl disable redis-server
0
aless80