将mysql5.7 升级为mysql 8.0

MyISAM更换innodb有什么影响 mysql 如何更换mysql版本_sql

一、备份数据库

1.cmd进入原来数据库中的路径

MyISAM更换innodb有什么影响 mysql 如何更换mysql版本_数据库_02

2.输入命令 

mysqldump -uroot -p --all-databases > D:\Backup.sql

1.root是用户名

2.这里保存路径我选择了 D:\Backup.sql(可以更改)

回车后输入密码即可保存

三.卸载原来的Mysql

1.关闭服务

管理员运行命令窗口,输入 net stop mysql 关闭MySQL服务

删除MySQL的服务输入:sc delete MySQL

2.删除注册表:windows+R运行"regedit"文件,打开注册表

(1)删除注册表1:HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\EventLog\Application\MySQL

3.删除C盘下的C:\ProgramData\MySQL

4.停止服务中的Mysql与删除全部安装路径

进入cmd进入旧版本的Bin,输入 mysqld -remove

MyISAM更换innodb有什么影响 mysql 如何更换mysql版本_sql_03

删除目录

 

MyISAM更换innodb有什么影响 mysql 如何更换mysql版本_数据库_04

 四.配置系统变量

MyISAM更换innodb有什么影响 mysql 如何更换mysql版本_服务器_05

MyISAM更换innodb有什么影响 mysql 如何更换mysql版本_mysql_06

 五.安装新版本Mysql

mysql8没有my.ini文件,需要用户自己创建

新建data文件夹(空的就ok),并在my.ini中添加一些参数

[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录(你自己的目录)
basedir=D:\mysql8\mysql-8.0.15-winx64
# 设置mysql数据库的数据的存放目录
datadir=D:\mysql8\mysql-8.0.15-winx64\data
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。
max_connect_errors=10
# 服务端使用的字符集默认为UTF8
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
#mysql_native_password
default_authentication_plugin=mysql_native_password
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8

管理员身份打开cmd,进入新版本的mysql的bin目录下 

MyISAM更换innodb有什么影响 mysql 如何更换mysql版本_sql_07

1.初始化数据库:mysqld --initialize --console(8.0版本)        mysqld --install (老版本)

注意!执行结束后输出结果里面有一段:
[Note] [MY-010454] [Server] A temporary password is generated for root@localhost: XI5ovf,x5G,? 
其中root@localhost:后面的“XI5ovf,x5G,? 就是初始密码(不含首位空格)。
在没有更改密码前,需要记住这个密码,首次登录需要用到。
可以先复制到某个文本中先保存下来.

2.启动服务:net start mysql

 六.修改密码

在控制台输入:mysql -uroot -p(刚才复制的密码)

登陆后输入以下几种代码(直到成功)第一个例子显示Query OK

alter user'root'@localhost identified by '123456';
Query OK, 0 rows affected (0.03 sec)
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';
set password for 用户名@localhost = password(‘新密码’);
mysqladmin -u用户名 -p旧密码 password 新密码
mysql> use mysql;
mysql> update user set password=password(‘123’) where user=‘root’ and host=‘localhost’;
mysql> flush privileges;

七.导入备份文件

(1)在 Mysql 中新建空数据库

mysql>create database wodeshuju;

(2)给数据库设置编码

mysql>set names utf8;

(3)导入数据 SQL 文件(使用source命令)

mysql>source D:\Backup.sql;