mysql——数据库基础

目录

一.什么是数据库

二.主流的数据库

三.服务器,数据库,表关系

四.数据逻辑存储

 五.MySQL架构

六.SQL语句分类 

 七.存储引擎


一.什么是数据库

存储数据用文件就可以了,为什么还要弄个数据库?

  • 文件保存数据有以下几个缺点:
  • 文件的安全性问题
  • 文件不利于数据查询和管理
  • 文件不利于存储海量数据
  • 文件在程序中控制不方便

数据库存储介质:

  • 磁盘
  • 内存 

为了解决上述问题,专家们设计出更加利于管理数据的东西——数据库,它能更有效的管理数据。数据库的水平是衡量一个程序员水平的重要指标。 

宏观理解数据库:

我们常说的MySQL数据库由两部分组成一个是MySQL客户端——mysql,一个是MySQL服务端——mysqld。本质MySQL服务端就是一个网络服务就是,当我们在本机安装了MySQL,启动MySQL服务以后,就变成了守护进程。

 这里更能直线直接看出,mysqld网络服务,端口号是3306.(端口号可以更改).

 

用户通过mysql客户端特有的指令,发起给MySQL服务端,由MySQL服务端对管理内容左出相应操作,可以是增删查改。

二.主流的数据库

  1. SQL Sever: 微软的产品,.Net程序员的最爱,中大型项目。
  2. Oracle: 甲骨文产品,适合大型项目,复杂的业务逻辑,并发一般来说不如MySQL。
  3. MySQL:世界上最受欢迎的数据库,属于甲骨文,并发性好,不适合做复杂的业务。主要用在电商,SNS,论坛。对简单的SQL处理效果好。
  4. PostgreSQL :加州大学伯克利分校计算机系开发的关系型数据库,不管是私用,商用,还是学术研究使用,可以免费使用,修改和分发。
  5. SQLite: 是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中。它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。
  6. H2: 是一个用Java开发的嵌入式数据库,它本身只是一个类库,可以直接嵌入到应用项目中。

上述所谈的包括MySQL都是关系型数据库,数据库还有另一大类NoSQL(非关系型数据库)数据库,NoSQL数据库是基于内存的级别的数据库,常见的有Redis。

三.服务器,数据库,表关系

从应用程序的角度来理解数据库:

所谓安装数据库服务器,只是在机器上安装了一个数据库管理系统程序,这个管理程序可以管理多
个数据库,一般开发人员会针对每一个应用创建一个数据库——database。
为保存应用中实体的数据,一般会在数据库中创建多个表,以保存程序中实体的数据。
数据库服务器、数据库和表的关系如下:

四.数据逻辑存储

MySQL数据库对数据采用二维行列式的表格逻辑存储。

 五.MySQL架构

MySQL 是一个可移植的数据库,几乎能在当前所有的操作系统上运行,如 Unix/Linux、Windows、Mac 和 Solaris。各种系统在底层实现方面各有不同,但是 MySQL 基本上能保证在各个平台上的物理体系结构的一致性。

第一层:对客户端进行用户认证和连接的管理。

第二层:只要是MySQL服务端用来接受客户端的指令,对指令进行语法解析,和优化。

第三层:存储引擎层,根据不同的数据管理的需求,可以选择更为合适的存储引擎,并且这些存储引擎是拔插式的。

第四层:最后一层,理论上不属于数据库,因为最后一层是文件系统层,属于操作系统,是数据库实际操作的对象。

六.SQL语句分类 

DDL【data definition language】 数据定义语言,用来维护存储数据的结构

  • 代表指令: create, drop, alter

DML【data manipulation language】 数据操纵语言,用来对数据进行操作

  • 代表指令: insert,delete,update
  • DML中又单独分了一个DQL,数据查询语言,代表指令: select

DCL【Data Control Language】 数据控制语言,主要负责权限管理和事务

  • 代表指令: grant,revoke,commit

 七.存储引擎

