下载

MySQL下载地址

选择下载64位(看自己电脑是32位还是64位)

点击下载之后,它会让你登录,没有Oracle账户,跟着它的步骤注册一个就好了。

安装

打开下载好的压缩包解压到你的某一目录下,这里我放到了D:\MySQL下

如上图所示,在你解压的文件夹下是没有my.ini这个配置文件的,需要自己创建并用记事本打开,把下面这些代码粘贴复制进去

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
#设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=D:\MySQL\mysql-5.7.16-winx64
# 设置mysql数据库的数据的存放目录
#datadir=D:\MySQL\mysql-5.7.16-winx64\data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB

我在安装的时候,找了一个教程,教程中上面的#datadir=D:\MySQL\mysql-5.7.16-winx64\data这句代码是没有注释掉的,于是我就在之后的安装中遇到了麻烦。

填坑

首先配置默认文件

当我没有注释掉那句代码时,也就是这样子配置的

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
#设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=D:\MySQL\mysql-5.7.16-winx64
# 设置mysql数据库的数据的存放目录
datadir=D:\MySQL\mysql-5.7.16-winx64\data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB

接下来开始安装

安装并启动

直接搜cmd,右键->以管理员身份运行

进入bin文件目录下

接下来输入安装、启动命令

mysql install

net start mysql

出现如下图问题

无法启动却无报错,在计算机管理服务里也无法手动启动。有大神说可以执行

mysqld --console

命令查看错误信息,如下图,意思是说没有data文件,而在my.ini配置文件中代码里设置了(datadir=D:\MySQL\mysql-5.7.16-winx64\data)

所以我就自己跑去新建了个data文件夹,再启动然而依旧错误漫天飞,Excuse me?

最后终于找到靠谱的答案,data文件是不需要自己配置的,先删除自己自作聪明的data文件,然后注释掉my.ini中的datadir代码,配置环境变量然后执行

mysqld --initialize

即可自动生成data文件,这个时候再执行

net start mysql

命令,可以看到MySQL启动成功

登录MySQL

输入命令 mysql -uroot -p 回车,输入密码,按理说初次登录是没有密码的,直接回车即可登录,然而事实上,在执行 mysqld --initialize命令时它不仅自动创建了data数据,还随机分配了密码,在你的文件中搜索 .err后缀的文件,以记事本方式打开,你会看到下图

对,这就是你的密码,每个人不一样,看你自己的,输入进去登录就可以了。接下来你想进行一些操作,发现它会提示你,需要先重置密码。那么接下来再看重置密码的坑。

重置密码

在网上查找方法,基本上都是如下步骤:

然而我输入命令结果是这样子的

正确的打开方式是首先在my.ini配置文件的[mysqld]下面加上

[mysqld]

explicit_defaults_for_timestamp = true

然后输入如下命令,回车后会一直停止,然后打开另一个cmd命令窗口

mysqld --default-file="D:\MySQL\mysql-5.7.16-winx64\my.ini" --skip-grant-tables

mysql -u root

输入更改密码的语句

use mysql

UPDATE mysql.user SET password=PASSWORD("lyymysql") WHERE User='root';

然而结果如图

所以查看数据库,发现5.7版本里的user表里已经没有了password这个字段

正确姿势:

update mysql.user set authentication_string=PASSWORD('lyymysql') WHERE User='root';

flush privileges

exit

吁~这下终于可以启动登录MySQL 了

这一上午踩坑踩得真呀么欢快~

小提示:以上命令中的路径都要改为自己的路径,要不然是不对的。如果有什么疑问可以在下方评论。

