文章目录
前言
数据是it行业不可或缺的一个重要组成 数据库将许许多多的数据集合成一个仓库
一、数据和数据库的概念
数据
描述事物的符号标记
包括数字 文字 图形 图像 声音 档案记录等
以一个统一的格式进行存储
表
将不同的记录组织在一起
用来存储具体数据
数据库
表的集合,是存储数据的仓库
以一定的组织方式存储的相互相关的数据集合
数据库的系统和管理系统
数据库系统是一个人机系统 有硬件 os 数据库 DBMS 应用软件和数据库用户组成
用户可以通过DBMS或者应用程序
管理系统(DBMS)是实现对数据库资源有效组织 管理和存储的系统软件
功能有 数据库的建立 维护 数据定义功能 数据操控功能 数据库的运行管理功能 通信功能
二、数据库的分类
1 关系型数据库
1 关系型数据库是基于关系模型的数据库系统
2 关系模型的数据结构使用简单易懂的二维数据表
3 关系模型可用简单的“实体-关系” (E-R)图来表示
4 E-R图中包含了实体(数据对象),关系和属性三个要素
实体
也称为实例 区别于其他对象的事件或事物 比如游戏账号 游戏玩家
属性
实体所具有的某一个特性,一个实体可以有多个属性 比如游戏账户实体都有账号 角色名 充值记录等属性
联系
实体之间的对应关系称为联系 也成为关系
游戏玩家和游戏账号之间存在”角色名“的关系
组成
所有实体机实体之间联系的集合构成一个关系型数据库
存储类型
存储的往往是字符、字符串、数值、布尔值等
代表有:Mysql (Oracle公司) 、SQL server (微软) 、access (微软公司office产品)"oracle、DB2 (IBM公司) 、 sybase (sybase)等等
2.非关系数据库
非关系数据库也称为nosql
存储数据不以关系模型为依据 不需要固定的表格式
非关系型数据库的优点
1 可以进行高并发读写
2 对海量数据高效率存储于访问
3数据库有高拓展性与高可用性
常见的代表的有Redis mongoDB等
非关系型数据可以存储海量数据 给与大数据进行分析 筛选出有价值的数据部分
存储类型
存储的往往是图片、视频、语音等
代表有:MongoDB 、 Redis (内存数据库/缓存数据库) K-V键值对、与之类似的Mcmcache K-V键值对
readis和mcmcache区别
二者相同的是都可以存储高热数据 (在内存中告诉运行 )
不同点 readis可以做持久化保存 ,可以存储对象
三 数据库发展史
第一代数据库
1自20世纪60年代起,第一代数据库系统问世
2 是层次模型与网状模型的数据库系统
3为统一管理和共享数据提供了有力的支撑
第二代数据库
20世纪70年代初,第二代数据库——关系数据库开始出现
20世纪80年代初,IBM公司的关系数据库系统DB2问世,开始逐步取代层次与网状模型的数据库,成为行业主流
到目前为止,关系数据库系统仍占领数据库应用的主要地位
第三代数据库
自20世纪80年代开始,适应不同领域的新型数据库系统不断涌现
面向对象的数据库系统,实用性强、适应面广
20世纪90年代后期,形成了多种数据库系统共同支撑应用的局面
一些新的元素被添加进主流数据库系统中,例如:Oracle支持的“关系-对象"数据库模型
目前主流使用
目前在使用的是关系型数据库+非关系型数据库 结合2者的各自优势 比如在高并发时,nosql可以对sql进行相应的减压。
四 主流的产品
1 sql server
由微软开发 在windows系统运行 面向个人 简单 易用
2 Oracle
由甲骨文开发 面向所有主流平台 安全 完善 操作复杂 是一个大型的数据库
3 DB2
由IBM开发 面向主流平台 也是一个大型数据库 安全 完善 多应用于安全性高的场景。
4 mysql
原来是sun公司开发 后被Oracle收购 特点是开源 免费 功能强大
五 Mysql数据库
mysql是oracle旗下的产品 是一款深受欢迎的开源关系型数据库
遵守GPL协议,可以免费使用与修改
特点有
1 性能卓越 服务稳定
2 开源 无版权限制 成本低
3 多线程 多用户
4 基于C\S(客户端/服务端)架构
5 安全可靠
商业版和社区版的区别
简单来说,商业版由于是mysql AB公司负责开发与维护 属于闭源版 需要付费使用
社区版是由世界各地的mysql开发者 爱好者一起开发与维护,可以免费使用
区别在于 商业版不遵守GPL 但是在更新和开发时测试环节会更加严格 会比社区版更稳定且由7*24小时的服务 但是是收费的
社区版不收费 可以免费使用 但是没有商业版稳定 维护是靠社区来维护
产品的阵营
第一阵营:5.0-5.1阵营,可说是早期产品的延续
第二阵营:5.4-5.7阵营,整合了MySQL AB公司、社区和第三方公司开发的存储引擎,从而提高性能
第三阵营:6.0-7.1阵营,就是MySQL Cluster版本,为适应新时代对数据库的集群需求而开发
下载网址
- http://www.dev.mysql.com/downloads