資料庫認識

2021-10-06 19:26:07 字數 4967 閱讀 5169

1、關係型資料:mysql(開源免費):表與表之間,欄位與字段有一定關聯性,是密不可分的

2、非關係型資料庫:redit、mongodb,與關係型不同,沒有嚴格的關聯性

速度對比:非關係型資料的速度較快,基於記憶體

字段限制:關係型資料必須要有值

儲存穩定性:關係型資料庫比較穩定,一般不會丟失資料。

比較:關係型資料庫中的字段與字段之間是有一定關係的,所以有些可以不用有value的字段,使用關係型資料庫,這個欄位要佔一定的空間,而非關係型資料庫不一樣

1、分析特點:速度快(基於記憶體),沒有字段要求,可能出現資料的丟失(重啟)

2、非關聯式資料庫的用處:將不經常使用的資料儲存起來,使用者在檢視的時候直接訪問資料庫讀取資料,當作快取資料庫使用。

效率非常快,是c語言開發的

1.是非關係型資料庫

2.key-value型資料庫

3.支援五種資料格式 : string、list、set、zset、hash

4.基於c語言開發

5.基於記憶體也可以持久化的資料庫

mv 包名 想要放到的目錄

tar -zxvf 包名 解壓

#編譯安裝

make

# 啟動服務

./src/redis-server

異常處理

cc: 未找到命令

yum install gcc -y

jemalloc/jemalloc.h 沒有那個檔案或目錄

make malloc=libc

[root@localhost ~]

# cd /usr/local/redis/src/

#開啟服務後,新開乙個視窗,遠端連線

[root@localhost src]

# ./redis-cli

#存值127.0.0.1:6379>

set name zhangsan

ok127.0.0.1:6379> get name

"zhangsan"

#修改值

127.0.0.1:6379>

set name lisi

ok127.0.0.1:6379> get name

"lisi"

#刪除127.0.0.1:6379> del name

(integer) 1

127.0.0.1:6379> get name

(nil)

127.0.0.1:6379>

#hset 存值

127.0.0.1:6379> hset user id 1 name jing age 18 address guizhou

(integer) 4

#獲取物件中的某乙個字段

127.0.0.1:6379> hget user id

"1"# hgetall 獲取hash欄位中所有的資料

127.0.0.1:6379> hgetall user

1)"id"

2)"1"

3)"name"

4)"jing"

5)"age"

6)"18"

7)"address"

8)"guizhou"

# 獲取字段所有的值

127.0.0.1:6379> hvals user

1)"1"

2)"jing"

3)"18"

4)"guizhou"

#獲取所有的字段

127.0.0.1:6379> hkeys user

1)"id"

2)"name"

3)"age"

4)"address"

#新增字段

127.0.0.1:6379> hset user love langqiu

(integer) 1

127.0.0.1:6379> hgetall user

1)"id"

2)"1"

3)"name"

4)"jing"

5)"age"

6)"18"

7)"address"

8)"guizhou"

9)"love"

10)"langqiu"

127.0.0.1:6379> hset user love zuqiu

(integer) 0

127.0.0.1:6379> hgetall user

1)"id"

2)"1"

3)"name"

4)"jing"

5)"age"

6)"18"

7)"address"

8)"guizhou"

9)"love"

10)"zuqiu"

# 根據key刪除資料

127.0.0.1:6379> del user

(integer) 1

127.0.0.1:6379> hkeys user

(empty list or set)

#檢視redis資料庫中所有的key

keys *

# 新增資料

127.0.0.1:6379> lpush userlist zhangsna lisi jingjing wangwu

(integer) 4

127.0.0.1:6379> lrange userlist 0 1

1)"wangwu"

2)"jingjing"

127.0.0.1:6379> lpush userlist lisi

(integer) 5

# 當中的值是可以重複的

127.0.0.1:6379> lrange userlist 0 3

1)"lisi"

2)"wangwu"

3)"jingjing"

4)"lisi"

# 查詢所有資料

127.0.0.1:6379> lrange userlist 0 -1

1)"lisi"

2)"wangwu"

3)"jingjing"

4)"lisi"

5)"zhangsna"

#新增資料(自動完成去重)

127.0.0.1:6379> sadd userset zhangsan lisi wanwu jingjing jingjing zhangsan

(integer) 4

127.0.0.1:6379> srandmember userset

"jingjing"

# 查詢指定條數

127.0.0.1:6379> srandmember userset 4

1)"zhangsan"

2)"wanwu"

3)"jingjing"

4)"lisi"

# 遍歷

127.0.0.1:6379> smembers userset

1)"zhangsan"

2)"jingjing"

3)"lisi"

4)"wanwu"

定義了一種排序規則:分數score

#新增資料

127.0.0.1:6379> zadd menulist 1 lisi 0.5 jigjing 1.25 jingjing 2.25 liang

(integer) 4

#遍歷資料

127.0.0.1:6379> zrange menulist 0 -1

1)"jigjing"

2)"lisi"

3)"jingjing"

4)"liang"

vim redis.config

1.任何ip位址都可以訪問

bind 0.0.0.0

2.加入密碼(36%)

requirepass 123456

#結束程序後,載入配置檔案

[root@localhost src]

# ./redis-server ../redis.conf

#檢視程序

[root@localhost redis]

# ps -ef | grep redis

root 17580 65779 0 04:14 pts/3 00:00:00 grep --color=auto redis

root 63434 1 0 6月01 ? 00:00:23 ./redis-server *:6379

# 結束程序

[root@localhost redis]

# kill -9 63434

[root@localhost redis]

# ps -ef | grep redis

root 19347 65779 0 04:16 pts/3 00:00:00 grep --color=auto redis

public

static

void

main

( string[

] args )

g> userlist = jedis.lrange(「userlist」, 0, -1);

system.out.println(userlist);

jedis.hset(「user」,「id」,「2」);

string hget = jedis.hget(「user」, 「id」);

system.out.println(hget);

//連線是否成功

// jedis.ping();

//關閉資源

jedis.close();

}

認識資料庫

資料庫 database 是用來對資料進行操作的工具。所謂的資料,是指在現實世界冗雜的資訊中,提取出的有效字段組合。隨著計算機的發展,對資料的操作也經歷傳統的手工記錄資料 檔案系統 資料庫的演變過程。根據處理資料量的大小,我們將資料庫分成大中小三類。目前廣泛使用的大型資料庫有ibm的db2和甲骨文的...

資料庫的認識

1.資料庫管理系統和資料庫區別 資料庫管理系統 簡稱dbms 是位於使用者與作業系統之間的一層資料庫管理軟體,它可以科學的組織和儲存資料 高效地獲取和維護資料。資料庫 簡稱db 則是長期儲存在計算機內 有組織的 可共享的大量資料庫集合。結構化查詢語言sql 包含四個部分 資料定義語言 ddl 資料操...

認識Oracle資料庫

oracle由 oracle例項 和 oracle資料庫 組成。共涉及到 五個 概念。oracle資料庫 用來存放資料的,在安裝的時候,就完成建立,之後的操作都用來操作此庫。oracle例項 sid oracle的例項,連線資料庫進行操作,通過例項完成,連線也通過例項連線。oracle的監聽服務 可...