MySQL 5.7版本安装教程-踩坑总结的更多相关文章

  1. linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦

    linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦(一) 一.Linux下安装MySQL 1.下载 下载地址:http://dev.mysql.co ...

  2. ubuntu 下安装docker 踩坑记录

    ubuntu 下安装docker 踩坑记录 # Setp : 移除旧版本Docker sudo apt-get remove docker docker-engine docker.io # Step ...

  3. sqlserver安装和踩坑经历

    sqlserver安装和踩坑经历 下载 下载 安装 大致是按照这个来的 安装教程 出错 windows系统安装软件弹出"Windows installer service could not ...

  4. linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦(二)

    linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦(二) 安装apache web容器 . yum方式安装apache 注意apache在linux ...

  5. linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦(三)

    linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦(三) 安装PHP 1.yum方式安装PHP方法同安装apache一样传送门:linux cent ...

  6. MySQL 8.0.20 安装教程图文详解(windows 64位)

    MySQL 8.0.20 安装教程图文详解(windows 64位)  更新时间:2020年05月09日 15:09:04   转载 作者:瘦肉粥不加糖     这篇文章主要介绍了MySQL 8.0. ...

  7. MySQL Connector/NET 使用小结(踩坑之路)

    背景描述 根据项目的需要,需连接MySQL获取数据. 首先,先了解一下项目的情况: 之前的代码是C#编写的的, 运行时:.NETFramework3.5. 由于项目已经部署上线,因此不能升级运行时,这 ...

  8. MAC下STF安装及踩坑

    [Mac OS X]brew: command not found ruby -e"$(curl -fsSL https://raw.githubusercontent.com/Homebr ...

  9. OpenCV+Qt+CMake安装+十种踩坑

    平台:win10 x64+opencv-3.4.1 + qt-x86-5.9.0 + cmake3.13.4 x64 OpenCV+Qt+CMake安装,及目前安装完后打包:mingw32-make时 ...

随机推荐

  1. DisUnity——Unity3D反编译资源提取利刃

    1.资源 软件及项目源码地址:https://github.com/ata4/disunity/releases 2.使用方法: 将待反编译的文件放入文件夹中:如:E:\Demo\ 在disunity ...

  2. jquery 三种开始写法

    在 jquery 代码中使用 $(document).ready()时,位于其中的所有代码都会在 DOM 加载后立即执行 第一种(推荐)$(document).ready(function(){   ...

  3. 1.document.write(""); 输出语句

    1.document.write(""); 输出语句 2.JS中的注释为// 3.传统的HTML文档顺序是:document->html->(head,body) 4. ...

  4. webapp框架—学习AngularUI2(demo改造)

    目的:把AngularUI的模板应用到“桂电在线”上 步骤如下: 按功能表修改demo界面 学习angularUI如何加载全部页面,为了设置自定义加载模板,在demo/demo.js中找到这一段 // ...

  5. C++11老关键字的新含义(auto, using,extern)

    http://blog.csdn.net/cnsword/article/details/8034947 公司可以使用c++11.看大牛的代码模仿使用,所以现在已经不知道什么使用的是c++的语法还是c ...

  6. ”ENV_IS_EMBEDDED“解惑以及相关的移植实验

    一.概述( ENV_IS_EMBEDDED的目的) 经典资料 认识     ENV_IS_EMBEDDED只有在CFG_ENV_IS_IN_FLASH或者CFG_ENV_IS_IN_NAND定义了才有 ...

  7. 快速搭建高速稳定三层B/S架构

  8. NET Core站点部署到Linux服务器

    .NET跨平台之旅:将QPS 100左右的ASP.NET Core站点部署到Linux服务器上 今天下午我们将生产环境中一个单台服务器 QPS(每秒请求数)在100左右的 ASP.NET Core 站 ...

  9. webkit.net使用方法日记

    1.首先貌似只有36位的库,所以项目也要修改为X86平台 2.里面的所有dll库文件都要拷贝到项目中去,包括WebKitBrowser.dll.manifest  此文件一定要拷贝过去. 3.然后引用 ...

  10. iPhone开发 - 常用库

    iPhone开发 - 常用库 这里总结了iPhone开发者开发过程中可能需要的一些资源 如何用Facebook graphic api上传视频: http://developers.facebook. ...