centos7.5創(chuàng)建postgresql索引很慢 pg數(shù)據(jù)庫和mysql數(shù)據(jù)庫區(qū)別?
pg數(shù)據(jù)庫和mysql數(shù)據(jù)庫區(qū)別?支持什么多種存儲引擎,存儲引擎選擇相對靈活自如,事實(shí)上一般都在用innodb。ddl裝在server端,ddl語句的事物性接受極差,很有可能會出現(xiàn)serve數(shù)據(jù)庫丟失
pg數(shù)據(jù)庫和mysql數(shù)據(jù)庫區(qū)別?
支持什么多種存儲引擎,存儲引擎選擇相對靈活自如,事實(shí)上一般都在用innodb。ddl裝在server端,ddl語句的事物性接受極差,很有可能會出現(xiàn)serve數(shù)據(jù)庫丟失的。pg的server穩(wěn)定性更好
2mysql數(shù)據(jù)存儲結(jié)構(gòu)為聚簇索引,實(shí)際主鍵去查詢效率較高,不過有很多局限性,諸如再插入不能順序再插入。不太適合超大數(shù)據(jù)非主鍵查詢,訪問二級索引不需要回表。pg區(qū)分堆表存儲數(shù)據(jù),能意見極大的數(shù)據(jù)量
3pg不支持磁盤分區(qū)表,按照繼承表的形式都沒有達(dá)到主分區(qū)表的目的,在分區(qū)較多成千上萬時,pg的繼承表效率極差
4mysql有間隙鎖,postgresql數(shù)據(jù)庫執(zhí)行delete操作后,表中的記錄只是被標(biāo)注為刪掉狀態(tài),根本不會能量空間,在以后的version或truncate操作中該部分的空間是不都能夠被委以重任,VACUUM作用是刪除那些早就標(biāo)示為刪出的數(shù)據(jù)并釋放者空間,vacuum不需要定期定時運(yùn)行,也很能量消耗IO
5pg支持的數(shù)據(jù)類型(如gis),結(jié)論函數(shù)允許一些,還支持面向?qū)ο髷?shù)據(jù)庫。有更多的第三方開源工具后期應(yīng)用設(shè)計和利用
6pg允許存儲過程和執(zhí)行計劃緩存,表連接和奇怪網(wǎng)上查詢能力更強(qiáng)。mysql優(yōu)化器,運(yùn)算符都較簡單啊,比較適合簡單點(diǎn)網(wǎng)站查詢你操作
7pg主從需要wal日志物理同步,mysql不使用binlog邏輯同步。物理同步可靠性更高,圖片文件夾性能更高。
8mysql僅接受循環(huán)嵌套循環(huán)表直接連接(8.0允許hash連接),pg支持什么nl,hash,mergejoin
9mysql適用應(yīng)用邏輯簡單的,輕數(shù)據(jù)存儲和換算的場景,pg更適合急切的數(shù)據(jù)分析和特殊應(yīng)用場景
能不能推薦一個類似SQlite的數(shù)據(jù)庫軟件?
嵌入式數(shù)據(jù)庫,如果不是軟件開發(fā)語言是java,可選項(xiàng)有hsqldb,apachederby,h2。集成顯卡很比較方便。h2的磁盤存儲模式要比其它兩個速度要快,能滿足需求。
其它語言數(shù)據(jù)庫,有firebird,oracleBerkeleydb,mysqlembedded,postgreSQLembedded