[2024最新]MySQL-mysql 8.0.11安装教程

网上的教程有很多,基本上大同小异。但是安装软件有时就可能因为一个细节安装失败。我也是综合了很多个教程才安装好的,所以本教程可能也不是普遍适合的。

安装环境:win 10

1、下载zip安装包:

MySQL8.0 For Windows zip包下载地址:

https://dev.mysql.com/downloads/file/?id=476233进入页面后可以不登录。后点击底部“No thanks, just start my download.”即可开始下载。

2、安装

2.1 解压zip包到安装目录

我的解压在了E:\software\mysql\mysql-8.0.11-winx64

c44035f0de0e48289a8d346b00d213c0.png

 

解压后的文件目录

2.2 配置环境变量

88aee30a56d14288a1553a6d9ac27be7.png

 

将解压文件夹下的bin路径添加到变量值中,前后以 ; 开头结尾,例如下面这样:

;E:\software\mysql\mysql-8.0.11-winx64\bin;

2.3 配置初始化的my.ini文件

 我们发现解压后的目录并没有my.ini文件,没关系可以自行创建。在安装根目录下添加 my.ini(新建文本文件,将文件类型改为.ini),写入基本配置:

可以直接复制下面这段,注意与自己的路径保持一致

[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录
basedir=E:\\software\\mysql\\mysql-8.0.11-winx64   # 切记此处一定要用双斜杠\\,单斜杠我这里会出错,不过看别人的教程,有的是单斜杠。自己尝试吧,路径保持一致!
# 设置mysql数据库的数据的存放目录
datadir=E:\\software\\mysql\\mysql-8.0.11-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]
# 设置mysql客户端默认字符集
default-character-set=utf8
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8

c42993e999134f4898e49ceedd77628c.png

 

注意:其中的data目录不需要创建,下一步初始化工作中会自动创建。

3、安装mysql

在安装时,必须以管理员身份运行cmd,否则在安装时会报错,会导致安装失败的情况

201b6769625d4efca8864905fc619afb.png

 

3.1 初始化数据库

在MySQL安装目录的 bin 目录下执行如下命令:

mysqld --initialize --console

执行完成后,会打印 root 用户的初始默认密码,比如:

C:\Users\Administrator>cd C:\Program Files\MySQL\bin

C:\Program Files\MySQL\bin>mysqld --initialize --console
2018-04-28T15:57:17.087519Z 0 [System] [MY-013169] [Server] C:\Program Files\MySQL\bin\mysqld.exe (mysqld 8.0.11) initializing of server in progress as process 4984
2018-04-28T15:57:24.859249Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: rI5rvf5x5G,E
2018-04-28T15:57:27.106660Z 0 [System] [MY-013170] [Server] C:\Program Files\MySQL\bin\mysqld.exe (mysqld 8.0.11) initializing of server has completed

C:\Program Files\MySQL\bin>

注意!执行输出结果里面有如下一段(上面加深颜色): [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: rI5rvf5x5G,E 其中root@localhost:后面的“rI5rvf5x5G,E”就是初始密码(不含首位空格)。在没有更改密码前,需要记住这个密码,后续登录需要用到

要是你手贱,关快了,或者没记住,那也没事,删掉初始化的 datadir 目录,再执行一遍初始化命令,又会重新生成的。当然,也可以使用安全工具,强制改密码,用什么方法,自己随意。

参考:https://dev.mysql.com/doc/refman/8.0/en/data-directory-initialization-mysqld.html

3.2 安装服务

在MySQL安装目录的 bin 目录下执行命令:

mysqld --install [服务名]

后面的服务名可以不写,默认的名字为 mysql。当然,如果你的电脑上需要安装多个MySQL服务,就可以用不同的名字区分了,比如 mysql5 和 mysql8。

安装完成之后,就可以通过命令   net start mysql启动MySQL的服务了。通过命令   net stop mysql停止服务。通过命令     sc delete MySQL/mysqld -remove卸载 MySQL 服务

b59359b507334e8eb9a08965a2330d58.png

 

 4、更改密码

在MySQL安装目录的 bin 目录下执行命令:

mysql -u root -p
这时候会提示输入密码,记住了上面第3.1步安装时的密码,填入即可登录成功,进入MySQL命令模式。

9b4e1fa592794f79bd9d22ae05d6fc72.png 

在MySQL中执行命令:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';  

修改密码,注意命令尾的;一定要有,这是mysql的语法

例如设置密码为root :    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';  

到此,安装部署就完成了。官方说测试速度MySQL8比5快两倍。

亲,如果对您有帮助,麻烦动动爪爪点个赞喽☺

接下来,下面的内容就可看可不看了,哈哈😊

可以用 命令查看一下默认安装的数据库:

show databases;

use mysql;

show tables;

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.01 sec)

