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

MySQL8 安装教程

一、从官网下载mysql-8.0.18-winx64.zip安装文件(

从 https://dev.mysql.com/downloads/file/?id=484900 下载zip版本安装包 mysql-8.0.18-winx64.zip 解压到本地磁盘中,例如解压到:D盘根目录,并改名为MySQL

mysql-8.0.34-winx64和Navicat Premium 12需要安装包的可以私信我找我要

(以下均为个人安装操作,其他操作者需要对电脑文件夹有些基础了解)


解压后D:\Software\MySQL\mysql-8.0.34-winx64目录中文件列表如下:(Software文件夹是我存放软件的地方)

在D:\Software\MySQL\mysql-8.0.34-winx64目录中新建 data 目录(用于存放数据。也可以将数据文件存放在其他目录,可通过MySQL的配置文件my.ini指定)

二、编写MySQL配置文件(my.ini)

在MySQL的根目录(例如:D:\MySQL)新建 my.ini 文件(注意后缀名为ini,不是txt),D:\Software\MySQL\mysql-8.0.34-winx64\my.ini 文件内容如下:

[mysqld]
# 设置3306端口
port=3306
# 设置MySQL的安装目录
basedir=D:\Software\MySQL\mysql-8.0.34-winx64
# 设置MySQL的数据存放目录
datadir=D:\Software\MySQL\mysql-8.0.34-winx64\data
# 允许最大连接数
max_connections=200
# 允许连接失败的次数
max_connect_errors=10
# 服务端使用的字符集默认为UTF8
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
default_authentication_plugin=mysql_native_password
# 安装完成,在命令行运行: mysql -u root -p
# 使用初始密码登录后
# 修改密码:ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_passwordBY 'lilibo';
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
# 控制导出文件目录:值为 null 表示禁止;
# 如果有文件夹目录,则只允许该目录下文件(子目录也不行);
# 如果为空"",则不限制目录
secure_file_priv=
[mysql]
# 设置MySQL客户端默认字符集
default-character-set=utf8
[client]
# 设置MySQL客户端连接服务端时默认使用的端口
port=3306
# 设置MySQL客户端连接服务端时默认使用的字符集
default-character-set=utf8

根据注释说明进行配置,值得注意的是这两项:

basedir 设置MySQL的安装目录

datadir 设置MySQL的数据存放目录

三、配置Windows系统环境变量

系统环境变量 Path 中添加MySQL的bin目录,目的是在系统命令行界面的任意位置可执行MySQL命令根据自己的安装情况进行修改,例如:D:\Software\MySQL\mysql-8.0.34-winx64\bin)

四、初始化安装

按Win键t弹出“开始框”,输入 cmd 以管理员身份运行在出现的黑色窗口 “命令提示符” 上点右键,选择 “以管理员身份运行”,或者在命令提示符面板中选择 “以管理员身份运行”。一定要以管理员身份运行,否则安装不成功!!!)命令行:

在命令提示符界面输入以下内容:

