MYSQL----(2) 数据库基础知识
数据库
1 定义
数据库,可以简单的解释为:高效的存储和处理数据的介质(主要分为磁盘和内存两种)。
每个数据库都有一个或多个不同的API用于创建,访问,管理,搜索和复制所保存的数据。我们也可以将数据存储在文件中,但是在文件中读写数据速度相对较慢,所以,现在我们使用关系型数据库管理系统(RDBMS)来存储和管理的大数据量。所谓的关系型数据库,是建立在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据。
RDBMS即关系数据库管理系统(Relational Database Management System)的特点:
- 1.数据以表格的形式出现
- 2.每行为各种记录名称
- 3.每列为记录名称所对应的数据域
- 4.许多的行和列组成一张表单
- 5.若干的表单组成database
2 分类
根据数据库存储介质的不同,可以将其分为两类,即:关系型数据库(SQL)和非关系型数据库(NoSQL,Not Only SQL)。
3 举例
关系型数据库:
- 大型:Oracle、DB2 等;
- 中型:SQL Server、MySQL 等;
- 小型:Access 等。
非关系型数据库:
- Memcached、MongoDB 和 Redis 等。
4 区别
关系型数据库:
- 安全,其将数据保存到磁盘之中,基本不可能出现丢失数据的情况;
- 比较浪费空间,因为其用二维表的形式存储数据。
非关系型数据库:
- 存储数据的效率比较高;
- 不是特别安全,突然断电时会导致数据丢失。
5 关系型数据库
定义
关系型数据库,是一种建立在关系模型(数学模型)上的数据库。
至于关系模型,则是一种所谓建立在关系上的模型,其包含三个方面,分别为:
- 数据结构:数据存储的形式,二维表(行和列);
- 操作指令集合:所有的 SQL 语句;
- 完整性约束:表内数据约束(字段与字段)和表与表之间的约束(外键)。
设计
- 数据库:从需要存储的数据需求中分析,如果是一类数据(实体),则应该设计成二维表;
- 二维表:由表头(字段名,用来规定数据的名称)和数据(实际存储的内容)部分组成。
二维表示例:
ID | EEROR_CODE | DESCRIPTION |
---|---|---|
1 | US0001 | 此用户未注册 |
2 | OR0001 | 订单生成失败 |
3 | SY0001 | 系统未知异常 |
在此处,如果表中对应的某个字段值为空,但是系统依然会为其分配存储空间,这也就是关系型数据库比较浪费空间的原因啦!
关键字说明
- DB:Database,数据库;
- DBMS:Database Management System,数据库管理系统;
- DBS:Database System = DBMS + DB,数据库系统;
- DBA:Database Administrator,数据库管理员。
- 行\记录:
row\record
,本质都是指表中的一行(一条记录),行是从结构角度出发,记录则是从数据角度出发。 - 列\字段:
column\field
,本质都是指表中的一列(一个字段),列是从结构角度出发,字段则是从数据角度出发。
SQL
SQL:Structured Query Language,结构化查询语言(数据以查询为主,99% 都是在进行查询操作)。
SQL 主要分为三种:
- DDL:Data Definition Language,数据定义语言,用来维护存储数据的结构(数据库、表),代表指令为
create
、drop
和alter
等。 - DML:Data Manipulation Language,数据操作语言,用来对数据进行操作(表中的内容)代表指令为
insert
、delete
和update
等,不过在 DML 内部又单独进行了一个分类,即 DQL(Data Query Language),数据查询语言,代表指令为select
. - DCL:Data Control Language,数据控制语言,主要是负责(用户)权限管理,代表指令为
grant
和revoke
等。
SQL 是关系型数据库的操作指令,是一种约束,但不强制,类似于 W3C,因此这意味着:不同的数据库产品(如 Oracle 和 MySQL)内部可能会有一些细微的区别。
6 MySQL 数据库
MySQL 数据库是一种C\S
结构的软件,即分为:客户端和服务端。
若想访问服务器,则必须通过客户端;服务器应该一直运行,客户端则在需要使用的时候运行。
交互方式
客户端连接认证,即连接服务器,认证身份
mysql.exe -hPup
-h
,主机地址,本地为localhost
,远程为IP
地址-P
,端口号,用来找软件-u
,用户名-p
,密码
发送 SQL 指令;
- 服务器接受 SQL 指令,然后处理 SQL 指令并返回操作结果;
- 客户端接受结果并显示结果;
- 由于服务器并发限制,需要断开连接(三种指令,分别为:
exit
、quit
和\q
),释放资源。
服务器对象
由于没办法完全了解服务器内部的结构,因此只能粗略的分析数据库服务器的内部结构。
一般来说,将 MySQL 数据库服务器的内部对象分为四层,分别为:数据管理系统(DBMS)–> 数据库(DB)–> 表(Table)–> 字段(Filed).
MYSQL----(2) 数据库基础知识相关推荐
- java学习与总结:MySQL和数据库基础知识
文章目录 MySQL MySQL数据库索引数据结构 B树和B+树的区别 MySQL一条数据是怎么保存到数据库的 WAL : WRITE AHEAD LOG binlog 和 redo log 流程 M ...
- 虚拟机安装mysql及数据库基础知识一
一.安装前的准备 首先要准备好安装环境: ① 准备一台有IP地址的虚拟机 ② 使用winscp把数据库安装包传到虚拟机中 安装包可自行去官网下载 mysql官网 ③ 进行mysql的安装 二.安装 1 ...
- 1.0 MySQL数据库基础知识
MySQL数据库基础知识 MYSQL介绍 MySQL分支版本的发展 MySQL. Oracle. SQLServer的市场区别 MYSQL数据库使用上的结构 MYSQL体系架构图 MYSQL体系架构- ...
- Mysql数据库基础知识(五)之:视图、变量、存储过程、函数、流程控制结构
第一部分:Mysql数据库基础知识(一)之 基础查询----分组查询 第二部分:Mysql数据库基础知识(二)之 连接查询----子查询-----分页查询------union联合查询 第三部分:My ...
- Mysql数据库基础知识总复习
前言 小亭子正在努力的学习编程,接下来将开启javaEE的学习~~ 分享的文章都是学习的笔记和感悟,如有不妥之处希望大佬们批评指正~~ 同时如果本文对你有帮助的话,烦请点赞关注支持一波, 感激不尽~~ ...
- MYSQL学习01--MySQL基础知识
一.Mysql的安装和navicat的安装使用 1.MYSQL的安装 安装参考:http://www.runoob.com/mysql/mysql-install.html 我的电脑上已经安装过了,再 ...
- mysql系列问答题_(2)MySQL运维基础知识面试问答题
面试题001:请解释关系型数据库概念及主要特点? 面试题002:请说出关系型数据库的典型产品.特点及应用场景? 面试题003:请解释非关系型数据库概念及主要特点? 面试题004:请说出非关系型数据库的 ...
- 一幅长文细学GaussDB(二)——数据库基础知识
文章目录 2 数据库基础知识 2.1 数据库管理简介 数据库管理 数据库管理工作范围 对象管理 制定数据库对象命名规范 备份和恢复 灾难恢复 备份方式 数据库安装 数据库卸载 数据库迁移 数据库扩容 ...
- SQL数据库基础知识巩固
SQL数据库基础知识 数据库,又称"电子化的文件柜",是"按照数据结构来组织.存储和管理数据的仓库",是一个长期存储在计算机内的.有组织的.可共享的.统一管理的 ...
- SQL数据库基础知识-巩固篇一
SQL数据库基础知识-巩固篇<一>... 首先展示两款我个人很喜欢的数据库-专用于平时个人SQL技术的练习<特点:体积小,好安装和好卸载,功能完全够用了> MySQL-57 D ...
最新文章
- C语言中的void指针
- [网络安全提高篇] 一一〇.强网杯CTF的Web Write-Up(上) 寻宝、赌徒、EasyWeb、pop_master
- “睡服”面试官系列第十七篇之Reflect(建议收藏学习)
- 谷歌浏览器外贸版_针对谷歌SEO,你有哪些值得推荐的工具、插件、网站、app,或者技巧分享?...
- Spark高级操作之json复杂和嵌套数据结构的操作二
- 大话数据结构第一章理解
- python 实现SOM: 函数更新
- spring学习-xml属性注入-数组--list--map--set类型
- 关于线段树套伸展树被卡常
- tomcat7安装详细过程
- acer台式电脑怎么重装系统_宏基台式电脑怎么重装系统
- matlab 线性拟合(好像也可以由两点得出直线)
- GIS招聘 | 云南省自然资源厅所属事业单位
- cordova环境配置步骤
- uniapp保存图片到相册
- JavaScript-Tool:Moment.js
- 完美世界手游服务器维护中,完美世界手游黑屏闪退解决办法 玩不了怎么办
- 服务器编程入门(11)TCP并发回射服务器实现 - 单线程select实现
- Axure设计网页时,需要注意的尺寸设置。
- Oracle ERP 库存管理(业务流程 核心流程) [转]
热门文章
- Leetcode - 143. Reorder List
- 嵌入式Linux系统编程学习之十一Linux进程的创建与控制
- Elasticsearch Java API四种实现方式
- PHP编译configure时常见错误(转)
- mysql 启动报错Can't connect to local MySQL server through socket '/data/mysql/mysql/mysql.sock'(111)...
- Python学习相关资料
- 尝试使用Java6API读取java代码
- Linux初步(一)——关于操作系统的启动
- js获取Listbox选择的值
- python书籍推荐:Python Cookbook第三版中文