mysql>

看到默认初始化了mysql数据库,其中user表里面存储MySQL用户信息。我们可以看一下默认MySQL用户:

 select user,host,authentication_string from mysql.user;

mysql> select user,host,authentication_string from mysql.user;
+------------------+-----------+-------------------------------------------+
| user             | host      | authentication_string                     |
+------------------+-----------+-------------------------------------------+
| mysql.infoschema | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
| mysql.session    | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
| mysql.sys        | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
| root             | localhost | *27C237A977F4F44D3F551F1A673BE14DFD232961 |
+------------------+-----------+-------------------------------------------+
4 rows in set (0.00 sec)

mysql>

管理员root的host是localhost,代表仅限localhost登录访问。如果要允许开放其他ip登录,则需要添加新的host。如果要允许所有ip访问,可以直接修改成“%

创建用户:

CREATE USER 'xxh'@'%' IDENTIFIED WITH mysql_native_password BY 'xxh123!@#';

#(需要注意:mysql8.0加密方式修改了)
#检查用户

select user, host, plugin, authentication_string from user\G;

授权远程数据库

#授权所有权限 
GRANT ALL PRIVILEGES ON *.* TO 'xxh'@'%';
#授权基本的查询修改权限,按需求设置
GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTER ON *.* TO 'xxh'@'%';

查看用户权限
show grants for 'xxh'@'%';

示例:

mysql> use mysql;
Database changed
mysql> CREATE USER 'xxh'@'%' IDENTIFIED WITH mysql_native_password BY 'xxh123!@#'; #创建用户(注意:mysql8.0加密方式修改了)
Query OK, 0 rows affected (0.07 sec)
mysql> 

查看密码加密方式:

mysql> select user, host, plugin, authentication_string from user;
+------------------+-----------+-----------------------+-------------------------------------------+
| user             | host      | plugin                | authentication_string                     |
+------------------+-----------+-----------------------+-------------------------------------------+
| xxh              | %         | mysql_native_password | *70FD6FB4F675E08FF785A754755B5EBA6DA62851 |
| mysql.infoschema | localhost | mysql_native_password | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
| mysql.session    | localhost | mysql_native_password | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
| mysql.sys        | localhost | mysql_native_password | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
| root             | localhost | mysql_native_password | *27C237A977F4F44D3F551F1A673BE14DFD232961 |
+------------------+-----------+-----------------------+-------------------------------------------+
5 rows in set (0.00 sec)

mysql>

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/536270.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

redis复习笔记08(小滴课堂)

案例实战需求之大数据下的用户画像标签去重 我们就简单的做到了去重了。 案例实战社交应用里面之关注、粉丝、共同好友案例 这就是我们set的一个应用。 案例实战之SortedSet用户积分实时榜单最佳实践 准备积分类对象: 我们加上构造方法和判断相等的equals和hascod…

【网安小白成长之路】6.pikachu、sql-labs、upload-labs靶场搭建

🐮博主syst1m 带你 acquire knowledge! ✨博客首页——syst1m的博客💘 🔞 《网安小白成长之路(我要变成大佬😎!!)》真实小白学习历程,手把手带你一起从入门到入狱🚭 &…

关于SpringCloud,你了解多少?

Why SpringCloud? Spring cloud 是一系列框架的有序集合。它利用 spring boot 的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以用 spring boot 的开发风格做到一…

快速列表quicklist

目录 为什么使用快速列表quicklist 对比双向链表 对比压缩列表ziplist quicklist结构 节点结构quicklistNode quicklist 管理ziplist信息的结构quicklistEntry 迭代器结构quicklistIter quicklist的API 1.创建快速列表 2.创建快速列表节点 3.头插quicklistPushHead …

加固系统安全,防范ssh暴力破解之Fail2Ban

你是否还在担心你的服务器被攻击?你是否还在担心你的博客的安全?你是否还在担心你的隐私?别急fail2ban它来了,它可以解决你的一切问题。 Fail2Ban 是什么? 现在让我们一起来认识一下今天的主角 – Fail2Ban。简单说来…

浅析hex和bin文件格式以及使用Keil编译生成hex和bin文件

目录 概述 1 hex文件和bin文件 1.1 认识.hex文件 1.1.1 hex文件内容 1.1.2 hex文件格式介绍 1.1.3 认识几个数据类型 1.2 .bin文件 2 Keil 开发工具生成.hex和.bin 2.1 生成.hex文件 2.2 生成.bin文件 概述 本位主要介绍.hex文件和.bin文件的相关内容,重点…

Python+Django+Html网页版人脸识别考勤打卡系统

