初步了解数据库
1|0数据库简介
- 数据库,简而言之就是电子化的文件柜,存储电子文件的地方,用户可以对文件中的数据进行增删改查等操作
- 所谓“数据库”系以一定方式储存在一起、能予多个用户共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合。
- https://db-engines.com/en/ranking(数据库排行榜)
2|0数据库管理
2|1非关系型数据库(No SQL:Not only SQL)
- 非关系型数据库的特点
- 不是否定关系型数据库,而是作为补充,现在也有部分替代的趋势
- 关注高性能,高并发,灵活性,忽略和上述无关的功能。
- 现在也在提升安全性和使用功能。
- 典型产品:Redis(持久化缓存,两个半天)、MongoDB(最接近关系型数据 的NoSQL)、Memcached。
- 管理不适用SQL管理,而是用一些特殊的 API 或 数据接口。
- NoSQL的分类、特点、典型产品
- 键值(KV)存储:Memcached、Redis
- 列存储(column-oriented):HBASE(新浪,360)、Cassandra(200台服务器集群)
- 文档数据库(document-oriented):MongoDB(最接近关系型数据库的NoSQL)
- 图形存储(Graph):Neo4j
2|2关系型数据库
- 特点
- 二维表
- 典型产品 Oracle传统企业,MySQL是互联网企业
- 数据存取是通过SQL(结构化查询语句)
- 最大特点,数据安全性方面强(ACID)
3|0数据库相关产品
3|1Oracle
- Oracle数据库版本介绍:7--8i--9i--10g—11g--12c
- 市场份额第一,趋势递减
- 市场空间,传统企业
- 传统企业也在互联网化
3|2MYSQL
- MySQL数据库版本介绍:5.0--5.1--5.5--5.6--5.7--8.0
- 市场应用于中、大型互联网公司
- 市场空间:互联网领域第一
- 同源产品:MariaDB、perconaDB
- 发展趋势明显
3|3其他公司产品
SQL Server(微软)
- 微软和sysbase合作开发的产品,后来自己开发,windows平台;3,4线小公司,传统行业在用。
DB2(IBM)
- 市场占有量小,目前只有:国有银行(人行、中国银行、工商银行等)、中国移动应用。
- 注:广泛应用在大型互联网公司的数据库:PostgreSQL、MongoDB、Redis
3|4MySQL
发展史
- 1979年,报表工具Unireg出现。
- 1985 年,以瑞典David Axmark 为首,成立了一家公司(AB前身),IASM引擎出现。
- 1990年,提供SQL支持。
- 1999-2000年,MySQL AB公司成立,并公布源码,开源化。
- 2000年4月BDB引擎出现,支持事务。
- 2008年1月16日,Sun(太阳微系统)正式收购MySQL。
- 2009年4月20日,甲骨文公司宣布以每股9.50美元,74亿美元的总额收购Sun电脑公司,MySQL 转入Oracle 门下。
- 2013年6月18日,甲骨文公司修改MySQL授权协议,移除了GPL。但随后有消息称这是一个bug。
特点
- 开源
- 社区版免费
- 简单
- 方便可靠
- 稳定
- 安全
- 社区活跃
mysql产品线的介绍
-
3.26--5.2版本
正宗后代;Centos5、6中默认有5.1版本;Centos7中默认是MariaDB
-
5.4--5.7 ,8.0版本
借鉴社区好的贡献,进一步开发的版本;主流版本:5.5 5.6 5.7 -
MySQL Cluster 6.0 版本&更高
类似于Oracle RAC,硬件要求高;一般各大网站没有人用。
-
mysql产品线(派生产品)
派生版本有Drizzle、MariaDB、Percona Server及OurDelta等。
附录一:
企业生产场景选择MySQL数据库建议:
1)稳定版:选择开源的社区版的稳定版GA版本
2)产品线:可以选择5.1或5.5 互联网公司主流5.5,其次是5.1和5.6
3)选择MySQL数据库GA版发布后6个月以上的GA版本。
4)要选择前后几个月没有大的BUG修复的版本,而不是大量修复BUG的集中版本
5)最好向后较长时间没有更新发布的版本
6)要考虑开发人员开发程序使用的版本是否兼容你选的版本
7)作为内部开发人员开发测试数据库环境,跑大概3-6个月的事件
8)优先企业非核心业务采用新版本的数据库GA版本软件
9)向DBA高手请教,或者在及技术氛围好的群里和大家一起交流,使用真正的高手们用过的好用的GA版本产品
10)若是没有重要的功能BUG或性能瓶颈,则可以开始考虑作为任何任务数据服务的后端数据库软件
附录二:
什么是Oracle RAC?
RAC是real application clusters的缩写,译为“实时应用集群”, 是Oracle新版数据库中采用的一项新技术,是高可用性的一种,也是Oracle数据库支持网格计算环境的核心技术。
Oracle RAC主要支持Oracle9i、10g、11g,12C版本,可以支持24 x 7 有效的数据库应用系统,在低成本服务器上构建高可用性数据库系统,并且自由部署应用,无需修改代码。
在Oracle RAC环境下,Oracle集成提供了集群软件和存储管理软件,为用户降低了应用成本。当应用规模需要扩充时,用户可以按需扩展系统,以保证系统的性能。
__EOF__

本文链接:https://www.cnblogs.com/chenhao0809/p/15889361.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理