redis常用操作及語句

nosql系列之redis

? ?特點:

? ? ? ?1)并發(fā)寫入

? ? ? ?2)從海量數(shù)據(jù)查找某一條數(shù)據(jù)記錄

? ? ? ?3)高擴(kuò)展性和高可用性

? ?redis和mongodb的區(qū)別

? ? ? ?redis

? ? ? ? ? ?基于緩存释移,資格老,支持多種數(shù)據(jù)結(jié)構(gòu)吕粹,消耗內(nèi)存較多,支持?jǐn)?shù)萬QPS,支持持久化存儲

? ? ? ?memcache

? ? ? ? ? ?速度快绰更,不能備份,響應(yīng)速度快,支持十幾萬的QPS搏色,bug較少

? ? ? ?mongodb基于文件

? ? ? ? ? ?社區(qū)活躍善茎,查詢功能強(qiáng)大券册,更新快,支持索引文檔類數(shù)據(jù)庫垂涯,最接近關(guān)系式數(shù)據(jù)庫烁焙,結(jié)構(gòu)相對單一

? ?redis ? ? ? ?-- ? ?通過鍵值存儲數(shù)據(jù)

? ?安裝

? ?make

? ?make ? ?test ? ? ? ?-- 如果報錯,則安裝tcl

? ?make ? ?PERFIX=/usr/local/redis ? ?install

? ?cp ? ?/usr/src/redis-3.0.3/redis.conf ? ?/usr/local/redis

? ?./bin/redis-server ? ?./redis.conf ? ? ? ?-- 開啟redis服務(wù)

? ?vim ? ?redis.conf

? ?daemonize ? ?yes ? ? ? ?--放在后臺選項

? ?./bin/redis-cli ? ?-h ? ?localhost ? ?-p ? ?6379

? ?bin/下的文件

? ?redis-check-aof ? ?redis-check-dump ? ? ? ?-- 日志文件

? ?redis-benchmark ? ? ? ?-- 檢測工具

? ?./redis-benchmark ? ?-n ? ?100000 ? ?-c ? ?60

? ?string字符串類型

? ?keys ? ?* ? ? ? ?--查看所有鍵值

? ?set ? ?age ? ?19 ? ? ? ?--設(shè)置鍵值的數(shù)據(jù)

? ?get ? ?age ? ? ? ? ? ?--查看鍵值的數(shù)據(jù)

? ?keys ? ?age ? ? ? ?--查看鍵值本身

? ?setnx ? ?name1 ? ?zhangsan ? ? ? ?--防覆蓋新建鍵值

? ?setex ? ?name2 ? ?30 ? ?Janni ? ? ? ?--新建或修改臨時鍵值耕赘,有效時間30s

? ?ttl ? ?name2 ? ? ? ?--查看鍵值的有效期

? ?mset ? ?a1 ? ?111 ? ?a2 ? ?222 ? ?a3 ? ?333 ? ? ? ?--設(shè)置多個鍵值

? ?mget ? ?a1 ? ?a2 ? ?a3 ? ? ? ?--查看多個鍵值

? ?msetnx ? ?a3 ? ?444 ? ?a4 ? ?555 ? ? ? ?--創(chuàng)建多個防覆蓋機(jī)制鍵值

? ?setrange ? ?a3 ? ?2 ? ?lisi ? ? ? ?--替換骄蝇,從第二個字符開始

? ?getset ? ?a3 ? ?"xxx" ? ? ? ?--查看原值并修改

? ?getrange ? ?a3 ? ?0 ?5 ? ? ? ?--查看a3鍵值的0-5之間的字符

? ?incr ? ?c1 ? ? ? ?--鍵值依次增加1

? ?incrby ? ?c1 ? ?100 ? ? ? ?--鍵值依次增加100,值可自定義

? ?decr ? ?c1 ? ? ? ?--鍵值依次減少1

? ?decrby ? ?c1 ? ?100 ? ? ? ?--鍵值依次減少100操骡,值可自定義

? ?strlen ? ?b1 ? ? ? ?--查看鍵值的長度

? ?append ? ?b1 ? ?lisi ? ? ? ?--追加鍵值的數(shù)據(jù)

? ?del ? ?b1 ? ? ? ?--刪除鍵值

? ?hash類型