程序示例精选 PythonDjangoHtml人脸识别考勤打卡系统 如需安装运行环境或远程调试,见文章底部个人QQ名片,由专业技术人员远程协助! 前言 这篇博客针对《PythonDjangoHtml网页版人脸识别考勤打卡系统》编写代码,代码整洁&#xf…

【Ubuntu】 Github Readme导入GIF

1.工具安装 我们使用 ffmpeg 软件来完成转换工作1.1 安装命令 sudo add-apt-repository ppa:jonathonf/ffmpeg-3sudo apt-get updatesudo apt-get install ffmpeg1.2 转换命令 (1)直接转换命令: ffmpeg -i out.mp4 out.gif(2) 带参数命令&…

怎么在外地控制自家的电视

怎么在外地控制自家的电视 随着科技的进步和智能家居的普及,远程控制家中的电器设备已经成为现实。电视作为家庭娱乐的中心,远程控制功能更是备受关注。那么,如何在外地控制自家的电视呢?本文将为你提供详细的步骤和有价值的信息…

中国网站数量竟然比2022年多了10000个

关注卢松松,会经常给你分享一些我的经验和观点。 CNNIC发布了最新中国互联网报告,报告显示: 2018年中国有523万个网站,2023年13月下降到388万个,5年时间网站数量下降30%,但相比于2022年12月,竟…

Java后端基础知识(String类型)

String类的创建方式 String的特点 1.引用数据类型 2.是final类,一旦创建内容不可修改 3.String类对象相等的判断用equals()方法完成,是判断地址数值 String的创建方式 1.直接创建 String str"hello";注意&#xff…

【ELFK】Filebeat+ELK 部署

FilebeatELK 部署 Node1节点(2C/4G):node1/192.168.67.11 Elasticsearch Kibana Node2节点(2C/4G):node2/192.168.67.12 Elasticsearch Apache节点:apache/192.168.67.10 …

二叉树的前序

1.递归 public boolean isSymmetric(TreeNode root) {if(root null){return true;}return deepCheck(root.left,root.right);}boolean deepCheck(TreeNode left, TreeNode right){//递归的终止条件是两个节点都为空//或者两个节点中有一个为空//或者两个节点的值不相等if(lef…

DePIN打猎之旅:AI算力作饵,道阻且长

出品|OKG Research 作者|Hedy Bi 香港Web3嘉年华已告一段落,然而Web3自由的脉搏还在跳动,并不断向其他行业渗透。和上一轮周期相比,本轮牛市开启的逻辑是由“原生创新叙事”转变成“主流认可,资金驱动”的…

ios包上架系列 四、虚拟机涉及网站

一、网站相关 苹果开发者平台 https://developer.apple.com/ 谷歌邮箱 https://mail.google.com/mail/u/0/#inbox 微云在线或者安装QQ https://www.weiyun.com/disk 下载下的为zip文件,需要复制里面的内容出来使用 二、环境配置 1、ios-upload 配置&#x…

水利自动化控制系统平台介绍

水利自动化控制系统平台介绍 在当今社会,水资源的管理和保护日益成为全球关注的重要议题。随着科技的进步和信息化的发展,水利监测系统作为一种集成了现代信息技术、自动化控制技术以及环境监测技术的综合性平台,正在逐步改变传统的水利管理模…

【Dijkstra单源最短路径解法】蓝桥杯2022年第十三届决赛真题-出差

我也来贡献一份题解:Dijkstra单源最短路径的简单变式【简单C代码】 这道题的前置知识的Dijkstra单源最短路径算法 如果还没学过,建议去看AcWing算法教程的**图论(2)**中最短路径问题的讲解,u1s1–y总讲的是真的通透! 思路 这道题和单源最短路…

IJKPLAYER源码分析-iOS端显示

1 简介 1.1 EAGL(Embedded Apple Graphics Library) 与Android系统使用EGL连接OpenGL ES与原生窗口进行surface输出类似,iOS则用EAGL将CAEAGLLayer作为OpenGL ES输出目标。 与 Android EGL 不同的是,iOS EAGL 不会让应用直接向 BackendFrameBuffer 和 F…

Socks5代理IP如何获取?如何使用?

当我们在互联网上浏览网页、下载文件或者进行在线活动时,隐私和安全问题常常被提及。在这样的环境下,一个有效的解决方案是使用Sock5IP。本教程将向您介绍Sock5IP的使用方法,帮助您保护个人隐私并提升网络安全。 一、什么是Sock5IP&#xff1…

Elasticsearch部署安装

环境准备 Anolis OS 8 Firewall关闭状态,端口自行处理 Elasticsearch:7.16.1(该版本需要jdk11) JDK:11.0.19 JDK # 解压 tar -zxvf jdk-11.0.19_linux-x64_bin.tar.gz# 编辑/etc/profile vim /etc/profile# 加入如下…