数据库及MySQL概述

#什么是数据

用来描述事物的符号记录。可以是数字、文字、图形等,有多种形式,经过数字化之后存入计算机

#什么是数据库

数据库(Database)就是一个用来存放数据库的仓库,是按照一定的数据结构来组织、存储的

#什么是数据库管理系统

是用于管理数据库的软件

#数据库服务器、数据库管理系统、数据库、表、记录之间的关系

#数据库服务器相当于一台计算机,数据库管理系统相当于计算机里的一个软件,数据库相当于一个文件夹,表相当于文件夹中的文件,记录相当于文件中的内容

#数据库的种类

  早期:分为层次式数据库、网络式数据库、关系型数据库

  现今:分为关系型数据库和非关系型数据库

#关系型数据库介绍

  1.类似于excel表格

  2.关系型数据库使用结构化语言查询,sql语句l来对数据进行存储

  3.代表作:mysql和Oracle

 #关系型产品

  1.Oracle

  2.MySQL

  3.mariaDB
    是MySQL的一个分支,名称来自MySQL创始人Michael Widenius的女儿Maria的名字

  4.SQL server
    微软公司开发的大型关系型数据库系统, 只能在window系统下运行
  
5.Access数据库     入门级小型桌面数据库   6.其他:DB2等

#非关系型数据库介绍

  非关系型数据库也称为NoSQL数据库(Not Only SQL)

  产生的背景:为了解决web2.0时代高并发,高吞吐量的需求,产生了非关系型数据库

  扩展:web2.0:指的是以用户为主体,上传文件发布博文等

#种类

  1.键值(key-value)存储数据库
    典型产品:memcached、redis
  
2.列存储(column-oriented)数据库     典型产品:Cassandra,HBase
  
3.面向文档(Document-oriented)数据库     典型产品:MongoDB、CouchDB
  
4.图形(graph)数据库

#常用非关系型数据库产品

  1.Memcached
    是一个开源的、支持高性能的分布式内存缓存系统
  
2.redis     基于key-value(键值)型的存储
  
3.MongoDB     是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统

#MySQL概述

 MySQL 是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,目前属于 Oracle 公司

#MySQL特点

  1.安装简单

  2.历史悠久,社区及用户活跃

  3.支持多种操作系统

  4.性能卓越,服务稳定

  5.支持多种存储引擎

#MySQL分类

  MySQL采用双授权政策,分为社区版和商业版,然后又分为四个小版本:Alpha版、Beta版、RC版和GA版本

#MySQL商业版和社区版区别

  1.商业版比社区版稳定

  2.商业版有技术支持等服务,社区版只能靠社区提供

#MySQL版本

#如:mysql-5.7.29.tar.gz

#第一个数字5:主版本号

#第二数字7:发行级别,与主版本组合构成发行序列号

#第三个数字29:发行系列的版本号

#查看版本

mysql> select version();
+-----------+
| version() |
+-----------+
| 5.7.29    |
+-----------+
1 row in set (0.00 sec)

#SQL语言介绍

SQL,英文全称structured query language,中文意思为结构化语言查询,是一种对关系型数据库中的数据进行定义和操作的语言方法

#SQL的分类

一:数据查询语言(DQL)

 DQL全称data query language,称为数据检索语句,作用是从表中获得数据

#例子:查看用户

mysql> select user,host from mysql.user;
+---------------+-----------------------+
| user          | host                  |
+---------------+-----------------------+
| root          | localhost                     |
| test2         | 1.1.1.%               |
| test          | localhost             |
+---------------+-----------------------+
4 rows in set (0.00 sec)

二:数据操纵语言(DML)

  DML全称data Manipulation language,其语句包括insert,update,delete,分别用于添加、修改和删除表中数据

#例子:删除用户

mysql> delete from mysql.user where user='test';
Query OK, 1 row affected (0.02 sec)

三:事务处理语言(TPL)

  语句能够确保被DML语句影响的表的所有行及时得以更新

四:数据控制语言(DCL)

  DCL全称data control language,其语句通过grant或revoke获得许可

五:数据定义语言(DDL)

  DDL全称data definition language,其语句包括create和drop,在数据库中创建和删除库表

六:指针控制语言(CCL)

  CCL全称cursor  control language,语句像declare cursor,fetch into和update where current用于对一个或多个表单独行的操作

猜你喜欢

转载自www.cnblogs.com/guoke-boy/p/12392398.html