【技术专题】Mysql8 数据库 - Mysql8 数据库基本操作

大家好,我是Java1234_小锋老师,最近更新 《一天学会 Mysql8 视频教程(无废话版) 》专辑,感谢大家支持。

本课程主要介绍和讲解 Mysql8简介,安装以及配置,客户端sqlyog 安装以及配置,数据库 基本操作,数据库表基本操作,查询数据,添加,修改,删除数据,索引,视图,触发器,常用函数,存储过程和函数。

视频教程+课件+源码打包下载:

链接:https://pan.baidu.com/s/1o-zRfndo1HHrS_uFroOiCw?pwd=1234

提取码:1234

Mysql8(在第一阶段目录里)

Mysql8 数据库基本操作

1,数据库简介

定义:数据库(Database)是按照数据结构来组织、存储和管理数据的仓库。

MySQL 8 特性说明:

  • 在 MySQL 8 中,数据库(Database)和模式(Schema)是同义词(CREATE DATABASE 和 CREATE SCHEMA 效果完全一样)。
  • MySQL 8 默认的字符集为 utf8mb4,默认排序规则为 utf8mb4_0900_ai_ci,能够更好地支持 Emoji 等特殊字符。

2,显示所有数据库

基本语法:

sql 复制代码
SHOW DATABASES;

操作说明:

  • SQL 语句不区分大小写(show databases; 也可以),但关键字建议大写。
  • 命令末尾必须带英文分号 ; 才能执行。
  • 执行该命令后,通常会看到 information_schema、mysql、performance_schema、sys 这四个默认的系统数据库。

默认第一次执行结果:

这四个数据库是 MySQL 安装完成后自带的系统数据库。它们分别是:

1. information_schema(信息数据库)
  • 含义 :它是一个虚拟库 (里面存放的都是视图,不是真实的物理表),主要用于存储数据库的元数据(即"关于数据的数据")。
  • 作用:记录了当前 MySQL 实例中所有数据库、表、列、索引、权限、字符集等详细结构信息。
  • 常见用途 :当你不知道某个库里有哪些表,或者某张表有哪些字段时,就可以通过查询这个库获取。例如:
    SELECT * FROM information_schema.tables WHERE table_schema = '你的数据库名';
2. mysql(核心系统数据库)
  • 含义 :MySQL 的"户口本 "和"控制中心",是最重要的系统库。
  • 作用 :存储了系统的用户账号 、密码 (加密后的)、权限设置 、存储过程、事件调度信息等。它包含了 user、db、tables_priv 等核心权限表。
  • 常见用途 :查看当前有哪些用户(SELECT user, host FROM mysql.user;),或者给用户分配权限(GRANT 语句底层就是修改这里的表)。
  • ⚠️ 警告:这个库绝对不可以随意删除或直接修改(除非你非常了解 MySQL 权限体系)。
3. performance_schema(性能模式数据库)
  • 含义:MySQL 5.5 引入的性能监控引擎。
  • 作用 :主要用于监控 MySQL 服务器的运行性能。它收集了底层的各种性能指标,比如 SQL 执行耗时、锁等待、内存分配、I/O 情况等。
  • 常见用途:DBA(数据库管理员)排查性能瓶颈、分析慢 SQL 时,会查询这个库。它默认是开启的,对性能有极微小的影响,但为了排查问题,一般不建议关闭。
4. sys(系统数据库)
  • 含义 :MySQL 5.7 引入,是对 performance_schema 和 information_schema 的高级封装。
  • 作用 :performance_schema 的数据结构非常复杂,普通开发者很难看懂。sys 库把那些复杂的底层数据,转化成了更容易阅读和理解的视图。
  • 常见用途 :比如你想看"当前哪个 SQL 最占 CPU"或者"当前有哪些会话正在阻塞",直接查询 sys 库里的视图(如 sys.session、sys.schema_table_statistics)会方便得多。

3,创建数据库

基本语法:

sql 复制代码
CREATE DATABASE 数据库名;

MySQL 8 推荐写法 :

为了防止数据库已存在而报错,通常加上 IF NOT EXISTS,并显式指定字符集。

sql 复制代码
CREATE DATABASE IF NOT EXISTS my_db 
DEFAULT CHARACTER SET utf8mb4 

4,删除数据库

基本语法:

sql 复制代码
DROP DATABASE 数据库名;

MySQL 8 推荐写法 :

为了防止删除不存在的数据库时报错,通常加上 IF EXISTS。

sql 复制代码
DROP DATABASE IF EXISTS my_db;
相关推荐
泡海椒15 分钟前
JQuick-SQL REST API 数据接入:应用层调用接口后注册分析表
数据库·sql·1024程序员节
Random Glow1 小时前
聚簇索引 vs 二级索引:回表、覆盖索引、索引下推
数据库·mysql·性能优化·innodb·1024程序员节·索引优化
要开心吖ZSH2 小时前
一次线上锁风暴复盘:号源表大范围 DELETE 的隐患与分批删除改造
数据库·mysql·行锁·1024程序员节·间隙锁·lockwaittimeout
l1t3 小时前
在windows中测试musql数据库
数据库·sqlite·go·1024程序员节
鬼手点金3 小时前
从 API 消息到模型 Token:Chat Template
java·前端·javascript·数据库·人工智能·深度学习·1024程序员节
CRMEB系统商城4 小时前
Redis + 消息队列 + 连接池:CRMEB PRO 性能优化的三驾马车
大数据·数据库·人工智能·小程序·php·1024程序员节
鸽芷咕4 小时前
KingbaseES SQL 调优六步法:定位、诊断、下药、验证,一步都别省
数据库
黄俊懿4 小时前
【架构师从入门到进阶】第七章:缓存和存储的优化思路——第一节:缓存概述
数据结构·数据库·分布式·缓存·架构·系统架构·1024程序员节
John_Hui5 小时前
MySQL 进阶知识
数据库·sql·mysql·1024程序员节