最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

CentOs7 Redis6.0.6安裝

2021-05-06 14:07 作者:匯智知了堂  | 我要投稿

1、什么是redis

redis是一種nosql數(shù)據(jù)庫(kù),他的數(shù)據(jù)是保存在內(nèi)存中,同時(shí)redis可以定時(shí)把內(nèi)存數(shù)據(jù)同步到磁盤(pán),即可以將數(shù)據(jù)持久化,并且他比memcached支持更多的數(shù)據(jù)結(jié)構(gòu)(string,list列表[隊(duì)列和棧],set[集合],sorted set[有序集合] hash(hash表))

2、為什么要使用redis

當(dāng)我們做了一個(gè)項(xiàng)目,比方說(shuō)個(gè)人博客,我們把這個(gè)項(xiàng)目發(fā)布到自己的服務(wù)器,一般來(lái)說(shuō),我們做的這個(gè)項(xiàng)目沒(méi)有商用,訪問(wèn)量會(huì)很小,這個(gè)時(shí)候,我們不使用redis也可以,可以要訪問(wèn)量直接經(jīng)過(guò)mysql,我們都知道,mysql是在磁盤(pán)上面,讀取需要一點(diǎn)時(shí)間,訪問(wèn)量小的時(shí)候,這些時(shí)間我們可以忽略不及。 但是,當(dāng)我們做了一個(gè)大型的商用項(xiàng)目,例如淘寶,那么訪問(wèn)量就會(huì)成幾何數(shù)上升,特別是雙十一的時(shí)候,并發(fā)量更是達(dá)到頂峰,這個(gè)時(shí)候,如果我們還是用mysql,那么大量的訪問(wèn)會(huì)讓服務(wù)器處理速度非常的慢,甚至宕機(jī),所以這個(gè)時(shí)候我們就要使用redis redis是在內(nèi)存上面,我們知道內(nèi)存讀取數(shù)據(jù)非常的快,當(dāng)大量的訪問(wèn)量余姚訪問(wèn)某一個(gè)數(shù)據(jù)的時(shí)候,我們把這個(gè)數(shù)據(jù)存放在redis里面,那么這樣,我們的服務(wù)器就不會(huì)宕機(jī)。

3、CentOs7下安裝Redis

3.1、安裝wget下載工具

yum -y install wget

3.2、使用wget工具下載相應(yīng)版本的Redis:download.redis.io/relea

wget http://download.redis.io/releases/redis-5.0.5.tar.gz

3.3、這里也可以用下好的redis壓縮包

  • 檢查是否有編譯環(huán)境(更新或安裝)

yum install gcc-c++

解壓下載的Redis軟件,并移動(dòng)到/use/local下

tar -zxvf redis-5.0.5.tar.gz mv redis-5.0.5 /usr/local/

進(jìn)入Redis解壓文件夾編譯Redis源碼(注意沒(méi)有 gcc ,make以后會(huì)出錯(cuò),make完自愿 make install 測(cè)試 如果都是install 就沒(méi)問(wèn)題)

cd /usr/local/redis-5.0.5/ make

  • 注意.redis.conf 配置文件默認(rèn)在redis的根目錄

  • 啟動(dòng)redis,進(jìn)入redis的src目錄?java ./redis-server ../redis.conf會(huì) 這時(shí)候涉及到后臺(tái)啟動(dòng) 還是前臺(tái)啟動(dòng),也就是會(huì)不會(huì)出現(xiàn)redis 的經(jīng)典logo,只需要在redis.conf配置文件中更改,這邊建議修改redis.conf配置留到最后一起修改,我只是在這里給大家提議一下

# 修改配置文件可以改變改變啟動(dòng)方式 daemonize no\yes

查看Redis的進(jìn)程信息

ps -ef | grep ?redis

  • 如果啟動(dòng)了,會(huì)顯示如下:

  • [root@localhost src# ps -ef |grep redis

  • root 58043 1 0 14:47 ? 00:00:00 ./redis-server *:6379

  • root 58080 9737 0 14:47 pts/0 00:00:00 grep —color=auto redis

4、進(jìn)入redis

cd到redis的src目錄執(zhí)行如下操作?

# 本機(jī)可簡(jiǎn)寫(xiě)為 ./redis-cli?

上述情況 如果存入中文,中文回顯會(huì)亂碼?

./redis-cli --raw (這樣就不會(huì)亂碼)

5、Jedis介紹

Redis不僅是使用命令來(lái)操作,現(xiàn)在基本上主流的語(yǔ)言都有客戶(hù)端支持,比如java,C.C#、C++.php. Node.js. Go 等。 在官方網(wǎng)站里列一些Java的客戶(hù)端,有Jedis, Redisson、 Jredis、 JDBC-Redis、等其中官方推薦使用Jedis和 Redisson。在企業(yè)中用的最多的就是Jedis,下面我們就重點(diǎn)學(xué)習(xí)下Jedis。Jedis同樣也是托管在github上,地址:github.com/xetorthio/je

==此時(shí)就需要開(kāi)放我們CentOS系統(tǒng)的端口號(hào)!,重點(diǎn),不開(kāi)放6379端口 ping是通不了的 后臺(tái)想去通過(guò)Jedis操作redis 鏈接不上==

6、CentOS開(kāi)放端口

  • 1、運(yùn)行命令:firewall-cmd --get-active-zones

  • 2、執(zhí)行如下命令命令:firewall-cmd --zone=public --add-port=6379/tcp --permanent

  • 3、重啟防火墻,運(yùn)行命令:firewall-cmd --reload

  • 4、查看端口號(hào)是否開(kāi)啟,運(yùn)行命令:firewall-cmd --query-port=6379/tcp?做完以上操作 就會(huì)把CentOS的防火墻打開(kāi)6379的端口

7、Java連接Redis

導(dǎo)入jar包

  • jedis-2.9.0.jar

  • commons-pool2-2.6.2.jar 這里的jar包,網(wǎng)上都有

java連接測(cè)試

public class Testredis { ? ?

public static void main(String[] args) { ? ? ? ? ?

//建立連接 ? ? ? ?

Jedis jedis = new Jedis("ip地址",6379); ? ? ? ?System.out.println(jedis.ping()); ? ? ? ? ??

//關(guān)閉資源? ? ? ? ?

jedis.close(); ? ?

}?

}

單實(shí)例連接

//這里使用 的是jedis-2.9.0.jar public class TestRedis { ? ?

public static void main(String[] args) { ? ?

//建立連接 ? ?

Jedis jedis = new Jedis("ip地址",6379); ? ?

//獲取數(shù)據(jù) ? ?

String test = jedis.get("test"); ? ?

System.out.println("test = " + test); ? ?

//設(shè)置屬性 ? ?

jedis.set("test","hi,這是第一次設(shè)置的key值"); ? ?

//獲取數(shù)據(jù) ? ?

test = jedis.get("test"); ? ?

System.out.println("test = " + test); ? ?

//關(guān)閉資源 ? ?

jedis.close(); ? ?

}?

}

