中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

redis安裝及簡單應用

發布時間:2020-05-29 15:37:46 來源:網絡 閱讀:617 作者:不太笨 欄目:數據庫


1.系統環境:centos7.2 —— x86_64

[root@salt1 ~]# cat /etc/centos-release

CentOS Linux release 7.2.1511 (Core) 

[root@salt1 ~]# uname -a

Linux salt1 3.10.0-327.el7.x86_64 #1 SMP Thu Nov 19 22:10:57 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux



2.安裝redis

先決條件:首先安裝epel-release(epel源)

[root@salt1 ~]# yum -y install epel-release

然后安裝redis

[root@salt1 ~]# yum -y install redis

[root@salt1 ~]# rpm -q redis

redis-2.8.19-2.el7.x86_64

[root@salt1 ~]# redis-

redis-benchmark   redis-check-aof   redis-check-dump  redis-cli         redis-sentinel    redis-server      redis-shutdown 


redis-server:redis服務器的daemon啟動程序

redis-cli: redis命令行客戶端操作工具,當讓也可以用telnet根據其純文本協議來操作;

redis-benchmark:redis性能測試工具,測試redis在你的系統及你的配置下的讀寫性能;

redis-check-aof:對于更新日志appendonly.conf檢查,是否可用,類似檢查mysql binlog的工具;

redis-check-dump:用于本地數據庫rdb文件的檢查;



3.啟動redis服務

先備份一下redis的配置文件(個人習慣,先備份再操作)

[root@salt1 ~]# cp /etc/redis.conf{,.bak}

redis啟動時最好指定其配置文件,因為redis幾乎所有的控制都在其配置文件;

redis-server :     redis服務器的daemon啟動程序

/etc/redis.conf :    redis的配置文件

& :           后臺啟動

[root@salt1 ~]# redis-server /etc/redis.conf &

[1] 9462

[root@salt1 ~]# ps -ef | grep redis

root       9462   2767  0 03:59 pts/0    00:00:00 redis-server 127.0.0.1:6379

root       9466   2767  0 03:59 pts/0    00:00:00 grep --color=auto redis

然后再看下日志

[root@salt1 ~]# tail -30 /var/log/redis/redis.log 

