数据库概述与常见数据库介绍

数据库技术
339
0
0
2022-10-15

前言

本栏目会从数据库概念开始到数据库的SQL优化持续更新(站在Java开发的角度,不站在数据库管理员(DBA)角度),本篇是第一篇《数据库常用概念》以开启我的数据库之旅,主要是讲述MySQL 8.0数据库,也是我常用的数据库之一,希望与大家一起坚持学习,数据库下载与安装详见:t.csdn.cn/H1vjv

一、数据库概述

1.数据库使用的原因

持久化(persistence):
把数据保存到可掉电式存储设备中以供之后使用。在企业级应用中,数据持久化意味着将内存中的数据保存到硬盘上加以“固化”,而持久化的实现过程大多通过各种关系数据库来完成
持久化的主要作用:将内存中的数据存储在关系型数据库中,也可以存储在磁盘文件、XML数据文件中
在这里插入图片描述

2.选择数据库的原因

  • 开放源代码,使用成本低
  • 性能卓越,服务稳定
  • 软件体积小,使用简单,并且易于维护
  • 历史悠久,社区用户非常活跃,遇到问题可以寻求帮助
  • 经过了时间的验证

    二、数据库与数据库管理系统

    1.数据库的相关概念

    1.1、DB:数据库(Database)
    存储数据的“仓库”,其本质是一个文件系统,保存了一系列有组织的数据
    1.2、DBMS:数据库管理系统(Database Management System)
    一种操纵和管理数据库的大型软件,用于建立、使用和维护数据库,对数据进行统一管理和控制。用户通过数据库管理系统访问数据库中表内的数据
    1.3、SQL:结构化查询语言(Structured Query Language)
    专门用来与数据库通信的语言

    2.数据库与数据库管理系统的关系

    数据库管理系统(DBMS)可以管理多个数据库,一般开发人员会针对每一个应用创建一个数据库。为保存应用中实体的数据,一般会在数据库创建多个表,以保存程序中实体用户的数据
    数据库管理系统、数据库与表的关系如图所示
    在这里插入图片描述

    3、常见数据库

    1.常见数据库管理系统排名

    目前常见的数据库管理软件有Oracle、MySQL、MS SQL Server、DB2、PostgreSQL、Access、Sybase、Informix。以下是DB-Engines Ranking对各数据库受欢迎程度进行调查后的统计结果,查看最新的数据库排名:db-engines.com/en/ranking
    在这里插入图片描述
    对应的折线图:db-engines.com/en/ranking_trend
    在这里插入图片描述

    2.常见的数据库介绍

    2.1、Oracle
  • 1979年,Oracle2诞生,它是第一个商用的RDBMS(关系型数据库管理系统)。随着Oracle软件的名气越来越大,公司也改名叫Oracle公司
  • 2007年,总计85亿美金受够BEA Systems
  • 2009年,总计74亿美金收购SUM。此前的2008年,SUN以10亿美金收购MySQL。意味着Oracle同时拥有了MySQL的管理权,至此Oracle在数据库领域中成为绝对的领导者
  • 2013年,甲骨文公司超越IBM,成为继Microsoft后全球第二大软件公司
  • 如今Oracle的年收入达到了400亿美金,足以证明商用(收费)数据库软件的价值
    2.2、SQL Server
    SQL Server是微软开发的大型商业数据库,诞生于1989年。C#、.net等语言常使用,与WinNT完全继承,也可以很好的与Microsoft BackOffice产品集成
    2.3、DB2
    IBM公司的收费的数据库产品,常在银行系统中使用
    2.4、PostgreSQL
    PostgreSQL的稳定性极强,最符合SQL标准,开放源码,具备商业级DBMS质量,PG对数据量大的文本以及SQL处理较快
    2.5、SyBase
    已经淡出历史舞台,提供了一个非常专业的数据建模工具PowerDesigner
    2.6、SQLite
    嵌入式的小型数据库,应用在手机端。零配置,SQLite3不用安装,不用配置,不用启动,关闭或者配置数据库实例。当系统崩溃后不用做任何恢复操作,在下次使用数据库的时候自动恢复
    2.7、informix
    IBM公司出品,取自Infomation和Unix的结合,它是第一个被移植到Linux上的商业数据库产品。仅运行于unix/linux平台,命令行操作。性能极高,支持集群,适应于安全性要求极高的系统,尤其是银行、证券系统的应用

    3.MySQL介绍

  • MySQL是一个开放源代码的关系型数据库管理系统,由瑞典MySQL AB(创始人Micheal Windenius)公司1995年开发,迅速成为开源数据库的No.1
  • 2008年被SUN收购(10亿美金),2009年SUN被Oracle收购,MariaDB应运而生(MySQL的创造者担心MySQL有闭源的风险,因此创建了MySQL的分支项目MariaDB)
  • MySQL 6.x版本之后分为社区版商业版
  • MySQL是一种关联数据库管理系统,将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性
  • MySQL是可以定制的,采用了GPL(GNU General Public License)协议,可以修改源码来开发自己的MySQL系统
  • MySQL支持大型的数据库,可以处理拥有上千万条记录的大型数据库
  • MySQL支持大型的数据库,支持5000万条记录的数据仓库,32位系统表文件最大可支持4GB,64位系统支持最大的表文件为8TB
  • MySQL使用标准的SQL数据语言形式
  • MySQL可以允许运行于多个系统上,并且支持多种语言。这些编程语言包括C、C++、Python、Java、Perl、PHP和Ruby等

    4.Oralce VS MySQL

    Oracle:更适合大型跨国企业的使用,因为他们对费用不敏感,但是对性能以及安全性有更高的要求
    MySQL:由于体积小、速度快、总体拥有成本低,可处理上千万条记录的大型数据库,尤其是开放源码这一特点,使得很多互联网公司、中小型网站选择了MySQL作为网站数据库