mysql5.5换成mysql8.0

Posted 我本成魔

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql5.5换成mysql8.0相关的知识,希望对你有一定的参考价值。

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

1、卸载

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

2、下载 解压缩

到mysql官网 http://dev.mysql.com/downloads/mysql/ 下载mysql 

上面的为压缩版,下面的为安装版。我一开始是下载的安装版,但是安装了数次虽然查得到数据库但是各种问题不能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关闭

 

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

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

navicat连接nysql出现1251Client does not support authentication protocol requested by server的解决方案

终于能用上了,开心

 

以上是关于mysql5.5换成mysql8.0的主要内容,如果未能解决你的问题,请参考以下文章

InnoDB存储引擎概览

js简洁代码片段

java.sql.SQLException: Access denied for user 'roo'@'localhost' (using password: YES

mysql8.0新增用户及密码加密规则修改

linux中mysql5升级到mysql5.5的方法

MySQL8.0添加用户和权限