
三者都是關(guān)系型數(shù)據(jù)庫H2、SQLite 嵌入式MariaDB 服務(wù)端數(shù)據(jù)庫特性SQLiteH2 DatabaseMariaDB (MySQL 分支)部署模式嵌入式單文件數(shù)據(jù)庫無獨立進程嵌入式 / 服務(wù)端兩種模式獨立服務(wù)進程C/S 架構(gòu)需要安裝進程無進程直接讀寫磁盤文件可內(nèi)嵌 JVM 進程內(nèi) / 獨立 Server 進程獨立后臺服務(wù)端口 3306依賴無系統(tǒng)庫Java 項目依賴 jar 包需要安裝服務(wù)、配置賬號密碼并發(fā)寫弱文件鎖多進程寫性能差內(nèi)嵌模式并發(fā)一般Server 模式較好支持高并發(fā)讀寫行鎖內(nèi)存模式支持:memory:內(nèi)存庫支持內(nèi)存模式j(luò)dbc:h2:mem:xxx不支持純內(nèi)存可配置內(nèi)存表JDBC 連接示例jdbc:sqlite:./test.dbjdbc:h2:file:./data/test;DB_CLOSE_DELAY-1jdbc:mariadb://127.0.0.1:3306/db適用場景本地小工具、移動端、原型、單進程程序SpringBoot 開發(fā)測試單元測試演示 demo正式生產(chǎn)環(huán)境多用戶高并發(fā)業(yè)務(wù)數(shù)據(jù)存儲單個.db文件拷貝即遷移文件存儲內(nèi)存模式重啟丟失數(shù)據(jù)磁盤數(shù)據(jù)目錄不能直接拷貝文件遷移SQL 兼容性大部分標(biāo)準(zhǔn) SQL部分函數(shù)差異接近 MySQL可以兼容 MySQL 模式完整 MySQL 語法函數(shù)豐富集群主從?不支持?不支持?主從復(fù)制、集群、分庫分表