? ?hset ? ?hash1 ? ?name1 ? ?hanhan ? ? ? ?--創(chuàng)建第一組數(shù)據(jù)

? ? ? ? ? ? ? ? ? 鍵 ? ? ? ?字段 ? ? ? ? ? 鍵值

? ?hget ? ?hash1 ? ?name1 ? ? ? ?--查第一組的第一個字段

? ?hsetnx ? ?hash1 ? ?name1 ? ?Janni ? ? ? ?--防覆蓋創(chuàng)建

? ?hmset ? ?hash1 ? ?name1 ? ?name2 ? ? ? ?--創(chuàng)建多個字段

? ?hmget ? ?hash1 ? ?name1 ? ?name2 ? ? ? ?--查看多個字段

? ?hlen ? ?hash1 ? ? ? ? ? ?--查字段個數(shù)

? ?hgetall ? ?hash1 ? ? ? ?--查指定鍵中的字段和值

? ?hkeys ? ?hash1 ? ? ? ?--查指定鍵中的字段名稱

? ?hvals ? ?hash1 ? ? ? ?--查指定鍵中的數(shù)值

? ?hdel ? ?hash1 ? ?name3 ? ? ? ?--刪除指定鍵中的字段

? ?hincrby ? ?hash1 ? ?id1 ? ?5 ? ? ? ?--hash1鍵中的id1字段每次增加5

? ?list雙向列表

? ?1 ? ?2 ? ?3 ? ?4 ? ?5 ? ? ? ? ? ? ? ? ? 正數(shù)下標(biāo)

?-5 ? ?-4 ? ?-3 ? ?-2 ? ?-1 ? ? ? ? ? ? ?負(fù)數(shù)下標(biāo)

lpush ? ?list1 ? ?1 ? ?2 ? ?3 ? ?4 ? ? ? ?--創(chuàng)建隊列向左

rpush ? ?list1 ? ?one ? ?two ? ?three ? ? ? ?--創(chuàng)建隊列向右

lrange ? ?list1 ? ?0 ? ?-1 ? ? ? ? ? ?--查list1中所有的隊列

linsert ? ?list1 ? ?before ? ?two ? ?hi ? ? ? ?--在list1列表中的two前面插入hi隊列 ? ?(before | after)

lset ? ?list1 ? ?1 ? ?“six” ? ? ? ?--修改隊列中元素的值

lrem ? ?list1 ? ?-2 ? ?hi ? ? ? ?--刪除元素中重復(fù)的值九火,其中-2代表幾個 ,并且是倒序的

ltrim ? ?list1 ? ?0 ? ?3 ? ? ? ?--保留list1上以下標(biāo)為主的0-3的隊列

lpop ? ?list2 ? ? ? ? --刪左邊第一個

rpop ? ?list2 ? ? ? ?--刪右邊第一個

rpoplpush ? ?list1 ? ?list2 ? ? ? ?--把list1的最后一個元素放到list2中

llen ? ?list2 ? ?查有多少個隊列

lindex ? ?list2 ? ?1 ? ? ? ?--通過下標(biāo)查看元素值

? ?set集合

? ?交集 ? ? ? ?差集 ? ? ? ?并集

sadd ? ?set1 ? ?aa ? ?bb ? ?cc ? ? ? ?--添加set集合

smembers ? ?set1 ? ? ? ?--查看集合中所有的元素

srandmember ? ?set1 ? ? ? ?--隨機(jī)查看

spop ? ?set1 ? ? ? ?--隨機(jī)刪除

srem ? ?set1 ? ? ? ?--指定刪除

scard ? ?set1 ? ? ? ?--查看該集合有多少個元素

sismember ? ?set1 ? ?bb ? ? ? ?--查看bb是否屬于set1集合的元素

sdiff ? ?set1 ? ?set2 ? ? ? ?--查看set1和set2的差集

sdiffstore ? ?set3 ? ?set1 ? ?set2 ? ? ? ?--查看set1和set2的差集册招,并寫入到set3

sinter ? ?set1 ? ?set2 ? ? ? ?--查看set1和set2的交集

sinterstore ? ?set3 ? ?set1 ? ?set2 ? ? ? ?--查看set1和set2的交集岔激,并寫入到set3

