MySQL学习(1)---MySQL概述

什么是数据库

概述

数据库(Database)是长期存储在计算机内有组织、大量、共享的数据集合。它可以供各种用户共享,具有最小冗余度和较高的数据独立性。数据库管理系统DBMS(Database Management System)在数据库建立、使用和维护时对数据库进行统一控制,以保证数据的完整性和安全性,并在多用户同时使用数据库时进行并发控制,在发生故障后对数据库进行恢复。

分类

数据库分为关系型数据库和非关系型数据库

  • 关系型数据库(RDBMS:Relational Database Management System):这种类型的数据库是最古老的数据库类型,关系型数据库模型是把复杂的数据结构归结为简单的二元关系(即二维表格形式)。它以行(row)和列(column)的形式存储数据,以便于用户理解,存储的格式可以直观地反映实体间的关系。而sql就是关系型数据库查询语言。常见的关系型数据库MysqLsql Server、DB2、Oracle)等。
  • 非关系型数据库(非RDBMS/Nosql:Not Only sql):指的是分布式的、非关系型的、不保证遵循ACID原则的数据存储系统。它基于键值对存储数据,不需要经过sql层的解析,性能非常高。Nosql数据库如MongoDB、Redis、Memcache、HBase出于简化数据库结构、避免冗余、影响性能的表连接、摒弃复杂分布式的目的被设计。

sql

结构化查询语言(Structured Query Language)简称sql,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。

sql语言主要分为:

  • DQL(Data Query Language):数据查询语言,用于从表中取得数据。例如:select
  • DML(Data Manipulation Language):数据操作语言,用于对数据进行增加修改删除。例如:insert、udpate、delete
  • DDL(Data DeFinition Language):数据定义语言,用于在数据库中创建新表或修改删除表,为表加入索引等。例如create、alter、drop
  • TPL:事务处理语言,对事务进行处理。例如:begin transaction、commit、savepoint、rollback
  • DCL:数据控制语言,实现权限控制。例如:grant、revoke
  • ccl:指针控制语言,用于对一个或多个表单独行的操作。例如:declare cursor(申明游标)、fetch info(进入)、update where current(更新当前位置)

什么是MysqL

MysqL一个关系型数据库管理系统,由瑞典MysqL AB公司开发,目前属于Oracle旗下产品。MysqL软件采用了双授权政策,它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般网站软件的开发都选择 MysqL 作为网站数据库。

MysqL基本架构

MysqL的逻辑架构图如下:

mysql架构

MysqL的优势

  • 使用C和C++编写,并使用了多种编译器进行测试,保证了源代码的可移植性。

  • MysqL支持大型数据库支持5000万条记录的数据仓库,32位系统表文件最大可支持4GB,64位系统支持最大的表文件为8TB。

  • MysqL是可以定制的,采用了GPL(GNU General Public License)协议,你可以修改源码来开发自己的MysqL系统。

  • MysqL是一种关联数据库管理系统,它将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并调高了灵活性。

  • MysqL使用标准的sql数据语言形式。

  • MysqL可以允许运行在多个系统上,并且支持多种语言。这些编程语言包括C、C++、Python、Java、Perl、PHP和Ruby等

相关文章

MySQL 死锁 是指两个或多个事务互相等待对方持有的锁,从而导...
在MySQL中,InnoDB引擎通过Next-Key Locking技术来解决幻读问...
在数据库事务管理中,Undo Log 和 Redo Log 是两种关键日志,...
case when概述 sql语句中的case语句与高级语言中的switch语句...
其实很简单,只是为了忘记,做个记录,用的时候方便。 不管是...
1.进入服务,找到mysql服务,在属性里找到mysql的安装路径 2...