【Hello MySQL】数据库基础

news2024/12/23 10:07:07

目录

1. 什么是数据库

2. 主流数据库

3. MySQL的基本使用

3.1 MySQL安装

3.2 连接 MySQL 服务器

3.3 退出 MySQL 服务器 

3.4 服务器,数据库,表关系

3.5 MySQL的配置

4. MySQL架构

5. SQL分类

6. 存储引擎

6.1 存储引擎

6.2 查看存储引擎

6.3 存储引擎对比


MySQL🌷

1. 什么是数据库

存储数据用文件就可以了,为什么还要弄个数据库 ?
文件保存数据有以下几个缺点:
  • 文件的安全性问题;
  • 文件不利于数据查询和管理;
  • 文件不利于存储海量数据;
  • 文件在程序中控制不方便;
数据库存储介质:
  • 磁盘
  • 内存
为了解决上述问题,专家们设计出更加利于管理数据的东西 —— 数据库,它能更有效的管理数据。
数据库的水平是衡 量一个程序员水平的重要指标

2. 主流数据库

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

3. MySQL的基本使用

3.1 MySQL安装

Centos 6.5下编译安装MySQL 5.6.14

Windows下安装MySQL5.7

3.2 连接 MySQL 服务器

mysql -h 127.0.0.1 -P 3306 -u root -p

// -h:后跟要连接的MySQL服务器主机的IP
// -P:后跟MySQL服务器连接的端口号
// -u:后跟使用什么用户进行登录
// -P:表要输入密码

// 由上我们也可以看出数据库是一个跨网络的服务,提供服务端IP+port,客户端便可以进行连接

我们如果在本机连接MySQL服务,还可通过如下方式进行连接:

mysql -uroot -p

3.3 退出 MySQL 服务器 

quit

3.4 服务器,数据库,表关系

  • 所谓安装数据库服务器,只是在机器上安装了一个数据库管理系统程序,这个管理程序可以管理多个数据库,一般开发人员会针对每一个应用创建一个数据库;
  • 为保存应用中实体的数据,一般会在数据库中创建多个表,以保存程序中实体的数据;
  • 数据库服务器、数据库和表的关系如下:
总结:
  • 数据库其实是一个应用层软件,包括:数据库客户端、数据库服务器、数据库库+表结构三部分,帮助用户或者是用户程序更加方便的进行数据管理;
  • 数据库客户端可能是有多种方式:命令行式、图形化界面式;
  • 数据库服务端只存在一种方式;
  • 数据库还是要自己去进行文件的访问;
  • 在数据库中,直接和文件打交道的是数据库的存储引擎;

3.5 MySQL的配置

 我们可以通过如下命令进行数据库配置的修改:

vim /etc/my.cnf

4. MySQL架构

MySQL 是一个可移植的数据库,几乎能在当前所有的操作系统上运行,如 Unix/Linux、
Windows 、Mac 和 Solaris。各种系统在底层实现方面各有不同,但是 MySQL 基本上能保证
在各个平台上的物理体系结构的一致性。
可移植性:其实是该应用程序拥有在几乎所有平台上运行的代码,在运行时根据条件编译,穷举出
只适合当前平台运行的代码;

5. SQL分类

  • DDLdata definition language 数据定义语言,用来维护存储数据的结构;

        代表指令:create, drop, alter

  • DMLdata manipulation language 数据操纵语言,用来对数据进行操作;

        代表指令: insertdeleteupdate

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

  • DCLData Control Language数据控制语言,主要负责权限管理和事务;

        代表指令: grantrevokecommit

6. 存储引擎

6.1 存储引擎

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

6.2 查看存储引擎

show engines;

6.3 存储引擎对比

坚持打卡😃

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Vue.js 中的 $nextTick 方法是什么?有什么作用?

Vue.js 中的 $nextTick 方法是什么? 在 Vue.js 中,$nextTick 方法是一个非常有用的工具,它可以让我们在下一个 DOM 更新周期之前执行回调函数。这个方法可以用于很多场景,比如在 Vue 实例数据改变之后,立即获取更新后…

肠道重要菌属——Dorea菌,减肥过敏要重视它?

谷禾健康 认识 Dorea菌 Dorea菌属于厚壁菌门毛螺菌科,广泛存在于人体肠道内,谷禾数据显示该菌在人群的检出率超89%。该菌最早也是从人体粪便中分离出来。 “Dorea” 目前没有一个确定的译名,Dorea是以法国微生物学家 Joel Dor 的名字命名&…

进入流程化管理不再是奢望,开源快速开发框架助你梦想成真!

在数字化进程快速发展的今天,流程化管理是企业做强做大的重要一步。如何实现流程化管理?如何实现数字化发展目标?这些问题都是值得每一个企业深思的重要课题。开源快速开发框架是一种快速帮助企业提质增效的平台软件,可以让每一个…

使用gcc展示完整的编译过程(gcc预处理模式、编译模式、汇编模式、连接模式)

最近在了解 clang/llvm 的时候突然发现一件事:gcc是一个工具集合,包含了或者调用将程序源代码转换成可执行程序文件的所有工具,而不只是简单的编译器。这帮助我对“编译器”有了更深刻的理解,所以写下本文作为记录。 关于“编译器…

如何用Web服务组件IIS免费搭建站点,并实现外网远程访问?

作为一名程序猿,经常会有搭建网站的需求,或被朋友要求帮忙着搭建网站,但是如果将网站建设在个人电脑或公司的服务器上,面临的问题是,没有公网IP或屏蔽了外网的80端口,在外网环境下就无法直接内网的网站&…

