当前位置: 首页 > news >正文

[MySQL初阶]MySQL数据库基础

MySQL数据库基础

  • 1. 数据库基础
    • 1.1 什么是数据库
    • 1.2 主流数据库
  • 2. 数据库的基本使用
    • 2.1 连接服务器
    • 2.2 使用案例
    • 2.3 数据逻辑存储
  • 3. MySQL架构与分类
    • 3.1 MySQL架构
    • 3.2 SQL分类
  • 4. 存储引擎
    • 4.1 存储引擎基本概念
    • 4.2 存储引擎基本操作

1. 数据库基础

1.1 什么是数据库

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

文件保存数据有以下几个缺点:

文件的安全性问题
文件不利于数据查询和管理
文件不利于存储海量数据
文件在程序中控制不方便

数据库存储介质:

磁盘(MySQL)
内存

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

数据库是一整套的数据存储容灾解决方案。是经过系统化组织的结构化数据集合,本质上是由数据库管理系统(DBMS)管理的特殊格式文件集合。这些文件通过高度优化的二进制格式存储,包含数据表、索引、事务日志等核心组件,普通文本编辑器无法直接解析其内容。
数据库有数据库文件(说白了就是磁盘文件,如fopen、open打开文件等操作),数据库服务器,数据库服务端。

数据库客户端:
在这里插入图片描述
(或是图形界面的mysql客户端)

数据库服务器:

在这里插入图片描述

在这里插入图片描述
mysql本质也是个网络服务,mysql服务本质就是网络服务器进程与文件的关系。

1.2 主流数据库

SQL Sever: 微软的产品,.Net程序员的最爱,中大型项目。

Oracle: 甲骨文产品,适合大型项目,复杂的业务逻辑,并发一般来说不如MySQL。

MySQL:世界上最受欢迎的数据库,属于甲骨文,并发性好,不适合做复杂的业务。主要用在电商,SNS,论坛。对简单的SQL处理效果好。

PostgreSQL :加州大学伯克利分校计算机系开发的关系型数据库,不管是私用,商用,还是学术研究使用,可以免费使用,修改和分发。

SQLite: 是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中。它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。

H2: 是一个用Java开发的嵌入式数据库,它本身只是一个类库,可以直接嵌入到应用项目中。

2. 数据库的基本使用

2.1 连接服务器

mysql服务可以跨网络

# mysql -h  代表连谁# -P 端口号 
# 在企业中,MySQL不能暴露在公网上
# MySQL一般会更改一下服务端口# -u 代表是谁mysql -h 127.0.0.1 -P 3306 -u root -p # 连本地
mysql > quit # 退出mysqlmysql -uroot -p # 也可以登录上mysql# 如果没有写-h 127.0.0.1 默认是连接本地
# 如果没有写-P 3306 默认是连接3306端口号

所谓安装数据库服务器,只是在机器上安装了一个数据库管理系统程序,这个管理程序可以管理多个数据库,一般开发人员会针对每一个应用创建一个数据库。

为保存应用中实体的数据,一般会在数据库中创建多个表,以保存程序中实体的数据。

数据库服务器(此处指的mysql软件)、数据库和表的关系如下:
在这里插入图片描述

2.2 使用案例

# root
cd /var/lib/mysql # 默认数据存储目录

在 Linux 系统中,/var/lib/mysql 是 MySQL/MariaDB 数据库的默认数据存储目录,存放着数据库的核心运行数据和系统文件。

创建数据库

create database test;

在这里插入图片描述

-a(–all):显示所有文件(包括以 . 开头的隐藏文件)

-l(–long):以长格式显示详细信息(权限、所有者、大小、时间等)

-d(–directory):仅显示目录本身的信息,而非其内容

相关文章:

[MySQL初阶]MySQL数据库基础

MySQL数据库基础 1. 数据库基础1.1 什么是数据库1.2 主流数据库2. 数据库的基本使用2.1 连接服务器2.2 使用案例2.3 数据逻辑存储3. MySQL架构与分类3.1 MySQL架构3.2 SQL分类4. 存储引擎4.1 存储引擎基本概念4.2 存储引擎基本操作1. 数据库基础 1.1 什么是数据库 存储数据用…...

