由于在建表钟发现有些语句就是录不进去,研究发现是因为5.5版本过低导致,就想换到5.7版本,结果一看8.0都出了,据官方说明8.0要比5系列快2倍网上,遂直接换成8.0了,不过这个过程真的心累。

1、卸载

首先把MYSQL文件目录下的mysql5.5中的data文件放到其他地方保存,然后通过360等软件卸载就行了(我之前用的是安装版的),压缩版的写在请点击这里

2、下载 解压缩

mysql5.7升级到8.0 mysql5.6升级到8.0_压缩版

上面的为压缩版,下面的为安装版。我一开始是下载的安装版,但是安装了数次虽然查得到数据库但是各种问题不能net start mysql......最后我终于放弃了安装版

然后就开启了压缩版之路,本来以为很简单的事,但我的电脑真的是不争气啊,真的是比女朋友还难哄……2333

下载压缩版后,解压到C:\Program Files\MySQL\mysql-8.0.12-winx64

3、配置环境变量
然后要配置环境变量
变量名:MYSQL_HOME
变量值为mysql的bin路径:C:\Program Files\MySQL\mysql-8.0.12-winx64\bin
然后在path目录下编辑添加一个  %MYSQL_HOME%    注意前后衔接要加  ;
4、修改配置文件
解压之后是没有my.ini文件的,这时候要手动加一个
创建txt文件然后写入
[mysqld]
#skip-grant-tables
# 设置3306端口
port=3306
# 设置mysql的安装目录
basedir=C:\Program Files\MySQL
# 设置mysql数据库的数据的存放目录
datadir=E:\database\MySQL\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
然后把文件重命名为my.ini就好了,此文件放在MYSQL目录下

5、安装

以管理员权限打开cmd

直接cd C:\Program Files\MySQL\mysql-8.0.12-winx64\bin进入bin目录

接着输入mysqld -install看到安装成功之后,就可以测试了

输入mysqld –initialize 可以生成随机初始密码,这里千万要记录在文档中,因为马上就要进入数据库了

输入mysql -uroot -p 输入密码(就是刚才生成的)进入就基本ok了,我当时不知道为什么,怎么输入那个密码就是不行,只有通过把my.ini文件配置下的[mysqld]加一句配置

skip-grant-tables

来跳过输入密码。(我看很多博文,都是可行的,我不知道为什么我的怎么配置都不行,我按照很多博文提供的方法试了一遍,都不能进去,最后我只有删干净,又重装了,再重装了N遍了之后终于好

使了)

输入net start mysql就可以看到开启,net stop mysql关闭

在我能连接上数据库之后,重启电脑,又不行了,报错

mysql5.7升级到8.0 mysql5.6升级到8.0_MySQL5直接到8_02

按照这个博文,问题终于解决了

终于能用上了,开心