MySQL8安装教程及问题解决
1、下载MySQL的zip文件,解压,在根目录(bin所在的目录)下创建my.ini文件

ini.py文件:
[client]
default-character-set=utf8
[mysqld]
port = 3306
basedir=D:\mysql-8.0.22-winx64
# datadir=D:\mysql-8.0.22-winx64\data
max_connections=20
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8MB4
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
注:文件里面不要放“skip-grant-tables”这句话,这是跳过密码登入的语句,如果加了会使电脑打不开MySQL服务器(一启动就关闭,亲身经历过!!!)
2、管理员模式打开命令提示符(shell或者说小黑窗),按以下命令操作。
d: # 根目录切换不需要用 cd
cd D:\mysql-8.0.22-winx64 # 切换到MySQL下载的根目录
注:我这里配置环境变量(即把 bin 目录的绝对路径加到系统变量的 path 变量下)没有用,只能切换目录。你们可以试一下!
mysqld --initialize --console # 初始化数据库,--console 可以查看日志文件,如果出错也可以翻译下,然后按它的要求解决,最好加上--console好排查问题。
这是初始化成功的标志:
2021-03-26T05:39:51.494723Z 0 [System] [MY-013169] [Server] D:\mysql-8.0.22-winx64\bin\mysqld.exe (mysqld 8.0.22) initializing of server in progress as process 14960
2021-03-26T05:39:51.512804Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
2021-03-26T05:39:52.562462Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
2021-03-26T05:39:55.092666Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: +PjKg9gljJ?y
这时产生一个随机十二位数密码(复制密码,下面要用。):
A temporary password is generated for root@localhost: APWCY5ws&hjQ
mysqld install # 安装MySQL
启动服务器:
net start mysql
登入:
mysql -u root -P3306 -p
注:
- /-u:登入身份,root表本机
- /-P:端口号
- /-p:密码
然后提示输入密码:Enter password:
输入之前的随机密码,回车,如果不出意外就进入到mysqld的交互模式(mysql>)了,这个时候就能输入MySQL语句以分号结束进行数据库操作了。
3、不过......我这里密码出现了问题,不让我登进去。
我想跳过密码进去,但是没用:
D:\mysql-8.0.22-winx64\bin>mysql --defaults-file='D:\mysql-8.0.22-winx64\my.ini' --console --skip-grant-tales
mysql: [ERROR] Failed to open required defaults file: 'D:\mysql-8.0.22-winx64\my.ini'
mysql: [ERROR] Fatal error in defaults handling. Program aborted!
说产生了一个致命错误。。。MySQL密码是加密的,储存密码的文件你没法访问。
经过大量阅读相关文章及几天时间的沉淀之后,我又尝试了一下:
mysqld -remove # 删除服务
注:这句话表示删除所有配置,打回安装前的状态,不过同时还要删除根目录下的data目录里面所有的文件。
然后按照上面的步骤在来一次,终于,成功了:
D:\mysql-8.0.22-winx64\bin>mysql -u root -P3306 -p
Enter password: ************
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.22
Copyright (c) 2000, 2020, 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>
看到mysql交互窗口,我舒心地笑了。。。
4、设置新密码
这个时候还不能得意,因为还没有设置新密码,你操作不了数据库:
mysql> use mysql;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
mysql> select version();
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
而且,最重要的是,如果不设置的话,下次登入就会因为密码不对报错:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
所以,还有最后一步:修改密码!!!
我尝试了很多修改密码的语句:
UPDATE mysql.user SET authentication_string=PASSWORD('j2021') WHERE USER='root';
set password=PASSWORD('root');
update user set authentication_string='root';
全都报错了:
your MySQL server version for the right syntax to use near '('root') where user='root'' at line 1
最后,在网上搜索:ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.找到了答案。
修改密码正确姿势:
alter user 'root'@'localhost' identified by 'root';
注:by后面填的就是密码。
成功:
mysql> select version();
+-----------+
| version() |
+-----------+
| 8.0.22 |
+-----------+
MySQL8安装教程及问题解决的更多相关文章
- python MySQLdb Windows下安装教程及问题解决方法(python2.7)
使用python访问mysql,需要一系列安装 linux下MySQLdb安装见 Python MySQLdb在Linux下的快速安装http://www.jb51.net/article/6574 ...
- MySql-8.0.12 安装教程
MySql-8.0.12 安装教程随笔https://www.cnblogs.com/CrazyDemo/p/9409995.html MySQL 安装https://m.runoob.com/mys ...
- mysql-8.0.11-winx64.zip安装教程
mysql-8.0.11-winx64.zip安装教程 下载zip安装包: MySQL8.0 For Windows zip包下载地址:https://dev.mysql.com/download ...
- MySql 5.7.26(MySQL8)安装教程
近期更换服务器,在此再记录一遍mysql 安装教程 1.下载 https://cdn.mysql.com//Downloads/MySQLInstaller/mysql-installer-commu ...
- mysql-8.0.16-winx64.zip安装教程详解
摘自:https://zhuanlan.zhihu.com/p/48531203 mysql-8.0.16-winx64.zip安装教程详解下载地址:https://dev.mysql.com/get ...
- MySQL8.0.20安装教程,MySQL8.0.20安装详细图文教程
1.下载链接如下: MySQL8.0.20版本 https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-20.html 其他版本:MySQL8 ...
- mysql8.0.20下载安装教程
mysql8.0.20安装教程 1.浏览器搜索mysql下载安装 地址:https://dev.mysql.com/downloads/mysql/ 2.登录或者不登录下载 3.下载的是一个压缩包,直 ...
- MySQL8.0.20下载与安装详细图文教程,mysql安装教程
MySQL下载与安装(8.0.20版)教程 mysql安装包+mysql学习视频+mysql面试指南视频教程 下载地址: 链接:https://pan.baidu.com/s/1FmLFhGlajBQ ...
- MySQL8.0.20安装教程图文详解,MySQL8.0.20安装教程winodws10
MySQL8.0.20安装教程图文详解,非常详细 一:mysql官网下载 https://dev.mysql.com/downloads/file/?id=494993 不用注册,直接下载就好 二:解 ...
随机推荐
- 看完我的笔记不懂也会懂----git
Git学习笔记 - 什么是Git - 首次使用Git - DOS常用命令 - Git常用命令 - 关于HEAD - 版本回退 - 工作区.暂存区与版本库 - git追踪的是修改而非文件本身 - 撤销修 ...
- Lua C++交互 应用实例步骤(UserData使用)
一.配置Lua C++交互环境 1.下载Lua 包环境 地址: https://www.lua.org/download.html ,我们这里用的是5.4.2版本. 2.新建C++ 控制台应用程序 3 ...
- Python基础之:Python中的流程控制
目录 简介 while语句 if 语句 for语句 Break Continue pass 简介 流程控制无非就是if else之类的控制语句,今天我们来看一下Python中的流程控制会有什么不太一样 ...
- 剑指 Offer 67. 把字符串转换成整数 + 字符串
剑指 Offer 67. 把字符串转换成整数 Offer_67 题目描述 题解分析 java代码 package com.walegarrett.offer; /** * @Author WaleGa ...
- 【Arduino学习笔记04】消抖动的按键切换
"开关抖动": 由于按键是基于弹簧-阻尼系统的机械部件,所以当按下一个按键时,读到的信号并不是从低到高,而是在高低电平之间跳动几毫秒之后才最终稳定. 代码解读: 1 const i ...
- 【Azure API 管理】从微信小程序访问APIM出现200的空响应的问题中发现CORS的属性[terminate-unmatched-request]功能
问题描述 使用微信小程序调用APIM(API Management)中的接口,发现POST和PUT请求被拦截,返回的状态码为200,但是无消息内容. 在小程序中的调用JS代码如: 通过浏览器测试得到的 ...
- 为什么要从 Linux 迁移到 BSD2
OpenZFS on Linux,是项目的 Linux 部分,目前有 345 个活跃的贡献者,有超过 5600 个提交,而且几乎每天都有提交!一些世界上最大的 CDN 和数据存储服务在 FreeBSD ...
- python学习之基础内容
python基础内容① 什么是python? -一种计算机语言,计算机语言分为 -高级语言:python.java.Ruby.C#.C++...... -基础语言:C语言.汇编 -计算机可以直接执行基 ...
- Codeforces Round #538 D. Lunar New Year and a Wander
题面: 传送门 题目描述: Bob想在公园散步.公园由n个点和m条无向边组成.当Bob到一个未经过的点时,他就会把这个点的编号记录在笔记本上.当且仅当Bob走完所有的点,他才会停下来.这时,Bob的笔 ...
- 2.pandas常用读取
一.文本读写 名称 接收 代表(含义) 默认 filepath string 文件路径 无 sep string 分割符 ',' header Int/sequence 某行做列名 infer自动寻找 ...