連接池連接

public class TestRedis01 { ? ? ? ?

public static void main(String[] args) { ? ? ? ?

//1 獲得連接池配置對(duì)象,設(shè)置配置項(xiàng) ? ? ? ?

JedisPoolConfig config = new JedisPoolConfig(); ? ? ? ?

// 1.1 最大連接數(shù) ? ? ? ?

config.setMaxTotal(30); ? ? ? ?

//1.2 最大空閑連接數(shù) ? ? ? ?

config.setMaxIdle(10); ? ? ? ?

//獲得連接池 ? ? ? ?

JedisPool jedisPool = new JedisPool(config,"ip地址",6379); ? ? ? ?

Jedis jedis=null; ? ? ? ?

//3.獲得核心對(duì)象 ? ? ? ?

jedis = jedisPool.getResource(); ? ? ? ?

//4.設(shè)置數(shù)據(jù) ? ? ? ?

jedis.set("name","這是連接池設(shè)置的key值"); ? ? ? ?

//5.獲得數(shù)據(jù) ? ? ? ?

String name = jedis.get("name"); ? ? ? ?

System.out.println("name = " + name); ? ? ? ?

//6.關(guān)閉資源 ? ? ? ?

jedis.close(); ? ?

}?

}


測(cè)試連接

安裝可能會(huì)遇到的坑

如果是啟動(dòng)失敗,檢查下redis的conf配置文件

因?yàn)閞edis默認(rèn)bind 127.0.0.1,所以你會(huì)理所當(dāng)然地想到去redis的配置文件redis.conf將“bind127.0.0.1”注釋掉。認(rèn)為這樣就可以順利訪問(wèn)了,其實(shí)還真不能解決,我們?nèi)匀粫?huì)得到異常,異常的信息給我們提示了很多方法,其中有一個(gè)方法就是讓我們將protected mode關(guān)閉掉。原來(lái)是redis默認(rèn)開(kāi)啟了protected mode,保證只有主機(jī)才能訪問(wèn)到。所以正確解決jedis conneciton refused的解決方案如下: 首先關(guān)掉redis-server,打開(kāi)redis的配置文件redis.conf,將bind 127.0.0.1注釋掉。 這里別注釋錯(cuò)了 因?yàn)榕渲梦募路臅r(shí)候會(huì)有個(gè)已經(jīng)注釋了的bind 127.0.0.1,不要理,繼續(xù)往下翻就會(huì)出現(xiàn)正主,果斷注釋掉。 找到配置文件中protected-mode,默認(rèn)protected mode yes,需要將其改為protected mode no 此時(shí)在重新啟動(dòng)redis。用在運(yùn)行java文件 就會(huì)發(fā)現(xiàn) 可以獲取到redis的key了。

這里如果redis那邊正確的配置了,那么打印的System.out.println(jedis.ping());會(huì)打印PONG也就代表沒(méi)問(wèn)題了,之所以寫(xiě)這些 并不是安裝redis會(huì)有問(wèn)題,而是配置redis出問(wèn)題會(huì)導(dǎo)致 java鏈接不上redis,網(wǎng)上很多教程是都不是使用的默認(rèn)的防火墻,這里我使用的是默認(rèn)的防火墻添加6379端口。

end~~

記得點(diǎn)贊+關(guān)注哦!


CentOs7 Redis6.0.6安裝的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
团风县| 富阳市| 阳山县| 定安县| 青铜峡市| 融水| 镇原县| 尼木县| 益阳市| 平利县| 内江市| 鄱阳县| 灵寿县| 柏乡县| 晋州市| 西乌| 南雄市| 郸城县| 揭东县| 长寿区| 蚌埠市| 庆城县| 西青区| 深州市| 会宁县| 永州市| 淄博市| 陇南市| 民勤县| 南木林县| 德清县| 堆龙德庆县| 循化| 曲水县| 海原县| 台北县| 牡丹江市| 苍溪县| 柯坪县| 化德县| 习水县|