前言
从今天开始, 健哥就带各位小伙伴学习数据库技术。数据库技术是Java开发中必不可少的一部分知识内容。也是非常重要的技术。本系列教程由浅入深, 全面讲解数据库体系。 非常适合零基础的小伙伴来学习。
------------------------------前戏已做完,精彩即开始----------------------------
全文大约【1900】字,不说废话,只讲可以让你学到技术、明白原理的纯干货!本文带有丰富案例及配图,让你更好的理解和运用文中的技术概念,并可以给你带来具有足够启迪的思考......
一. 什么是数据库
所谓数据库,通俗地讲,我们可以理解为是一种存放数据的仓库。数据库是“按照数据结构来组织、存储和管理数据的仓库。是一个长期存储在计算机内的、有组织的、有共享的、统一管理的数据集合。
为了更好地让大家理解,健哥给大家举个栗子: 如果鸡蛋, 蔬菜, 水果, 鱼, 肉等食品相当于数据, 那么电冰箱就相当于数据库, 因为里面可以存放这些鸡蛋, 蔬菜, 水果, 这些东西。
二. 数据库分类
- 网状结构数据库:美国通用电气公司IDS(Integrated Data Store),以节点形式存储和访问。
- 层次结构数据库:IBM公司IMS(Information Management System)定向有序的树状结构实现存储和访问。
- 关系结构数据库:Oracle、DB2、MySQL、SQL Server,以表格(Table)存储,多表间建立关联关系,通过分类、合并、连接、选取等运算实现访问。
- 非关系型数据库:ElastecSearch、MongoDB、Redis,多数使用哈希表,表中以键值(key-value)的方式实现特定的键和一个指针指向的特定数据。
三. 什么是关系型数据库
所谓关系型数据库就是以表格形式, 存储数据, 组织成的数据库。 有行, 有列。
1. 常见的关系型数据库
- Oracle:被认为是业界目前比较成功的关系型数据库管理系统。Oracle数据库可以运行在UNIX、Windows等主流操作系统平台,完全支持所有的工业标准,并获得最高级别的ISO标准安全性认证。健哥认为Oracle数据库非常好, 非常强大, 性能也很好, 但是收费太贵。所以现在互联网公司主要使用的是MySQL而不是Oracle。就像阿里早期大批量使用Oracle数据库, 后来当阿里数据量用户量逐渐增大后, Oracle成本太高。所以阿里集中大批量换成了使用MySQL数据库来替代Oracle。
- DB2:IBM公司的产品,DB2数据库系统采用多进程多线索体系结构,其功能足以满足大中公司的需要,并可灵活地服务于中小型电子商务解决方案。对于DB2数据库, 健哥见到的是在银行项目中使用的居多。
- SQL Server:Microsoft 公司推出的关系型数据库管理系统。具有使用方便可伸缩性好与相关软件集成程度高等优点。不过近些年SQL Server已经淡出我们的视线, 被MySQL替代了。
- SQLLite:应用在手机端的数据库。
2. MySQL数据库介绍
MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS(Relational Database Management System,关系数据库管理系统) 应用软件之一。
健哥认为MySQL是当今互联网业界最好的数据库之一, 它开源免费, 很多互联网公司都喜欢用它。
3. MySQL与Oracle对比
健哥认为一般在大多数互联网公司都会选择MySQL而非Oracle, 因为就单机版来看MySQL确实不如Oracle性能好。但是MySQL胜在免费, 对服务器硬件要求低, 便宜。所以有每年Oracle昂贵的使用费, 不如多买一些服务器做MySQL集群, 这样性价比更高。
MySQL优点:
- 性能好,服务稳定,很少出现服务器异常宕机;
- 开放源代码免费使用,使用成本低;
- 历史悠久,社区和用户非常活跃,遇到问题及时寻求帮助;
- 软件体积小,安装使用简单且易于维护,维护成本低;
- 提供多种API接口,支持多种开发语言,对流行的PHP,Java等语言有很好的支持
MySQL缺点:
- MySQL不支持热备份;
- 性能没有Oracle好 ;
- 安全性没有Oracle;
Oracle优点:
- 兼容性:Oracle产品采用标准SQL,并经过美国u构架标准技术所(NIST)测试,与IBM SQL/DS、DB2、INGRES、IDMS/R等兼容。
- 可移植性:Oracle的产品可运行于很宽范围的硬件与操作系统平台上。可以安装在多种 大、中、小型机上,可在多种操作系统下工作。
- 可联结性:Oracle能与多种通讯网络相连,支持各种协议。
- 高生产率:Oracle产品提供了多种开发工具,能极大地方使用户进行进一步的开发。
- 开放性:Oracle良好的兼容性、可移植性、可连接性和高生产率使Oracle RDBMS具有良好的开放性。
Oracle缺点:
- 对硬件要求很高;
- 价格比较昂贵;
- 管理维护麻烦一些;
- 操作比较复杂,需要技术含量高。
------------------------------正片已结束,来根事后烟----------------------------
四. 结语
健哥在这里对本文核心要点进行总结:
- 数据库 : 存放数据的仓库。
- 关系型数据库 : 就是以表格形式存放数据, 有行有列。
- 常用的关系型数据库有 : MySQL, Oracle, DB2等。