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

MySQL(安装和卸载、数据库存储原理图)

一、MySQL的安装和卸载

1.安装 MySQL(压缩版)

(1)解压文件到指定目录下(路径不能出现中文),在安装目录中创建 data 文件夹和配置文件 my.ini。

(2)配置文件 my.ini

[mysqld]
# skip_grant_tables
# 设置3306端口
port=3306
# 设置mysql的安装目录
basedir=D:\\MySQL\\mysql-8.0.26-winx64
# 设置mysql数据库的数据的存放目录
datadir=D:\\MySQL\\mysql-8.0.26-winx64\\data
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10
# 服务端使用的字符集默认为UTF8
character-set-server=utf8mb4
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
default_authentication_plugin=mysql_native_password

[client]
#password = your_password
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8mb4

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8mb4

(3)配置环境变量

粘贴 mysql 安装目录下的 bin 目录

(4)以管理员身份运行 cmd

mysqld --initialize --console:记录第一次初始化的密码(2Zf!8S-HZzUp)

mysqld --install mysql服务名:安装 mysql 服务

sc delete mysql服务名:删除 mysql 服务

mysql -uroot -p:登录 mysql,

alter user root@localhost identified by "密码":修改临时密码为自己的密码。

然后用修改后的密码重新登录 mysql,登录进去便成功。

2.卸载 MySQL

(1)关闭 MySQL 服务

以管理员身份运行 cmd,输入 net stop mysql,关闭 MySQL服务。

(2)删除 MySQL 服务

输入 sc delete mysql,删除MySQL 服务。

(3)卸载、删除

win+R 输入 control 打开控制面板,点击卸载程序,选择与 MySQL 相关的程序全部卸载。然后找到安装目录,删除文件夹(若安装在 C 盘会有隐藏文件,还需打开 ProgramFiles 和 ProgramData,找到所有与 MySQL 相关的子目录删除)。

(4)删除注册表

win+R 输入 regedit 打开注册表,找到以下文件夹删除:

HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\EventLog\Application\MySQL

HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\MySQL

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventLog\Application\MySQL

二、数据库存储原理图

1.连接层

客户端与服务端通过通信协议传输 SQL 语句,提供与 MySQL 服务器建立连接的支持。目前几乎支持所有主流的服务端编程技术,例如常见的 Java、C、Python、.NET 等,它们通过各自 API 技术与 MySQL 建立连接。

2.MySQL 服务层

(1)查询缓存:接收 SQL 后,先检查是否有 “命中规则” 的缓存结果。若有,直接返回执行结果,避免后续解析、优化等耗时操作,提升查询效率。

(2)若没有找到对应的查询结果,则需进行查询解析、优化等过程,再返回执行结果。

① 解析器:若查询缓存未命中,解析器会解析 SQL 的语法规则,确保 SQL 语句格式合法、关键词正确。

② 优化器:基于解析后的 SQL,生成最优执行计划(如选择合适的索引、确定表的连接顺序),以最高效的方式执行查询。

③ 执行器:根据优化器的计划,操作存储引擎(如 InnoDB、MyISAM)执行具体逻辑,最终返回值结果。

3.存储引擎层

存储引擎负责在 MySQL 中存储数据、提取数据,服务器通过 API 和存储引擎进行通信,API 屏蔽了不同存储引擎之间的差异 。现在有很多种存储引擎,各有各的特点,最常见的是 InnoDB 和 MyISAM。

MyISAM 和 InnoDB 的区别?

  1. 事务:MyISAM不支持事务
  2. 存储文件:innodb(frm、ibd MyISAM: frm、MYD、MYI
  3. 数据行锁定:MyISAM 不支持
  4. 全文索引:INNODB 不支持,所以 MyISAM 做 select 操作速度快
  5. 外键约束:MyISAM 不支持

两种引擎的优缺点:

InnoDB

  • 可靠性更强,或者业务需求要求使用事务时,使用 InnoDB
  • 表更新和查询相当频繁,并且表锁定的情况比较大,默认使用 InnoDB
  • 需要大量的修改和插入时,使用 InnoDB

MyISAM

  • 做很多的数据计算时,mysql 的底层系统库就是 MyISAM
  • 修改和插入不频繁时,执行大量的select查询,MyISAM 比 InnoDB 更适合
  • 不支持事务(缺点)

三、练习

根据以下需求完成图书管理系统数据库及表设计,并建库建表,截图创建表的详细信息(desc 表名),不用添加数据
1. 用户表:字段: 姓名,用户名,密码,电话,住址,专业及年级
2. 图书表:字段: 图书名,分类,介绍,出版社,入库时间
3. 借阅登记表:借阅人、图书名、借阅时间、是否归还


首先在 cmd 登录 mysql,再创建并使用 library 数据库。

1.用户表

2.图书表

3.借阅登记表

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

相关文章:

  • 明珠信息港网站建设专家建设银行签名通在网站哪里下载
  • 网站开发一般分为几个步骤好用的做网站的app
  • 阮一峰《TypeScript 教程》学习笔记——运算符
  • 协作协议(Collaborative Protocols)——下一代人机协作操作系统的工程化实践
  • I2C 驱动 --- 控制器
  • 创意网站设计团队郑州百度推广托管
  • 网盘做网站空间杭州简单网技术有限公司
  • TensorFlow学习入门
  • 强电控制器-非正常工作实验
  • 网站修改域名服务器企业静态网站
  • GitHub等平台形成的开源文化正在重塑结帖人
  • 考古并发历史(1)
  • 班级网站设计外国大气网站
  • 深拷贝浅拷贝
  • 样本与样本值
  • 无极网站网站首屏高度
  • ansible自动化运维入门篇-ansible部署
  • 如何在搜索中找到自己做的网站o2o电商交易类平台有哪些
  • Rust中错误处理机制
  • Ubuntu 24.04上安装MySQL 8.0
  • Java基于SpringBoot的高校报修与互助平台小程序【附源码、文档说明】
  • 工信部icp备案流程关键词在线优化
  • 做视频的模板下载网站ppt汇报模板免费下载
  • 10.16-10.25力扣计数刷题
  • 在K8s中部署多个ASP.NET Core实例
  • 14.如何利用ArcGIS将矢量线、面的坐标数据保存为txt
  • 网站开发者模式怎么打开做策划网站推广怎么写简历
  • zynq ttc pwm例子
  • 【底层机制】linux IO 为什么要有进程表项、文件表项、v节点表项、i节点表项
  • 怎么用wordpress修改网站源码镇江网站网站建设