sunion ? ?set1 ? ?set2 ? ? ? ?--查看set1和set2的并集

sunionstore ? ?set3 ? ?set1 ? ?set2 ? ? ? ?--查看set1和set2的交集,并寫入到set3

? ?zset有序集合 ? ?sorted ? ?set

zadd ? ?zset1 ? ?11 ? ?aa ? ?22 ? ?bb ? ?33 ? ?cc ? ? ? ?--創(chuàng)建有序集合

zrange ? ?zset1 ? ?0 ?-1 ? ?withscores ? ? ? --查看有序集合是掰,withscores參數(shù)是查看有序集合的分?jǐn)?shù) ? ?從小到大的順序

zrevrange ? ?zset1 ? ?0 ?-1 ? ?withscores ? ? ? ?--查看有序集合虑鼎,從大到小的順序

zrangebyscore ? ?zset1 ? ?10 ? ?20 ? ? ? ?--查有序集合zset1中分?jǐn)?shù)10-20之間的元素

zrem ? ?zset1 ? ?aa ? ? ? ?--刪除有序集合中指定的值

zincrby ? ?zset1 ? ?5 ? ?aa ? ? ? ?--有序集合zset1中aa的值依次增加5,如不存在键痛,則創(chuàng)建

zrank ? ?zset1 ? ?aa ? ? ? ?--通過元素名獲取下標(biāo)炫彩,從小到大的順序

zrevrange ? ?zset1 ? ?aa ? ? ? ?--通過元素名稱獲取下標(biāo),從大到小的順序

zcard ? ?zset1 ? ? ? ?--查看zset1中有幾個元素

zcount ? ?zset1 ? ?10 ?20 ? ?--查看zset1中10-20之間的有多少個元素

zremrangeburank ? ?zset1 ? ?1 ?2 ? ? ? ?--根據(jù)下標(biāo)刪除數(shù)據(jù)

zremrangebyscore ? ?zset1 ? ?10 ? ?22 ? ? ? ?--根據(jù)分?jǐn)?shù)刪除數(shù)據(jù)

zinterstore ? ?zset3 ? ?2 ? ?zset1 ? ?zset2 ? ? ? ?--取2個有序集合的交集絮短,并保存到zset3

zunionstore ? ?zset3 ? ?zset3 ? ?2 ? ?zset1 ? ?zset2 ? ? ? ?--取2個有序集合的并集江兢,并保存到zert3

? ?全局命令

dbsize ? ? ? ?--統(tǒng)計所有鍵值的數(shù)量

exists ? ?aa ? ? ? ?--查看某個鍵值是否存在

expire ? ? ? ?設(shè)置生效時間

rename ? ?d1 ? ?d2 ? ?--改鍵值的名稱,d1改為d2

type ? ?a1 ? ? ? ?--查a1鍵值的類型

info ? ? ? ?--查數(shù)據(jù)庫版本信息

select ? ?2 ? ? ? ?--選擇其它數(shù)據(jù)庫 ? ?范圍(0-15)

more ? ?d2 ? ?1 ? ? ? ?--移動鍵值到某數(shù)據(jù)庫

flushdb ? ? ? ?--清空當(dāng)前數(shù)據(jù)庫

flushdball ? ? ? ?清空所有數(shù)據(jù)庫

? ?redis應(yīng)用

啟用密碼:

? ?vim ? ?/usr/local/redis/redis.conf

? ?requirepass ? ?123456

關(guān)閉服務(wù):

? ?pkill ? ?redis

使用密碼登陸:

? ?/usr/local/redis/bin/redis-server ? ?/usr/local/redis/redis.conf ? ? ? ?開啟服務(wù)

? ?/usr/local/redis/bin/redis-cli ? ?-h ? localhost ? -p ? 6379 ? ? ? ?登陸redis

數(shù)據(jù)庫備份和還原

? ?備份:

? ?save ? ?保存到dump.rdb文件

? ?cp -p ?/usr/local/redis/dump.rdb ?/root ? ? ? ? ? ?把備份文件拷貝到/root下

? ?還原:

? ?cp -p /root/dump.rdb ?/usr/local/redis

? ?設(shè)置備份文件的路徑:

? ?vim ? ?redis.conf

? ?dir ? ?/usr/local/redis

設(shè)置主從

