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

MySQL数据库入门指南

目录

  • 数据库核心概念
    • 什么是数据库?
    • 数据库管理系统
    • 为什么需要数据库?
  • 主流数据库
  • SQL 语言简介
  • 基本使用
    • MySQL安装
    • 连接服务器
    • 服务器,数据库,表关系
  • 使用案例
  • MySQL架构
  • 存储引擎
    • 查看存储引擎
    • 存储引擎对比

数据库核心概念

什么是数据库?

  • 定义:数据库是一个长期存储在计算机内、有组织的、可共享的、统一管理的数据集合。
  • 简单理解:就像一个电子化的文件柜,你可以在这个文件柜里创建不同的抽屉(数据库),在每个抽屉里放不同的文件夹(表),每个文件夹里是结构化的文件(数据记录)。

数据库管理系统

  • ** DBMS:**我们通常说的“数据库”软件,如 MySQL、Oracle、SQL Server,其实准确来说是数据库管理系统。它是位于用户和操作系统之间的一层数据管理软件,它帮助我们科学地组织、存储和管理数据。

DBMS 的主要功能:

  • 数据定义:提供数据定义语言(DDL),用于创建、修改数据库和表结构。
  • 数据操作:提供数据操作语言(DML),用于对数据进行增、删、改、查。
  • 数据控制:提供数据控制语言(DCL),管理权限和事务,保证数据的安全性和完整性。
  • 数据维护:提供数据备份、恢复、完整性检查等功能。

为什么需要数据库?

相比于直接使用文件(如 Excel、TXT)存储数据,数据库的优势在于:

  1. **持久化存储:**数据被可靠地保存在存储设备中。
  2. **结构化存储与管理:**数据按特定的数据模型(如关系模型)组织,管理高效。
  3. **数据共享:**允许多个用户或应用程序同时安全地访问数据。
  4. **减少数据冗余:**通过合理的数据库设计,可以极大避免数据的重复存储。
  5. **数据独立性:**数据的逻辑结构(用户看到的)和物理存储(磁盘上的)是分开的,物理存储的改变不影响应用程序。
  6. **数据一致性:**通过事务和约束,保证数据符合预定义的规则。
  7. **并发控制:**当多个用户同时修改数据时,DBMS 能防止数据出现混乱。

主流数据库

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

SQL 语言简介

SQL 是用于与关系型数据库通信的标准语言。

  • DDL - 数据定义语言:用于定义和修改数据库结构。
    • CREATE: 创建数据库、表、索引等。
    • ALTER: 修改已有的数据库对象。
    • DROP: 删除数据库、表等。
  • DML - 数据操作语言:用于操作表中的数据。
    • INSERT: 插入新数据。
    • UPDATE: 更新已有数据。
    • DELETE: 删除数据。
  • DQL - 数据查询语言:用于查询数据。
    • SELECT: 从一个或多个表中检索数据。这是最核心、最常用的命令。
  • DCL - 数据控制语言:用于控制访问权限。
    • GRANT: 授予用户权限。
    • REVOKE: 撤销用户权限。

基本使用

MySQL安装

  • 方式一:使用 MySQL Installer(Windows 用户推荐)

官方安装包一键安装

  • 下载
    * 访问 dev.mysql.com/downloads/mysql/
    * 下载 MySQL Community Server 安装包
  • 安装
    * 运行安装程序
    * 选择 “Developer Default”(开发者默认)
    * 一路点击 “Next” 直到安装完成
  • 配置
    * 设置 root 用户密码(务必牢记!)
    * 其他选项保持默认
    * 完成配置
  • 验证
    * 打开 MySQL Command Line Client
    * 输入设置的 root 密码
    * 看到 mysql> 提示符即表示成功
  • 方式二:云服务器MySQL安装

Ubuntu/Debian:

sudo aptupdate
sudo apt install mysql-server -y
sudosystemctl start mysql
sudo systemctl enable mysql

CentOS/RHEL:

sudo yum install mysql-server -y
# 或对于新版本:sudo dnf install mysql-server -y
sudosystemctl start mysqld
sudo systemctl enable mysqld

连接服务器

mysql -h 127.0.0.1 -P 3306 -u root -p
Enter password: ****
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.21-log MySQL Community Server (GPL)
Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>

服务器,数据库,表关系

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

使用案例

  • 创建数据库
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;

MySQL架构

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

存储引擎

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

查看存储引擎

show engines;

在这里插入图片描述

存储引擎对比

在这里插入图片描述

http://www.dtcms.com/a/610141.html

相关文章:

  • 品牌营销型网站建设策划工程在哪个网站做推广比较合适
  • 安卓 4.4.2 电视盒子 ADB 设置应用开机自启动
  • 绝对值伺服“编码器计数值溢出“保护报警
  • 小程序下载图片问题处理
  • 网站首页被k网站信息同步
  • 线性代数 - 叉积的分量形式与矩阵形式
  • 做网站业务的 怎么跑客户元氏网站制作
  • 2025-11-14 学习记录--Python-特征归一化方法(Min-Max或StandardScaler)
  • 一款基于鲁班猫和STM32的自主导航实践
  • Cognex VisionPro 相机工具集成代码分析笔记
  • 五大3D软件深度横评:Maya、3DMax、Cinema 4D、Houdini与Blender
  • 网站可以不备案有口碑的武进网站建设
  • 重庆建网站 私单建设银行人力资源系统网站怎么进
  • 基于ADP自适应动态规划算法的控制系统matlab性能仿真,采用RNN进行控制对象参数辨识
  • 宝塔面板建站教程中国建设银行北京天竺支行网站
  • 本地建站教程企业邮箱邮箱
  • 开源的力量:如何用开源技术构建高效IT架构?
  • 如何降低程序的时间复杂度,提高运行时效?
  • openEuler系统下sudo权限配置与使用指南
  • 一个网站好不好做网站赔钱了
  • 受欢迎的丹阳网站建设有哪些调查网站可以做兼职
  • 品牌型网站成功案例图片网站建设的流程分析
  • 手机网站用什么域名潍坊网站建设 世纪环球16楼
  • 17、grafana安装
  • 2025年蚌埠市“三首产品”、市级服务型制造示范、市级企业技术中心等5个项目认定申报指南大全
  • 做一个个人主页的网站怎么做房地产销售段子
  • 个人网站定制国内免费的短视频素材网站
  • 1999-2023年 微观企业劳动生产率数据
  • 二手书店网站建设规划书网站域名 过期
  • 选择Rust的理由:从内存管理到抛弃抽象