redis配置密码_Redis数据库概述
生活随笔
收集整理的這篇文章主要介紹了
redis配置密码_Redis数据库概述
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
Redis簡(jiǎn)介
Redis是完全開源免費(fèi)的,遵守BSD協(xié)議,是一個(gè)高性能的key-value數(shù)據(jù)庫。
Redis與其他 key - value 緩存產(chǎn)品有以下三個(gè)特點(diǎn):
- Redis支持?jǐn)?shù)據(jù)的持久化,可以將內(nèi)存中的數(shù)據(jù)保存在磁盤中,重啟后可以再次加載進(jìn)行使用。
- Redis不僅僅支持簡(jiǎn)單的key-value類型(hash)的數(shù)據(jù),同時(shí)還提供包括string(字符串)、list(鏈表)、set(集合)和sorted set(有序集合)。
- Redis支持?jǐn)?shù)據(jù)的備份,即master-slave模式的數(shù)據(jù)備份。
Redis是一個(gè)高性能的key-value數(shù)據(jù)庫。
- Redis的出現(xiàn),很大程度補(bǔ)償了memcached這類key/value存儲(chǔ)的不足,在部分場(chǎng)合可以對(duì)關(guān)系數(shù)據(jù)庫起到很好的補(bǔ)充作用。
- 它提供了Python,Ruby,Erlang,PHP客戶端,使用很方便。
Redis優(yōu)勢(shì):
- 性能極高 – Redis能讀的速度是110000次/s,寫的速度是81000次/s 。
- 豐富的數(shù)據(jù)類型 – Redis支持二進(jìn)制案例的Strings,Lists,Hashes,Sets及Ordered Sets數(shù)據(jù)類型操作。
- 原子 – Redis的所有操作都是原子性的,意思就是要么成功執(zhí)行要么失敗完全不執(zhí)行。單個(gè)操作是原子性的。多個(gè)操作也支持事務(wù),即原子性,通過MULTI和EXEC指令包起來。
- 豐富的特性 – Redis還支持 publish/subscribe, 通知, key 過期等等特性.
Redis的安裝:
- 官方網(wǎng)站:https://redis.io
- 官方文檔:https://redis.io/documentation
- 中文官網(wǎng):http://www.redis.cn
- GitHub:https://github.com/antirez/redis
- 可視化管理工具:https://redisdesktop.com/download
- windows下安裝地址:https://github.com/MSOpenTech/redis/releases
- 可下載:Redis-x64-3.2.100.msi 直接next按鈕安裝即可
- 配置文件:redis.windows-service.conf
Liunx下的安裝: (如ubuntu)
安裝命令: sudo apt-get -y install redis-server進(jìn)入命令行模式: $ redis-cli 127.0.0.1:6379> set 'name' 'wangwu' ok 127.0.0.1:6379> get 'name' "wangwu"啟停Redis服務(wù): sudo /etc/init.d/redis-server start sudo /etc/init.d/redis-server stop sudo /etc/init.d/redis-server restartRedis高級(jí)特性
1. 安全性:為Redis添加密碼 -------------------------------1.進(jìn)入配置文件:vi /usr/local/redis/etc/redis.conf設(shè)置:requirepass redis的密碼2. 重啟服務(wù):# ./redis-cli shutdown 執(zhí)行關(guān)閉# ./redis-server /usr/local/redis/etc/redis.conf 啟動(dòng)3. 登錄(兩種)# ./redis-cli 客戶端命令鏈接服務(wù)器>auth 密碼值 //授權(quán)后方可使用# ./redis-cli -a 密碼 //連接時(shí)指定密碼來進(jìn)行授權(quán)2. 主從復(fù)制 ------------------------------------------操作步驟:1.先將linux虛擬機(jī)關(guān)閉,之后克隆一個(gè)。2.啟動(dòng)兩個(gè)虛擬機(jī):master(主)和slave(從)3. 在slave(從)中配置一下ip地址# ifconfig eth0 192.168.128.229# ping 一下看看通不通。4. 配置從機(jī)進(jìn)入:配置文件slaveof 192.168.128.228 6379 //配置連接主機(jī)的Redis的ip和端口masterauth 密碼 //配置連接密碼最后啟動(dòng)slave(從)機(jī)的Redis服務(wù)。其他:可以通過info命令中的role屬性查看自己角色是master、slave3. 事務(wù)處理 -------------------------------------------- >multi //開啟一個(gè)事務(wù) >set age 10 //暫存指令隊(duì)列 >set age 20 >exec //開始執(zhí)行(提交事務(wù)) 或>discard //清空指令隊(duì)列(事務(wù)回滾)4. 樂觀鎖 -----------------------------------在事務(wù)前對(duì)被操作的屬性做一個(gè): > watch age >multi //開啟一個(gè)事務(wù)(在此期間有其他修改,則此處會(huì)失敗) >set age 10 //暫存指令隊(duì)列 >set age 20 >exec //開始執(zhí)行(提交事務(wù)) 或>discard //清空指令隊(duì)列(事務(wù)回滾)5. 持久化機(jī)制(通過修改配置文件做設(shè)置) -----------------------------------1. snapshotting(快照)默認(rèn)方式配置 savesave 900 1 #900秒內(nèi)如果超過1個(gè)key被修改,則發(fā)起快照保存save 300 10 #300秒內(nèi)容如超過10個(gè)key被修改,則發(fā)起快照保存save 60 100002. Append-only file(aof方式)配置 appendonly on 改為yes會(huì)在bin目錄下產(chǎn)生一個(gè).aof的文件關(guān)于aof的配置 appendonly yes //啟用aof 持久化方式# appendfsync always //收到寫命令就立即寫入磁盤,最慢,但是保證完全的持久化appendfsync everysec //每秒鐘寫入磁盤一次,在性能和持久化方面做了很好的折中# appendfsync no //完全依賴os,性能最好,持久化沒保證 6. 發(fā)布及訂閱消息 ----------------------需要開啟多個(gè)會(huì)話端口會(huì)話1:>subscribe tv1 //監(jiān)聽tv1頻道會(huì)話2:>subscribe tv1 tv2 //監(jiān)聽tv1和tv2頻道會(huì)話3: >publish tv1 消息 //向tv1頻道發(fā)送一個(gè)消息7. 使用虛擬內(nèi)存 -------------------------------在redis配置文件中設(shè)置vm-enabled yes #開啟vm功能vm-swap-file /tmp/redis.swap #交換出來的value保存的文件路徑vm-max-memory 1000000 #redis使用的最大內(nèi)存上限vm-page-size 32 #每個(gè)頁面的大小32字節(jié)vm-pages 134217728 #最多使用多少頁面vm-max-threads 4 #用于執(zhí)行value對(duì)象換入患處的工作線程數(shù)量Python使用Redis
import redis# host是redis主機(jī),需要redis服務(wù)端和客戶端都啟動(dòng) redis默認(rèn)端口是6379 r = redis.Redis(host='localhost', port=6379, decode_responses=True)# 字串操作 r.set('name', 'junxi') # key是"foo" value是"bar" 將鍵值對(duì)存入redis緩存 print(r['name']) print(r.get('name')) # 取出鍵name對(duì)應(yīng)的值 print(type(r.get('name')))# 如果鍵fruit不存在,那么輸出是True;如果鍵fruit已經(jīng)存在,輸出是None print(r.set('fruit', 'watermelon', nx=True)) # True--不存在print(r.setnx('fruit1', 'banana')) # fruit1不存在,輸出為True#設(shè)置過期時(shí)間 r.setex("fruit2", "orange", 5) time.sleep(5) print(r.get('fruit2')) # 5秒后,取值就從orange變成Noneprint(r.mget("fruit", "fruit1", "fruit2", "k1", "k2")) # 將目前redis緩存中的鍵對(duì)應(yīng)的值批量取出來讀者們?nèi)绻X得還可以就幫忙點(diǎn)個(gè)贊 蟹蟹
另外讀者福利,可直接點(diǎn)擊鏈接領(lǐng)取相關(guān)學(xué)習(xí)福利包:
石墨文檔?shimo.im是安全網(wǎng)站放心,繼續(xù)訪問就可以領(lǐng)取了哦
總結(jié)
以上是生活随笔為你收集整理的redis配置密码_Redis数据库概述的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python里的append怎么用_py
- 下一篇: python分支结构使用if保留字吗_关