Linux 数据库开发 学习笔记

数据库介绍

什么是数据库?

数据库是结构化数据集合,支持高效存储、管理和检索,可以持久存储数据,提供安全、可靠、高效的数据访问机制

为什么需要数据库?

•数据持久化:程序重启后数据不丢失

•数据共享:多用户/应用可并发访问

•数据一致性:通过事务机制(ACID)保证数据完整性

•高效查询:通过索引、优化器加速数据检索

数据库的发展

数据库分类

主流关系型数据库对比

数据库 优势 缺点
MySQL • 开源免费,社区活跃 • 高并发读写优化(OLTP场景) • 易部署,轻量级 • 复杂查询性能较弱(如多表JOIN) • 功能扩展性有限(相比PostgreSQL)
PostgreSQL • 功能全面(支持JSON、GIS、全文检索等) • 高度可扩展(自定义数据类型、函数) • ACID兼容性强 • 默认配置下高并发性能略逊于MySQL • 内存消耗较高
Oracle • 企业级性能(高可用、分布式优化) • 强大的事务处理与锁机制 • 完善的商业支持与工具链 • 高昂成本(商业授权) • 学习曲线陡峭,管理复杂
SQL Server • 与Windows生态深度集成(.NET、Azure) • 图形化管理工具(SSMS)易用 • 内置BI工具(SSAS、SSRS) • 仅支持Windows/Linux(有限跨平台) • 社区版功能受限
SQLite • 零配置,嵌入式数据库(单文件) • 轻量级(库文件仅数MB) • 无服务端,适合本地存储 • 不支持高并发(写锁全局) • 无用户权限管理 • 数据量不宜过大,SQL执行效率相对较低
MongoDB(文档型) • 灵活模式(JSON文档结构) • 水平扩展(分片集群) • 丰富的查询语言(类SQL语法) • 支持多文档事务(4.0+) • 内存消耗较高 • 复杂关联查询性能弱于关系型数据库
Redis(键值型) • 内存存储,超高性能(10万+ QPS) • 支持多种数据结构(字符串、哈希、列表等) • 持久化(RDB/AOF)与高可用(哨兵/集群) • 数据规模受内存限制 • 无复杂查询能力(仅键查询) • 高并发写入可能丢数据(异步持久化)
Neo4j(图数据库) • 高效处理复杂关系(原生图存储) • 强大的图查询语言(Cypher) • ACID事务支持 • 扩展性受限(社区版单机) • 存储非图数据效率低

数据库安装

软件在线安装sudo apt-getinstallsqlite3(软件)libsqlite3-dev(函数库)

相关推荐
宝绿特塑业再生科技3 小时前
改性HDPE再生颗粒在户外家具挤出发泡板材中的色差控制与高品质价值重构
经验分享·科技·学习·生活·1024程序员节·户外家具
geovindu3 小时前
sql:SQL Pagination and Limiting Results using PorstgreSQL 18.0
大数据·数据仓库·sql·postgresql·数据库开发·数据库架构·1024程序员节
andrsted5 小时前
练题簿在线免费刷题:让整理过的资料,变成能反复练习的题库
学习·微信小程序·小程序·学习方法·刷题·1024程序员节
Alsn866 小时前
Windows 安装 Ollama 及本地模型部署
学习·1024程序员节
欣欣之王来了7 小时前
原始HTML插值:v-html指令的使用与安全风险
前端·学习·架构·项目·vue3教程
解决小子9 小时前
【虚幻引擎】【C++】【GAS框架】构建角色基类、属性集、数值钳制
c++·笔记·游戏引擎·虚幻·gas·能力系统
知识分享小能手9 小时前
C学习教程,从入门到精通,C语言学生信息管理系统 — 知识点详解(18)
c语言·学习·1024程序员节
破芽10 小时前
learn-claude-code-s05-s11-学习笔记
笔记·学习
pipixia2003310 小时前
C++ 面试高频:namespace 的 6 个知识点,从 using 到匿名命名空间
c语言·学习·算法·嵌入式·命名空间·c++面试·匿名命名空间
每天题库10 小时前
汽车维修工等级考试题库 理论实操核心考点一次梳理清
学习·安全·考试·题库·考证