下载

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. 《ln命令》-linux命令五分钟系列之十八

    本原创文章属于<Linux大棚>博客,博客地址为http://roclinux.cn.文章作者为rocrocket. 为了防止某些网站的恶性转载,特在每篇文章前加入此信息,还望读者体谅. ...

  2. C#程序中:如何向xml文件中写入数据和读取数据

    xml文件作为外部信息存储文件使用简单,方便,其结构和表格略有相似,下面简单的说一下xml文件内容的读取 …… using System.Xml;using System.IO;namespace W ...

  3. ip输入框键入.或者合法数字自动选择下一个输入框效果

    <!DOCTYPE html> <html lang="zh-cn"> <head> <meta charset="utf-8& ...

  4. PHPCMS实现文章置顶功能的方法

    我个人喜欢把PHPCMS当作博客来用,而作为一个博客,怎能少了文章置顶功能呢?其中用PHPCMS实现置顶功能非常简单,无非是修改下推荐位的名称为置顶,然后在文章列表中推送需要置顶的文章罢了. 不过博客 ...

  5. adb的logcat使用

    预备:安装刷机精灵,实用工具->adb命令行 1. 对于多机设备,首先使用adb devices来获知设备名称: 2. 将log输出到电脑:adb –s [设备名称] shell logcat ...

  6. winform下载网页源码

    public partial class Form1 : Form{public Form1(){InitializeComponent();} private void button1_Click( ...

  7. mvc4 to mvc5 and EF5 to EF6

    今天把 后台的mvc 升级到了mvc5和ef6 .出错很正常. 下面是一些错误信息. [A]System.Web.WebPages.Razor.Configuration.HostSection 无法 ...

  8. jQuery设置按钮被点击状态

    js和jquery如何使按钮失效,很简单,只要设置disabled属性为true即为不可用状态即可 1.JS方法一: document.getElementByIdx("btn") ...

  9. [BZOJ 1025] [SCOI2009] 游戏 【DP】

    题目链接:BZOJ - 1025 题目分析 显然的是,题目所要求的是所有置换的每个循环节长度最小公倍数的可能的种类数. 一个置换,可以看成是一个有向图,每个点的出度和入度都是1,这样整个图就是由若干个 ...

  10. linux哪个版本好

    我给出的意见:目前主流和常用的Linux版本主要有:1.Redhat 版本5.5和6.0最新:培训.学习.应用.知名度最高的Linux发行版本,对硬件兼容性来说也比较不错,版本更新很快,对新硬件和新技 ...