Mysql之数据库基础

🌟 各位看官好,我是 maomi_9526

🌍 种一棵树最好是十年前,其次是现在!

🚀 今天来学习Mysql的相关知识。

👍 如果觉得这篇文章有帮助,欢迎您一键三连,分享给更多人哦

1、什么是数据库

在日常软件开发中,数据的存储与管理是一项基础而重要的任务。虽然文件系统也能存储数据,但存在以下问题:

  • 安全性差:文件容易被篡改或丢失

  • 查询效率低:文件不利于数据的快速查询

  • 扩展性差:难以处理海量数据

  • 编程复杂:程序控制文件操作不便

为解决上述问题,专家们设计了数据库系统,它具备高效、安全、可扩展、易于编程控制等优势。 数据库的掌握程度是衡量程序员能力的重要指标之一。

2、主流数据库类型

  1. SQL Server:微软开发,适用于中大型项目,广泛用于.NET平台。

  2. Oracle:甲骨文公司出品,性能强大,适合企业级复杂业务,但并发性相对一般。

  3. MySQL:全球最流行的开源数据库,适合高并发但不复杂的应用,如电商、SNS、论坛。

  4. PostgreSQL:源自加州大学伯克利分校,功能强大,适用于商业、学术用途。

  5. SQLite:轻量级数据库,适合嵌入式系统,占用资源极低。

  6. H2:基于Java开发的嵌入式数据库,可嵌入到Java应用程序中。

3、MySQL 基本使用

3.1 安装
  • Linux(CentOS):可通过编译源码或使用yum安装MariaDB

  • Windows:提供图形化安装界面,适合初学者

3.2 连接数据库
复制代码
mysql -h 127.0.0.1 -P 3306 -u root -p
  • 若省略 -h,默认连接本地

  • 若省略 -P,默认使用3306端口

3.3 服务器管理
  • Windows下可通过运行 services.msc 打开服务管理器进行启动、停止、重启操作
3.4 数据库结构

数据库系统由三部分组成:

  • 数据库服务器:运行数据库程序的主机

  • 数据库:一个逻辑数据集合,通常一个项目对应一个数据库

  • :保存实体数据的基本结构单元

3.5 示例操作
复制代码
create database helloworld;
use helloworld;
create table student(
  id int,
  name varchar(32),
  gender varchar(2)
);
insert into student (id, name, gender) values (1, '张三', '男');
insert into student (id, name, gender) values (2, '李四', '女');
insert into student (id, name, gender) values (3, '王五', '男');
select * from student;

4、MySQL 架构

MySQL 是跨平台数据库,支持 Unix/Linux、Windows、MacOS 等多种操作系统。尽管底层实现不同,但在各平台上保持一致的逻辑架构。

5、SQL 语言分类

分类 说明 示例
DDL 数据定义语言,用于定义数据结构 create, drop, alter
DML 数据操作语言,用于增删改数据 insert, update, delete
DQL 数据查询语言,DML的子集 select
DCL 数据控制语言,用于权限控制与事务处理 grant, revoke, commit

6、MySQL 存储引擎

6.1 概念

存储引擎是指数据库系统中处理数据的底层实现方式,包括数据的存储、索引方式及查询机制等。

6.2 特点

MySQL 采用插件式存储引擎设计,支持多种存储引擎(如 InnoDB、MyISAM 等),可根据业务需求灵活选择。

6.3 查看支持的引擎
复制代码
show engines;
6.3 常见存储引擎对比
引擎 特点
InnoDB 支持事务、行级锁、崩溃恢复,是默认引擎
MyISAM 查询快但不支持事务,表级锁
Memory 数据存于内存中,速度极快,断电丢失数据
相关推荐
RestCloud1 小时前
4中常见的数据集成方式
数据库
咯哥布林2 小时前
Ubuntu24安装MySQL8.4
mysql
Databend2 小时前
超 10 倍查询加速,N-Gram Index 设计与优化全解析
数据库
爱可生开源社区3 小时前
SCALE:一个面向专业级任务的大语言模型 SQL 能力开源评测框架
数据库
HyggeBest3 小时前
Mysql之undo log、redo log、binlog日志篇
后端·mysql
星环科技TDH社区版4 小时前
星环科技产品可存储的表格式功能介绍以及创建示例
大数据·数据库
Tapdata7 小时前
全球 DaaS 市场研究报告上线,聚焦数据服务化趋势与行业演进路径
数据库
李少兄8 小时前
MySQL 默认连接数
数据库·mysql
刘一说9 小时前
资深Java工程师的面试题目(六)数据存储
java·开发语言·数据库·面试·性能优化
江沉晚呤时9 小时前
EventSourcing.NetCore:基于事件溯源模式的 .NET Core 库
java·开发语言·数据库