? ?cp ? ?-r ? ?redis ? ?redis-slave

? ?修改主配置文件的參數(shù)丁频,不要和主服務(wù)器的相同

? ?vim ? ?redis-slave/redis.conf

? ?pidfile ? ?/usr/local/redis-slave/redis.pid

? ?port ? ?6380

? ?dir ? ?/usr/local/redis-slave ? ? ? ?--指定備份的目錄

? ?slaveof ? ?127.0.0.1 ? ?6379 ? ? ? ?--主服務(wù)器的IP地址和端口

? ?masterath ? ?123456 ? ? ? ? ? ?--有密碼則開啟

原理:

(1)Slave服務(wù)器連接到Master服務(wù)器.

(2)Slave服務(wù)器發(fā)送SYCN命令.

(3)Master服務(wù)器備份數(shù)據(jù)庫到.rdb文件.

(4)Master服務(wù)器把.rdb文件傳輸給Slave服務(wù)器.

(5)Slave服務(wù)器把.rdb文件數(shù)據(jù)導(dǎo)入到數(shù)據(jù)庫中.

? ?開啟從服務(wù)器的redis進(jìn)程:

? ?/usr/local/redis-slave/bin/redis-server ? ?/usr/local/redis/redis.conf

? ?登陸redis:

? ?/usr/local/redis-slave/bin/redis-cli ? ?-h ? ?localhost ? -p ? ?6380 ? ?-a ? ?123456

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末杉允,一起剝皮案震驚了整個濱河市扔嵌,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌夺颤,老刑警劉巖痢缎,帶你破解...
    沈念sama閱讀 217,084評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異世澜,居然都是意外死亡独旷,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,623評論 3 392
  • 文/潘曉璐 我一進(jìn)店門寥裂,熙熙樓的掌柜王于貴愁眉苦臉地迎上來嵌洼,“玉大人,你說我怎么就攤上這事封恰÷檠” “怎么了?”我有些...
    開封第一講書人閱讀 163,450評論 0 353
  • 文/不壞的土叔 我叫張陵诺舔,是天一觀的道長鳖昌。 經(jīng)常有香客問我,道長低飒,這世上最難降的妖魔是什么许昨? 我笑而不...
    開封第一講書人閱讀 58,322評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮褥赊,結(jié)果婚禮上糕档,老公的妹妹穿的比我還像新娘。我一直安慰自己拌喉,他們只是感情好速那,可當(dāng)我...
    茶點故事閱讀 67,370評論 6 390
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著尿背,像睡著了一般端仰。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上残家,一...
    開封第一講書人閱讀 51,274評論 1 300
  • 那天榆俺,我揣著相機(jī)與錄音,去河邊找鬼坞淮。 笑死茴晋,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的回窘。 我是一名探鬼主播诺擅,決...
    沈念sama閱讀 40,126評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼啡直!你這毒婦竟也來了烁涌?” 一聲冷哼從身側(cè)響起苍碟,我...
    開封第一講書人閱讀 38,980評論 0 275
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎撮执,沒想到半個月后微峰,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,414評論 1 313
  • 正文 獨居荒郊野嶺守林人離奇死亡抒钱,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,599評論 3 334
  • 正文 我和宋清朗相戀三年蜓肆,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片谋币。...
    茶點故事閱讀 39,773評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡仗扬,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出蕾额,到底是詐尸還是另有隱情早芭,我是刑警寧澤,帶...
    沈念sama閱讀 35,470評論 5 344
  • 正文 年R本政府宣布诅蝶,位于F島的核電站退个,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏秤涩。R本人自食惡果不足惜帜乞,卻給世界環(huán)境...
    茶點故事閱讀 41,080評論 3 327
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望筐眷。 院中可真熱鬧,春花似錦习柠、人聲如沸匀谣。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,713評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽武翎。三九已至,卻和暖如春溶锭,著一層夾襖步出監(jiān)牢的瞬間宝恶,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,852評論 1 269
  • 我被黑心中介騙來泰國打工趴捅, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留垫毙,地道東北人。 一個月前我還...
    沈念sama閱讀 47,865評論 2 370
  • 正文 我出身青樓拱绑,卻偏偏與公主長得像综芥,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子猎拨,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,689評論 2 354

推薦閱讀更多精彩內(nèi)容