C:\Windows\System32> D:D:\> cd Software\MySQL\mysql-8.0.34-winx64\binD:\Software\MySQL\mysql-8.0.34-winx64\bin>mysqld --initialize --console
2024-11-16T01:15:45.194126Z 0 [System] [MY-013169] [Server] D:\Software\MySQL\mysql-8.0.34-winx64\bin\mysqld.exe (mysqld 8.0.34) initializing of server in progress as process 18544
2024-11-16T01:15:45.210795Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
2024-11-16T01:15:45.723052Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
2024-11-16T01:15:47.165387Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: (yi43DHAe2+xD:\Software\MySQL\mysql-8.0.34-winx64\bin>

命令说明:
# 切换盘符(如果MySQL安装在C盘就不需要切换盘符了)
D:
# 切换目录(进入MySQL\bin目录,MySQL的可执行文件都存放在这里)
cd D:\Software\MySQL\mysql-8.0.34-winx64\bin
# 执行初始化安装(一条命令就安装完成!如果安装失败,只需要清空data目录中的所有内容再执行初始化安装即可)
mysqld --initialize --console

执行完初始化安装命令:mysqld --initialize --console 后,在输出的日志中找到初始密码!初始密码是 root@localhost: 后面的 “(yi43DHAe2+x”
每一次的密码都不一样,一定要把这个密码记录下来,第一次登陆MySQL时会用到(否则无法登陆!

不要关闭提示命令符命令!!!

演示结果:

五、安装MySQL服务

D:\Software\MySQL\mysql-8.0.34-winx64\bin>mysqld -install
Service successfully installed.D:\Software\MySQL\mysql-8.0.34-winx64\bin>net start mysql
MySQL 服务正在启动 .
MySQL 服务已经启动成功。

命令说明:
# 安装MySQL服务
mysqld --install
# 输出提示 Service successfully installed. 表示安装成功
# 启动MySQL服务
net start mysql
MySQL 服务正在启动。
MySQL 服务已经启动成功。
 

演示结果:

如果出现以上提示,恭喜你,MySQL安装成功!!!完结撒花才怪
 

注意:如果安装失败,按以下步骤重新安装:

1. 清空D:\Software\MySQL\mysql-8.0.34-winx64\data目录下的所有内容。
2. 使用下面的命令删除旧的MySQL服务:

D:\Software\MySQL\mysql-8.0.34-winx64\bin> sc delete mysql

然后回到第四步,进行初始化、安装。

六、修改MySQL初始密码

1. 安装完成,在命令提示符界面(前缀是D:\Software\MySQL\mysql-8.0.34-winx64\bin)运行以下命令(回车)

演示过程:

输入 cmd 回车


 

复制/输入命令:mysql -u root -p 

再 复制/输入 第四步保存的“初始密码”(显示为星号是正常的,按回车)登录MySQL

D:\Software\MySQL\mysql-8.0.34-winx64\bin> mysql -u root -p

演示过程:登录MySQL

2. 登陆成功后,在MySQL命令行界面(前缀是MySQL>),输入以下命令修改MySQL密码(MySQL v8.0对应的命令,其他版本略有不同。后面的'LiuYuhao'请更改为你想设置的密码)确认无误后回车,显示OK!

mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'LiuYuhao';

修改密码演示过程:

重新加载用户权限,确保服务器立即使用最新的权限设置。

MySQL> FLUSH PRIVILEGES;

退出

MySQL> quit;

演示结果:

七、使用客户端工具连接数据库

解压Navicat Premium 12.zip到一个空目录中,双击navicat.exe程序运行即可!(可以发送到桌面快捷方式或者固定到开始屏幕方便下次使用)

该版本已经破解(仅供学习交流之用 - 禁止用于商业用途)

点击连接,选择MySQL...

填写连接名(自己标记一个名字而已,localhost表示本机)

点击“连接测试”,提示连接成功,说明客户端已经可以连接MySQL数据库了

八、创建一个新的数据库

从“我的连接”列表中找到localhost双击打开连接,点右键“新建数据库”就可以开始创建一个数据库了


填写数据库名称,下面的字符集选择utf8mb4,排序规则选择utf8mb4_general_ci

点击确定,一个新的数据库创建完成

到此为止,数据库相关的准备工作已经完成。接下来就可以在数据库中尽情玩耍了!

完结撒花!!!

相关文章:

MySQL8 安装教程

一、从官网下载mysql-8.0.18-winx64.zip安装文件( 从 https://dev.mysql.com/downloads/file/?id484900 下载zip版本安装包 mysql-8.0.18-winx64.zip 解压到本地磁盘中,例如解压到:D盘根目录,并改名为MySQL mysql-8.0.34-winx6…...

聚焦 NLP 和生成式 AI 的创新与未来 基础前置知识点

给学生们讲解的技术内容可以根据他们的背景、兴趣和教学目标来规划。以下是一些适合不同阶段和领域的技术主题建议,尤其是与大语言模型(如 ChatGPT)相关的内容: 1. 自然语言处理(NLP)基础 适合对 NLP 了解…...

23种设计模式-访问者(Visitor)设计模式

文章目录 一.什么是访问者模式?二.访问者模式的结构三.访问者模式的应用场景四.访问者模式的优缺点五.访问者模式的C实现六.访问者模式的JAVA实现七.代码解释八.总结 类图: 访问者设计模式类图 一.什么是访问者模式? 访问者模式(…...

ssm150旅游网站的设计与实现+jsp(论文+源码)_kaic

毕 业 设 计(论 文) 题目:旅游网站设计与实现 摘 要 现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本旅游网站就是在这样的大…...

【SKFramework框架】一、框架介绍

推荐阅读 CSDN主页GitHub开源地址Unity3D插件分享QQ群:398291828小红书小破站 大家好,我是佛系工程师☆恬静的小魔龙☆,不定时更新Unity开发技巧,觉得有用记得一键三连哦。 一、前言 【Unity3D框架】SKFramework框架完全教程《全…...

Arcgis地图实战三:自定义导航功能的实现

文章目录 1.最终效果预览2.计算两点之间的距离3.将点线画到地图上4.动态展示点线的变化5.动态画线6.动态画点 1.最终效果预览 2.计算两点之间的距离 let dis this.utilsTools.returnDisByCoorTrans(qdXYData, zdXYData, "4549")当距离小于我们在配置文件中预设置的…...

LLaMA-Factory 上手即用教程

LLaMA-Factory 是一个高效的大型语言模型微调工具,支持多种模型和训练方法,包括预训练、监督微调、强化学习等,同时提供量化技术和实验监控,旨在提高训练速度和模型性能。 官方开源地址:https://github.com/hiyouga/L…...

黑马点评 秒杀下单出现的问题:服务器异常---java.lang.NullPointerException: null(已解决)

前言: 在此之前找了好多资料,查了很多,都没有找到对应解决的方法,虽然知道是userid为空,但不知道要修改哪里,还是自己的debug能力不足,以后得多加练习。。。 问题如下: 点击限时抢…...

购物街项目TabBar的封装

1.TabBar介绍 在购物街项目中 不论页面如何滚动 始终存在一个TabBar固定在该项目的底部 他在该项目中 扮演者选项卡栏的角色 内部存在若干选项 而选项中 固定存在两部分(图片文本) 其中主要涉及到TabBar/TabBarItem这些和业务无关的共享组件(建议存放于components/common中)、…...

C++游戏开发面试题及参考答案

目录 在游戏开发中,为什么选择 C++ 作为编程语言? 为什么 C++ 语言更适合游戏开发? 描述游戏中的碰撞检测的基本原理。 解释游戏中的碰撞检测机制,并用 C++ 举例说明如何实现。 描述游戏中的物理模拟的基本原理。 阐述游戏中的物理模拟,如重力模拟在 C++ 中的实现方…...

字符串的基本操作(C语言版)

一、实验内容: 采用顺序结构存储串,编写一个函数substring(strl,str2),用于判定str2是否为strl的子串;编写一个函数,实现在两个已知字符串中找出所有非空最长公共子串的长度和最长公共子串的个数; ①字符…...

C缺陷与陷阱 — 7 可移植性缺陷

目录 1 应对C语言标准变更 2 标识符的名称限制 3 整数的大小 4 字符是有符号整数还是无符号整数 5 移位运算符 6 内存位置0 7 除法运算时发生的截断 1 应对C语言标准变更 使用新特性可以使代码更容易编写且减少错误,但可能会导致代码在旧编译器上无法编译。…...

应急响应:玄机_Linux后门应急

https://xj.edisec.net/challenges/95 11关做出拿到万能密码,ATMB6666,后面都在root权限下操作 1、主机后门用户名称:提交格式如:flag{backdoor} cat /etc/passwd,发现后门用户 flag{backdoor} 2、主机排查项中可以…...

C++:捕获 shared_from_this()和捕获this的区别

两种方法的主要区别在于对象的生命周期管理以及捕获方式的不同。以下是对两种方法的详细对比&#xff1a; 第一种&#xff1a;捕获 shared_from_this() 的方法 event.subscribe([self shared_from_this()]() {std::cout << "Event triggered, object is alive.&qu…...

网络协议之TCP

一、定义 TCP&#xff08;Transmission Control Protocol&#xff0c;传输控制协议&#xff09;是一种面向连接的、可靠的、基于字节流的传输层通信协议&#xff0c;由IETF的RFC 793定义。TCP旨在适应支持多网络应用的分层协议层次结构。在因特网协议族&#xff08;Internet p…...

《澳鹏AI全景报告2024》分析最新的数据挑战

华盛顿州柯克兰市&#xff0c;2024 年 10 月 22 日 —— Appen Limited&#xff08;澳大利亚证券交易所代码&#xff1a;APX&#xff09;&#xff0c;一家为人工智能生命周期提供高质量数据的领先供应商&#xff0c;发布了其《2024 年人工智能现状报告》。该报告对美国多个行业…...

【Java每日面试题】—— String、StringBuilder和StringBuffer的区别?

1、String 不可变性:String对象创建后不可变,内容不能被修改,对字符串修改会产生一个新的字符串对象。 线程:线程安全 适用:字符串内容不发生变化或少量字符串操作 String str = "Hello"; str = str + " World"; 2、StringBuffer 不可变性:对…...

【设计模式】【创建型模式(Creational Patterns)】之单例模式

单例模式是一种常用的创建型设计模式&#xff0c;其目的是确保一个类只有一个实例&#xff0c;并提供一个全局访问点。 单例模式的原理 单例模式的核心在于控制类的实例化过程&#xff0c;通常通过以下方式实现&#xff1a; 私有化构造函数&#xff0c;防止外部直接实例化。…...

form表单的使用

模板 <template><el-form :model"formData" ref"form1Ref" :rules"rules"><el-form-item label"手机号" prop"tel"><el-input v-model"formData.tel" /></el-form-item><el-f…...

PDF内容提取,MinerU使用

准备环境 # python 3.10 python3 -m pip install huggingface_hub python3 -m pip install modelscope python3 -m pip install -U magic-pdf[full] --extra-index-url https://wheels.myhloli.com下载需要的模型 import json import osimport requests from huggingface_hub…...

(LeetCode 每日一题) 3442. 奇偶频次间的最大差值 I (哈希、字符串)

题目&#xff1a;3442. 奇偶频次间的最大差值 I 思路 &#xff1a;哈希&#xff0c;时间复杂度0(n)。 用哈希表来记录每个字符串中字符的分布情况&#xff0c;哈希表这里用数组即可实现。 C版本&#xff1a; class Solution { public:int maxDifference(string s) {int a[26]…...

挑战杯推荐项目

“人工智能”创意赛 - 智能艺术创作助手&#xff1a;借助大模型技术&#xff0c;开发能根据用户输入的主题、风格等要求&#xff0c;生成绘画、音乐、文学作品等多种形式艺术创作灵感或初稿的应用&#xff0c;帮助艺术家和创意爱好者激发创意、提高创作效率。 ​ - 个性化梦境…...

mongodb源码分析session执行handleRequest命令find过程

mongo/transport/service_state_machine.cpp已经分析startSession创建ASIOSession过程&#xff0c;并且验证connection是否超过限制ASIOSession和connection是循环接受客户端命令&#xff0c;把数据流转换成Message&#xff0c;状态转变流程是&#xff1a;State::Created 》 St…...

Qt Widget类解析与代码注释

#include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this); }Widget::~Widget() {delete ui; }//解释这串代码&#xff0c;写上注释 当然可以&#xff01;这段代码是 Qt …...

2.Vue编写一个app

1.src中重要的组成 1.1main.ts // 引入createApp用于创建应用 import { createApp } from "vue"; // 引用App根组件 import App from ./App.vue;createApp(App).mount(#app)1.2 App.vue 其中要写三种标签 <template> <!--html--> </template>…...

Java多线程实现之Callable接口深度解析

Java多线程实现之Callable接口深度解析 一、Callable接口概述1.1 接口定义1.2 与Runnable接口的对比1.3 Future接口与FutureTask类 二、Callable接口的基本使用方法2.1 传统方式实现Callable接口2.2 使用Lambda表达式简化Callable实现2.3 使用FutureTask类执行Callable任务 三、…...

Java-41 深入浅出 Spring - 声明式事务的支持 事务配置 XML模式 XML+注解模式

点一下关注吧&#xff01;&#xff01;&#xff01;非常感谢&#xff01;&#xff01;持续更新&#xff01;&#xff01;&#xff01; &#x1f680; AI篇持续更新中&#xff01;&#xff08;长期更新&#xff09; 目前2025年06月05日更新到&#xff1a; AI炼丹日志-28 - Aud…...

【决胜公务员考试】求职OMG——见面课测验1

2025最新版&#xff01;&#xff01;&#xff01;6.8截至答题&#xff0c;大家注意呀&#xff01; 博主码字不易点个关注吧,祝期末顺利~~ 1.单选题(2分) 下列说法错误的是:&#xff08; B &#xff09; A.选调生属于公务员系统 B.公务员属于事业编 C.选调生有基层锻炼的要求 D…...

实现弹窗随键盘上移居中

实现弹窗随键盘上移的核心思路 在Android中&#xff0c;可以通过监听键盘的显示和隐藏事件&#xff0c;动态调整弹窗的位置。关键点在于获取键盘高度&#xff0c;并计算剩余屏幕空间以重新定位弹窗。 // 在Activity或Fragment中设置键盘监听 val rootView findViewById<V…...

有限自动机到正规文法转换器v1.0

1 项目简介 这是一个功能强大的有限自动机&#xff08;Finite Automaton, FA&#xff09;到正规文法&#xff08;Regular Grammar&#xff09;转换器&#xff0c;它配备了一个直观且完整的图形用户界面&#xff0c;使用户能够轻松地进行操作和观察。该程序基于编译原理中的经典…...