[9462] 11 Aug 03:59:54.037 * Increased maximum number of open files to 10032 (it was originally set to 1024).

                _._                                                  

           _.-``__ ''-._                                             

      _.-``    `.  `_.  ''-._           Redis 2.8.19 (00000000/0) 64 bit

  .-`` .-```.  ```\/    _.,_ ''-._                                   

 (    '      ,       .-`  | `,    )     Running in stand alone mode

 |`-._`-...-` __...-.``-._|'` _.-'|     Port: 6379

 |    `-._   `._    /     _.-'    |     PID: 9462

  `-._    `-._  `-./  _.-'    _.-'                                   

 |`-._`-._    `-.__.-'    _.-'_.-'|                                  

 |    `-._`-._        _.-'_.-'    |           http://redis.io        

  `-._    `-._`-.__.-'_.-'    _.-'                                   

 |`-._`-._    `-.__.-'    _.-'_.-'|                                  

 |    `-._`-._        _.-'_.-'    |                                  

  `-._    `-._`-.__.-'_.-'    _.-'                                   

      `-._    `-.__.-'    _.-'                                       

          `-._        _.-'                                           

              `-.__.-'                                               

[9462] 11 Aug 03:59:54.038 # Server started, Redis version 2.8.19

[9462] 11 Aug 03:59:54.039 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.

[9462] 11 Aug 03:59:54.039 # WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' as root, and add it to your /etc/rc.local in order to retain the setting after a reboot. Redis must be restarted after THP is disabled.

[9462] 11 Aug 03:59:54.040 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.

[9462] 11 Aug 03:59:54.040 * The server is now ready to accept connections on port 6379


×××字體為:問題

紅色字體為:解決辦法



×××字體解釋:

1.后臺保存在低內存下可能會失敗

vm.overcommit_memory 參數

默認值為0

0:當用戶空間請求更多的內存時,內核嘗試估算出剩余可用的內存;

1:內核允許超量使用內存,直到用完為止;主要用于科學計算;

2:內核會使用一個絕不過量使用內存的算法,即系統整個內存地址空間不能超過swap+50%的ram值,50%參數的設定是在overcommit_ratio中設定;

2.啟用了THP(頁面內存透明化)在你的內核具體解釋看 后邊的網址,里頭解釋的更詳細 http://os.51cto.com/art/201103/249821.htm

3.tcp backlog 設置為511 不能執行,原因是/proc/sys/net/core/somaxconn的值較低

backlog 是網絡連接過程中,某種狀態的隊列長度,如果并發高,那么會導致backlog的隊列被占滿,服務器就會丟掉傳進來的其他連接,然后就會出現客戶點連接失敗的情形;

http://jingyan.baidu.com/article/84b4f565e60f8560f6da3227.html


所以底下就開始執行對應的操作

注意:藍色字體為需要注意的地方

echo "vm.overcommit_memory = 1" >> /etc/sysctl.conf
sysctl -p 
echo "echo never > /sys/kernel/mm/transparent_hugepage/enabled" >> /etc/rc.local
echo "echo 511 > /proc/sys/net/core/somaxconn" >> /etc/rc.local


下面是一個截圖,需要對比的伙伴可以對一下

redis安裝及簡單應用


相信經過上面3行的配置,你的redis不會再報類似的警告了,當然你還需要在redis.conf文件中指定redis允許使用的內存大小(下章介紹),否則你的服務器撐不了兩天



4.關閉redis服務

1)redis-shutdown #默認會保存后關閉

2)redis-cli shutdown save #



5.連接redis

[root@salt1 ~]# redis-cli

127.0.0.1:6379>



6.簡單操作

127.0.0.1:6379> set id 001 #創建key-vlaue

OK

127.0.0.1:6379> get id #查找key

"001"

127.0.0.1:6379> del id #刪除key

(integer) 1

127.0.0.1:6379> get id

(nil)

127.0.0.1:6379> exists id #查詢id是否存在

(integer) 1

127.0.0.1:6379> del id

(integer) 1

127.0.0.1:6379> exists id

(integer) 0

127.0.0.1:6379> keys * #獲取所有key

127.0.0.1:6379> set k1 v1

OK

127.0.0.1:6379> set k2 v2

OK

127.0.0.1:6379> set k3 v3

OK

127.0.0.1:6379> keys * #獲取所有key

1) "k2"

2) "k3"

3) "k1"

127.0.0.1:6379> dbsize #獲取所有key-value數

(integer) 3



redis默認有16個庫,但是無法查看到(庫的多少可以在redis.conf中配置)

127.0.0.1:6379> select 1 #切換到第二個庫(從0開始數)

OK

127.0.0.1:6379[1]> keys *

(empty list or set)

127.0.0.1:6379[1]> set name 123

OK

127.0.0.1:6379[1]> keys *

1) "name"

127.0.0.1:6379[1]> select 0

OK

127.0.0.1:6379> keys *

1) "k2"

2) "k3"

3) "k1"

127.0.0.1:6379> select 15

OK

127.0.0.1:6379> select 16

(error) ERR invalid DB index


好了redis的安裝就先說到這兒了


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

廉江市| 永和县| 乌什县| 米易县| 西宁市| 炎陵县| 阜南县| 昭苏县| 新安县| 乌兰县| 十堰市| 改则县| 永清县| 光山县| 读书| 五大连池市| 南郑县| 栾城县| 望江县| 霍城县| 奎屯市| 西昌市| 广河县| 海口市| 德兴市| 凌源市| 阜平县| 宜宾县| 抚州市| 江西省| 天台县| 陇川县| 宁德市| 额济纳旗| 青龙| 凤台县| 宝鸡市| 柘荣县| 南充市| 吉木萨尔县| 新干县|