【mysql 的安装及使用】

MySQL 9.0 一、下载MySQL[MySQL 9.0 下载] [(https://dev.mysql.com/downloads/mysql/)选择自定义,选择合适安装路径二、检查安装情况配置环境变量打开命令行查看版本创建数据库在MySQL中,可以使用create database语句来创建数据库。以下是创建一个名为my_db的数据库的示例:…...

d202542

一、142.环形链表I 142. 环形链表 II - 力扣&#xff08;LeetCode&#xff09; 用set统计一下 如果再次出现那么就环的第一个return返回就行 public ListNode detectCycle(ListNode head) {Set<ListNode> set new HashSet<>();ListNode cur head;while(cur ! …...

vscode代码片段的设置与使用

在 Visual Studio Code (VS Code) 中&#xff0c;可以通过自定义**代码片段&#xff08;Snippets&#xff09;**快速插入常用代码模板。以下是详细设置步骤&#xff1a; 步骤 1&#xff1a;打开代码片段设置 按下快捷键 Ctrl Shift P&#xff08;Windows/Linux&#xff09;或…...

3D 地图渲染-区域纹理图添加

引入-初始化地图&#xff08;关键代码&#xff09; // 初始化页面引入高德 webapi -- index.html 文件 <script src https://webapi.amap.com/maps?v2.0&key您申请的key值></script>// 添加地图容器 <div idcontainer ></div>// 地图初始化应该…...

spring-security原理与应用系列:HttpSecurity.filters

目录 AnyRequestMatcher WebSecurityConfig HttpSecurity AbstractInterceptUrlConfigurer AbstractAuthenticationProcessingFilter 类图 在前面的文章《spring-security原理与应用系列&#xff1a;securityFilterChainBuilders》中&#xff0c;我们遗留了一个问题&…...

每日总结4.2

蓝桥杯刷题&#xff1a; 1. 方格分割&#xff08;dfs,选中心点&#xff0c;开始上下左右遍历&#xff0c;达到边界时数量加一&#xff09; #include <bits/stdc.h> using namespace std; bool vis[10][10]; int mp[10][10]; int ans0; int dx[4]{1,0,0,-1}; int dy[4]{…...

架构师面试(二十五):分布式存储 Leader 设计

问题 在非常多的分布式存储系统中&#xff0c;如&#xff1a;Zookeeper、Etcd、Kafka等&#xff0c;往往会存在一个 【Leader】 角色&#xff0c;并由该角色负责数据的写入&#xff0c;这样设计最主要的原因是什么呢&#xff1f; A. 唯一负责数据写入的 Leader 角色可以避免并…...

mycat --分片规则--

文章目录 MyCat分片规则详解1. rule1 (基于id的func1算法)2. sharding-by-date (按日期分片)3. rule2 (基于user_id的func1算法)4. sharding-by-intfile (基于枚举值分片)5. auto-sharding-long (长整型范围分片)6. mod-long (取模分片)7. sharding-by-murmur (MurmurHash分片)…...

系统分析师备考启动

以考促学&#xff1a;软件高级系统分析师。 一、考试目的&#xff1a; 1、练习三遍读书法、快速阅读、番茄工作法、第一性原理、思维导图等学习方法和学习工具的使用。 2、掌握知识、编织知识网、顺便拿证。 二、组织形式&#xff1a; 小组统一安排学习内容&#xff0c;每…...

轻量级搜索接口技术解析:快速实现关键词检索的Java/Python实践

Hi&#xff0c;你好&#xff01; 轻量级搜索接口技术解析&#xff1a;快速实现关键词检索的Java/Python实践 接口特性与适用场景 本接口适用于需要快速集成搜索能力的开发场景&#xff0c;支持通过关键词获取结构化搜索结果。典型应用场景包括&#xff1a; 垂直领域信息检索…...

防爆风扇选型指南:根据风量风压匹配应用场景​

在化工、石油、煤矿等存在易燃易爆气体或粉尘的危险环境中&#xff0c;通风设备的安全性能至关重要&#xff0c;防爆风扇成为保障生产环境安全与空气流通的关键装备。正确选型是确保其发挥最佳效能的前提&#xff0c;而根据风量风压匹配应用场景则是选型的核心要点。​ 风量&am…...

Laravel 中使用 JWT 作用户登录,身份认证

什么是JWT&#xff1a; JWT 全名 JSON Web Token&#xff0c;是一种开放标准 (RFC 7519)。 用于在网络应用环境间安全地传输信息作为 JSON 对象。 它是一种轻量级的认证和授权机制&#xff0c;特别适合分布式系统的身份验证。 核心特点 紧凑格式&#xff1a;体积小&#x…...

Git安装

1、 下载Git https://git-scm.com/ 2、 双击【Git-2.44.0-64-bit.exe】安装&#xff1a; 2-1、 选择自定义安装目录&#xff1a;F:\software\Git 2-2、 一直点击next&#xff0c;直到安装成功。 2-3、 在git项目文件夹&#xff0c;右键出现Git GUI Here和Git Bash Here就说明成…...

bit与byte的区别与联系?

李升伟 整理 byte 和 bit 是计算机中常用的数据单位&#xff0c;它们的主要区别和联系如下&#xff1a; 1. 定义 bit&#xff08;比特&#xff09;&#xff1a;计算机中最小的数据单位&#xff0c;表示一个二进制位&#xff0c;值为0或1。 byte&#xff08;字节&#xff09…...

程序化广告行业(51/89):Cookie映射与移动设备ID映射解析

程序化广告行业&#xff08;51/89&#xff09;&#xff1a;Cookie映射与移动设备ID映射解析 在当今数字化营销的浪潮中&#xff0c;程序化广告已经成为企业精准触达目标客户的重要手段。作为一名对程序化广告充满兴趣的学习者&#xff0c;我希望通过这篇博客和大家一起深入探索…...

从吉卜力漫画到艺术创造:GPT-4o多种风格绘图Prompt大全

在3月底&#xff0c;GPT-4o掀起了一阵吉卜力绘图浪潮&#xff0c;大家纷纷输入一张图片&#xff0c;让4o模型进行风格化迁移&#xff0c;其中吉卜力风格的漫画在社交媒体上最为火热。在大家争议4o的训练数据是否侵权和4o背后的技术原理的时候&#xff0c;我们先来玩一玩&#x…...

48. 旋转图像

leetcode Hot 100系列 文章目录 一、核心操作二、外层配合操作三、核心模式代码总结 一、核心操作 先上下翻转再沿着对角线翻转 提示&#xff1a;小白个人理解&#xff0c;如有错误敬请谅解&#xff01; 二、外层配合操作 三、核心模式代码 代码如下&#xff1a; class S…...

【Linux篇】自主Shell命令行解释器

&#x1f4cc; 个人主页&#xff1a; 孙同学_ &#x1f527; 文章专栏&#xff1a;Liunx &#x1f4a1; 关注我&#xff0c;分享经验&#xff0c;助你少走弯路&#xff01; 文章目录 1. 获取用户名的接口2. 等待用户输入接口3. 将上述代码进行面向对象式的封装4. 命令行解析5.…...

leetcode 2873. 有序三元组中的最大值 I

欢迎关注更多精彩 关注我&#xff0c;学习常用算法与数据结构&#xff0c;一题多解&#xff0c;降维打击。 文章目录 题目描述题目剖析&信息挖掘解题思路方法一 暴力枚举法思路注意复杂度代码实现 方法二 公式拆分动态规划思路注意复杂度代码实现 题目描述 [2873] 有序三元…...

深度学习 Deep Learning 第14章 自编码器

深度学习 Deep Learning 第14章 自编码器 内容概要 本章深入探讨了自编码器&#xff08;Autoencoders&#xff09;&#xff0c;这是一种用于特征学习和降维的神经网络架构。自编码器通过编码器和解码器两个部分&#xff0c;将输入数据映射到一个内部表示&#xff08;编码&…...

全国产传感器的可靠性、MTBF计算、极限测试与加速寿命测试

全国产传感器的可靠性是指传感器在规定条件下和规定时间内完成规定功能的能力。它是衡量传感器性能的重要指标之一&#xff0c;直接影响传感器的使用寿命和系统稳定性。武汉利又德的小编来和大家分享一下关于全国产传感器的可靠性以及MTBF计算、极限测试与加速寿命测试的小知识…...

【算法中的数学】裴蜀定理(Bézout’s Identity)总结

裴蜀定理&#xff08;Bzout’s Identity&#xff09;总结 裴蜀定理是数论中的一个重要定理&#xff0c;描述了整数线性组合与最大公约数&#xff08;GCD&#xff09;之间的关系。 1. 裴蜀定理的内容 对于任意两个整数 a a a 和 b b b&#xff0c;设它们的最大公约数为 d …...

unity点击button后不松开通过拖拽显示模型松开后模型实例化

using System.Collections; using UnityEngine; using UnityEngine.EventSystems; using UnityEngine.UI;[RequireComponent(typeof(Button))] // 确保脚本挂在Button上 public class DragButtonSpawner : MonoBehaviour, IPointerDownHandler, IDragHandler, IPointerUpHandle…...

计算机网络复习 吉林大学

1、信息交换的三种方式&#xff1a;电路交换&#xff0c;分组交换&#xff0c;报文交换。 从通信资源的分配角度来看&#xff0c;交换就是按照某种方式动态地分配传输线路的资源。 电路交换&#xff1a;&#xff08;星形结构替代全连接&#xff09; 电话交换机接通电话的方式…...

超级好用的小软件,连接电脑和手机。

将手机变成电脑摄像头的高效工具Iriun Webcam是一款多平台软件&#xff0c;能够将手机摄像头变成电脑的摄像头&#xff0c;通过简单的设置即可实现视频会议、直播、录制等功能。它支持Windows、Mac和Linux系统&#xff0c;同时兼容iOS和Android手机&#xff0c;操作简单&#x…...

【JavaScript】十三、事件监听与事件类型

文章目录 1、事件监听1.1 案例&#xff1a;击关闭顶部广告1.2 案例&#xff1a;随机点名1.3 事件监听的版本 2、事件类型2.1 鼠标事件2.1.1 语法2.1.2 案例&#xff1a;轮播图主动切换 2.2 焦点事件2.2.1 语法2.2.2 案例&#xff1a;模拟小米搜索框 2.3 键盘事件2.3.1 语法2.3.…...

微服务架构技术栈选型避坑指南:10大核心要素深度拆解

微服务架构的技术栈选型直接影响系统的稳定性、扩展性和可维护性。以下从10大核心要素出发&#xff0c;结合主流技术方案对比、兼容性评估、失败案例及优化策略&#xff0c;提供系统性选型指南。 1. 服务框架与通信 关键考量点 扩展性&#xff1a;框架需支持定制化扩展&#x…...

虚拟试衣间微信小程序解决方案

目录 项目名称: 云尚衣橱 核心功能模块: 技术栈选型: 架构设计概览: 详细功能点实现思路: 数据库设计 (MongoDB 示例): 开发步骤建议: 关键注意事项和挑战: 项目名称: 云尚衣橱 核心功能模块: 用户系统 (User System) 我的衣柜 (My Wardrobe) 虚拟试衣间 (Vir…...

C++STL——容器-vector(含部分模拟实现,即地层实现原理)(含迭代器失效问题)

目录 容器——vector 1.构造 模拟实现 2.迭代器 模拟实现&#xff1a; ​编辑 3.容量 模拟实现&#xff1a; 4.元素的访问 模拟实现 5.元素的增删查改 迭代器失效问题&#xff1a; 思考问题 【注】&#xff1a;这里的模拟实现所写的参数以及返回值&#xff0c;都是…...

MoLe-VLA:通过混合层实现的动态跳层视觉-语言-动作模型实现高效机器人操作

25年3月来自南京大学、香港理工、北大和香港科技大学的论文“MoLe-VLA: Dynamic Layer-skipping Vision Language Action Model via Mixture-of-Layers for Efficient Robot Manipulation”。 多模态大语言模型 (MLLM) 在理解复杂语言和视觉数据方面表现出色&#xff0c;使通用…...

《数字图像处理》教材寻找合作者

Rafael Gonzalez和Richard Woods所著的《数字图像处理》关于滤波器的部分几乎全错&#xff0c;完全从零开始写&#xff0c;困难重重。关于他的问题已经描述在《数字图像处理&#xff08;面向新工科的电工电子信息基础课程系列教材&#xff09;》。 现寻找能够共同讨论、切磋、…...

uni-app 框架 调用蓝牙,获取 iBeacon 定位信标的数据,实现室内定位场景

背景&#xff1a;最近需要对接了一个 叫 iBeacon 定位信标 硬件设备&#xff0c;这个设备主要的作用是&#xff0c;在信号不好的地方&#xff0c;或者室内实现定位&#xff0c;准确的找到某个东西。就比如 地下停车场&#xff0c;商城里&#xff0c;我们想知道这个停车场的某个…...

Java面试黄金宝典29

1. 什么是普通索引和唯一性索引 定义&#xff1a; 普通索引&#xff1a;是最基本的索引类型&#xff0c;它为数据表中的某一列或多列建立索引&#xff0c;以加快数据的查询速度。它不限制索引列的值重复&#xff0c;允许存在多个相同的值。唯一性索引&#xff1a;在普通索引的基…...

C语言常见3种排序

主要是三种排序方法&#xff1a;冒泡排序、选择排序、插入排序。 文章目录 一、冒泡排序 1.代码&#xff1a; 2.工作原理&#xff1a; 3.具体过程&#xff1a; 二、选择排序 1.代码 2. 工作原理 3.具体过程&#xff1a; 三、插入排序 1.代码 2.工作原理 3.具体过程 总结 一、…...

Nyquist插件基础:LISP语法-自定义函数

1 Nyquist插件基础&#xff1a;LISP语法-自定义函数 在 Nyquist 里&#xff0c;自定义函数能够让你把特定的操作封装起来&#xff0c;实现代码复用和逻辑模块化。下面详细介绍如何在 Nyquist 中定义和使用自定义函数。 1.1.1 1. 基本函数定义 在 Nyquist 中使用 defun 来定义…...

Visual-RFT:视觉强化微调

文章目录 速览摘要1. 引言2. 相关工作大型视觉语言模型&#xff08;LVLMs&#xff09;强化学习 3. 方法3.1. 初步带可验证奖励的强化学习DeepSeek R1-Zero和GRPO 3.2. Visual-RFT3.2.1. 视觉感知中的可验证奖励检测任务中的IoU奖励分类任务中的CLS奖励 3.2.2 数据准备 4. 实验4…...

快速入手-基于DRF的过滤、分页、查询配置(十五)

1、过滤需要安装插件 pip install django-filter 2、注册 INSTALLED_APPS [ "django.contrib.admin", "django.contrib.auth", "django.contrib.contenttypes", "django.contrib.sessions", "django.contrib.messages",…...

最新Spring Security实战教程(八)Remember-Me实现原理 - 持久化令牌与安全存储方案

&#x1f337; 古之立大事者&#xff0c;不惟有超世之才&#xff0c;亦必有坚忍不拔之志 &#x1f390; 个人CSND主页——Micro麦可乐的博客 &#x1f425;《Docker实操教程》专栏以最新的Centos版本为基础进行Docker实操教程&#xff0c;入门到实战 &#x1f33a;《RabbitMQ》…...

gcc 链接顺序,静态库循环依赖问题

链接过程由链接器 ld 负责。通常 GCC 间接驱动之。 越底层的库&#xff0c;在链接命令行中的位置应越靠后。 文章目录 链接过程※ 但是对于静态库&#xff0c;链接器仅提取当前未解析符号所需的对象文件&#xff0c;未使用的对象文件会被丢弃。静态库&#xff08;.a&#xff09…...

linux内核漏洞检测利用exp提权

案例一dirtycow&#xff08;CVE-2016-5159&#xff09; 有个前置知识就是 获取liunx的内核 hostnamectl uname -a 然后这个内核漏洞进行提权的步骤也是和手工win进行提权差不多 也是需要使用辅助工具在本地进行辅助检测 然后去nomi-sec/PoC-in-GitHub&#xff1a; &#…...

【学Rust写CAD】21 2D 点(point.rs)

源码 //matrix/point.rs use std::ops::Mul; use super::algebraic_units::{Zero, One}; use super::generic::Matrix;/// 点坐标结构体 #[derive(Debug, Clone, Copy, PartialEq)] pub struct Point<X, Y>(Matrix<X, Y, One, Zero, Zero, One>);impl<X, Y>…...

Jmeter的压测使用

Jmeter基础功能回顾 一、创建Jmeter脚本 1、录制新建 &#xff08;1&#xff09;适用群体&#xff1a;初学者 2、手动创建 &#xff08;1&#xff09;需要了解Jmeter的常用组件 元件&#xff1a;多个类似功能组件的容器&#xff08;类似于类&#xff09; 各元件作用 组件…...

C语言--统计输入字符串中的单词个数

输入 输入&#xff1a;大小写字母以及空格&#xff0c;单词以空格分隔 输出&#xff1a;单词个数 代码 如果不是空格且inWord0说明是进入单词的第一个字母&#xff0c;则单词总数加一。 如果是空格&#xff0c;证明离开单词&#xff0c;inWord 0。 #include <stdio.h&g…...

《雷神之锤 III 竞技场》快速求平方根倒数的计算探究

1. 《雷神之锤 III 竞技场》快速求平方根导数源代码 此处先列出其源代码&#xff0c;这段代码的目标是计算一个浮点数平方根的导数&#xff0c;也就是如下形式&#xff1a; f ( x ) 1 x f(x) \frac{1}{\sqrt{x}} f(x)x ​1​这段代码可以说非常难以理解&#xff0c;尤其是 …...

深入解析 Java 8 Function 接口:函数式编程的核心工具

精心整理了最新的面试资料和简历模板&#xff0c;有需要的可以自行获取 点击前往百度网盘获取 点击前往夸克网盘获取 Java 8 引入的 java.util.function.Function 接口是函数式编程范式的核心组件之一&#xff0c;本文将全面解析其使用方法&#xff0c;并通过丰富的代码示例演…...

软件重构与项目进度的矛盾如何解决

软件重构与项目进度之间的矛盾可以通过明确重构目标与范围、采用渐进式重构策略、优化项目管理流程、提高团队沟通效率、建立重构意识文化等方式解决。其中&#xff0c;采用渐进式重构策略尤为关键。渐进式重构是指在日常开发过程中&#xff0c;以小步骤持续进行重构&#xff0…...

redis的geo结构实现[附近商铺]功能

先上结论 geo地理位置算出来是不准的 实现思路 redis6.2支持了经纬度数据格式 支持经纬度检索 需要将redis升级 否则会报错不支持命令 pom文件如果spring-data-redis是2.7.9的boot版本则要改一下支持geo: <dependency><groupId>org.springframework.boot</g…...

W3C XML Schema 活动

W3C XML Schema 活动 概述 W3C XML Schema(XML Schema)是万维网联盟(W3C)定义的一种数据描述语言,用于定义XML文档的结构和约束。XML Schema为XML文档提供了一种结构化的方式,确保数据的一致性和有效性。本文将详细介绍W3C XML Schema的活动,包括其发展历程、主要特点…...

深入解析C++类:面向对象编程的核心基石

一、类的本质与核心概念 1.1 类的基本定义 类是将**数据&#xff08;属性&#xff09;与操作&#xff08;方法&#xff09;**封装在一起的用户自定义类型&#xff0c;是面向对象编程的核心单元。 // 基础类示例 class BankAccount { private: // 访问控制string owner; …...