存储引擎是:数据库管理系统如何存储数据、如何为存储的数据建立索引和如何更新、查询数据等技术的实现方法。MySQL的核心就是插件式存储引擎,支持多种存储引擎。

查看存储引擎:

 其中最常用的就是InnoDB。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/268311.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java--Collection的常用方法

1.集合体系结构 ①Collection代表单列集合,每个元素(数据)只包含一个值 ②Map代表双列集合,每个元素包含两个值(键值对) 2.Collection集合体系 3.Collection集合特点 1.List系列集合:添加的元素是有序、可重复、有索引 ①ArrayList、Line…

聊聊国内的汽车改装现状以及SUV车型中的CAN数据改装应用

随着汽车个性化、文旅需求旺盛以及运动赛事的兴起及线下活动的参与,改装人群在不断扩大,国内改装行业也在不断发展,出现很多不同风格的,包括成文化、成体系的汽车改装。并且,在这里面孵化出很多优秀的公司,…

银行数据分析进阶篇:银行外呼业务数据分析与客户精准营销优化研究

上次和大家分享了“信用卡全生命周期分析”的案例,不少朋友都有正向的反馈,今天继续和大家分享我之前看到的银行数据分析的案例,这个案例结构清晰,内容详细,相信朋友们能很快掌握! 01 需求痛点 我们先来了…

algorithm graphics

绘制地图坐标路线_哔哩哔哩_bilibili neo4j test-CSDN博客

第二证券:结构性行情或将延续 泛科技有望继续走强

展望未来,当时已进入重要的方针窗口期,能否有超预期的新方针推出是改变商场的要害。但复盘2023年的行情来看,过早买卖方针预期的成功率并不高,因而主张该方位以防御性资产为主,高股息资产从本年9月份至今现已调整了2个…

vue编辑页面提示 this file does not belong to the project

背景 打开vue项目工程 文件夹被锁定(有黄色背景),编辑页面时,报错。 报错提示: vue编辑页面提示 this file does not belong to the project 原因 一不下心打开了错误的文件包 解决方案 1、删除.idea文件夹 2、…

RK3568驱动指南|第八篇 设备树插件-第74章 虚拟文件系统ConfigFS介绍

瑞芯微RK3568芯片是一款定位中高端的通用型SOC,采用22nm制程工艺,搭载一颗四核Cortex-A55处理器和Mali G52 2EE 图形处理器。RK3568 支持4K 解码和 1080P 编码,支持SATA/PCIE/USB3.0 外围接口。RK3568内置独立NPU,可用于轻量级人工…

机器学习-KL散度的直观理解+代码

KL散度 直观理解:KL散度是一种衡量两个分布之间匹配程度的方法。通常在概率和统计中,我们会用更简单的近似分布来代替观察到的数据或复杂的分布,KL散度帮我们衡量在选择近似值时损失了多少信息。 在信息论或概率论中,KL散度&#…

AIGC专题报告:ChatGPT纪要分享

今天分享的AIGC系列深度研究报告:《AIGC专题报告:ChatGPT纪要分享》。 (报告出品方:久谦中台) 报告共计:135页 OpenAI 高管解密 ChatGPT GPT-3 是一种大型语言模型,被训练用来在给定上下文中…

东芝携手罗姆共同投资191亿元,共同生产功率芯片 | 百能云芯

日本东芝(Toshiba)集团与芯片制造商罗姆半导体集团(Rohm)近日宣布将共同生产功率芯片,总投资额达3883亿日元(约人民币191亿元),这一举措旨在通过扩大生产规模,提高成本竞…

IntelliJ IDEA 2023.3 最新版如何试用?IntelliJ IDEA 2023.3 最新版试用方法

🌷🍁 博主猫头虎(🐅🐾)带您 Go to New World✨🍁 🦄 博客首页——🐅🐾猫头虎的博客🎐 🐳 《面试题大全专栏》 🦕 文章图文…

微信小程序改变checkbox大小

.weui-cell__hd {transform: scale(0.6,0.6);} <checkbox color"#447189" />