資料庫選型、Oracle 、Mysql、Redis、MSSQL、Access
阿新 • • 發佈:2021-08-10
Redis: 分散式快取,用來存session, 頁面許可權,系統引數快取等。速度快,適合做快取。
mongodb: 通過欄位冗餘,減少跨表查詢,資料可支援橫向發展,不支援事務,對資料效能要求高,對資料安全性要求不高。
Oracle: 支援事務 資料安全性高 。Oracle不能存陣列,只能存字串,mongodb卻可以存陣列,但是查詢會比較麻煩。
相同點: 都是關係型資料庫管理系統
都是目前流行的資料庫
不同點:oracle是重量級型資料庫,收費,對oracle資料庫有任何的服務,支援大併發,大訪問量,是oltp(on-line transaction procession聯機事務處理系統)最好的工具,閉源
mysql是輕量型資料庫,免費,沒有服務恢復資料 開源,
o代表了oracle,m代表了mysql
1.單引號的處理】
m可以用雙引號包起字串,o只能用單引號包起字串,在插入和更改字串的必須做單引號的替換,把所有出現一個單引號替換成兩個單引號
2.自動增長的資料型別處理】
mysql是一個提供自增,oracle不支援自增,需要建立一個自動增長的序列號,來完成
3.sql語句的擴充套件和靈活性】(分頁,主鍵的自增,單引號)
m對sql語句有很多非常實用方便的擴充套件,比如limit inset可以一次插入多行資料,select某些管理資料可以不加from。o在這一方面比較穩重傳統一些,嚴格
4.事務提交的方式】
o預設不自動提交,需要使用者手動提交,支援事務
m預設自定提交,不支援事務
5.欄位
m的非空欄位有空的內容,o裡定義了非空欄位就不容許有空的內容,按MYSQL的NOT NULL來定義Oracle是is null
6.記憶體】
o佔用記憶體空間大m佔有小。
7.執行緒】
m是單程序多執行緒,o是多程序(在Windows下也是在單程序),Windows下只能使用一個使用者,或者進行不同使用者之間的切換,Linux是對多使用者或者相同使用者可以同時連線作業系統,
Redis:(非關係型資料庫)
是一個基於記憶體高效能的key-value資料庫
資料型別:string字串,hash雜湊,list列表。zset有序集合,set集合
優點: 速度快,因為資料存在記憶體
支援豐富的資料型別
支援事務,操作都是原子性
豐富的特性:可用於快取,訊息,
持久化
SpringBoot、SpringCloud、SpringMVC、Spring、Mybatis、MySQL、Redis、Oracle