chatgpt赋能python:将一行数变成列——Python简单实现

将一行数变成列——Python简单实现 在数据处理时,我们常常会遇到将一行的数据转换成列的情况,例如将多个数据在Excel表格中拆分为不同的列。这时候,Python可以帮助我们快速实现这个功能。 什么是Python? Python是一种高级&…

linux ubi文件系统加载失败“too large reserved_peds”

今天要升级linux根文件系统ubi,结果简单打包工作,就有一个始终不正确,花了不少时间,总算搞明白了。 我使用了两个打包脚本,脚本1是一个整个系统打包脚本,脚本2是一个专门给文件系统打包的脚本。 脚本1的部…

Vue框架和Axios实战:音乐播放器项目-歌手信息列表

Vue框架和Axios实战:音乐播放器项目-歌手信息列表 歌手信息一栏用于展示当前比较火热的歌手信息列表,首先我们创建静态热门歌手信息模型组件SingerList.vue,主要用于存放公共歌手列表信息,代码如下: 接着将歌手信息列表…

【前端 - HTML】第 5 课 - 表格标签

欢迎来到博主 Apeiron 的博客,祝您旅程愉快 ! 时止则止,时行则行。动静不失其时,其道光明。 目录 1、缘起 2、基本用法 3、表格结构标签 4、合并单元格 5、总结 1、缘起 在 HTML 中的表格标签 用于创建和展示数据表格。通过…

CAM, Grad-CAM, Grad-CAM++可视化CNN方式的代码实现和对比

当使用神经网络时,我们可以通过它的准确性来评估模型的性能,但是当涉及到计算机视觉问题时,不仅要有最好的准确性,还要有可解释性和对哪些特征/数据点有助于做出决策的理解。模型专注于正确的特征比模型的准确性更重要。 理解CNN…

【数据结构】排序篇

排序 一、排序的概念和应用1.1、排序的概念1.2、排序的应用1.3、常见的排序算法 二、插入排序2.1、直接插入排序2.2、希尔排序3.1.直接选择排序3.2、堆排序 四、交换排序4.1、冒泡排序4.2、快速排序4.2.1、hoare版本4.2.2、挖坑法4.2.3、前后指针版本4.2.4、快排非递归&#xf…

图结构的原理

引言 胡图图:“我成为电脑砖家(人们都在我吧上评论电脑配置).,按理说我应该开一家图图计算机研究科技公司…”! 于小美:“没错,图图应该开一家公司 来扩展你的专业知识” 何壮壮:“厉害是厉害 ,要不要大哥来帮帮你(至于钱,好说:月薪2万)…” 图图:“你狮子大开口! ,那你还是当…

『赠书活动--第三期』清华社赞助 | 《Python系列丛书》

『赠书活动 | 第三期』 本期书籍:《Python系列丛书》 Python从入门到精通(微课精编版) PyTorch深度学习简明实战 Django Web开发实例精解 Python分布式机器学习 Python Web深度学习 618,清华社 IT BOOK 多得图书活动开始啦!活动…

Vue.js 中的 keep-alive 组件使用详解

Vue.js 中的 keep-alive 组件 在 Vue.js 中,keep-alive 组件是一个非常有用的组件,它可以帮助我们优化页面性能。在本文中,我们将介绍 keep-alive 组件是什么,如何使用它以及它的作用。 keep-alive 组件是什么? keep…

C plus plus ——【模板应用】

系列文章目录 C plus plus ——【模板应用】 文章目录 系列文章目录前言一、函数模板1.1、函数模板的定义1.2、函数模板的作用1.3、重载函数模板 二、类模板2.1、类模板的定义与声明2.2、简单类模板2.3、默认模板参数2.4、为具体类型的参数提供默认值 三、总结 前言 模板是C语…

Selenium Python教程第4章

4. 查找元素 在一个页面中有很多不同的策略可以定位一个元素。在你的项目中, 你可以选择最合适的方法去查找元素。Selenium提供了下列的方法给你: find_element_by_id find_element_by_name find_element_by_xpath find_element_by_link_text find_element_by_par…

自己制作智能语音机器人(基于jetson nano)

1 简介 如上图,主要采用jetson上编写python代码实现,支持离线语音唤醒、在线语音识别、大模型智能文档、在线语音合成。 所需硬件如下: jetson nano:linux科大讯飞麦克风硬件:AIUI R818麦克阵列开发套件6麦阵列&#…

华为全栈自主数据库GaussDB正式面向全球服务

一、前言 在6月7日举行的华为全球智慧金融峰会2023上,华为发布新一代分布式数据库GaussDB,并正式向全球客户提供服务。据介绍,GaussDB实现了核心代码100%自主研发,是国内当前唯一做到软硬协同、全栈自主的国产数据库。 可谓是里…

继承类的方法

1 问题 定义一个父类,用子类去继承父类所拥有的方法、定义属性,然后使用测试文件实现子类输出父类的方法信息,属性等。 2 方法 2.1 定义一个名为Person的父类: 2.2 定义一个名为Student的子类,并令其继承父类&#xff…

【PXIE301-211】基于PXIE总线架构的16路并行LVDS采集、1路光纤数据处理平台

PXIE301-211是一款基于PXIE总线架构的16路并行LVDS数据采集、1路光纤收发处理平台,该板卡采用Xilinx的高性能Kintex 7系列FPGA XC7K325T作为实时处理器,实现各个接口之间的互联。板载1组64位的DDR3 SDRAM用作数据缓存。板卡具有1个FMC(HPC&am…