由于5.7没有窗口函数,所以卸载后安装8.0版本,
1 先把5.7里的数据备份,直接用Navicat打开,右键对应的数据库,生成.sql文件保存,
2 卸载之前的mysql,尽量卸载干净,1>在控制面板-程序中,卸载与mysql有关的,2>去C盘下Program Files Program Files (x86) ProgramData下分别将mysql文件删除,特别注意ProgramData中有可能隐藏,要先设置为可见,3>再把注册表里的两个文件删除,要是不放心,可以用查找mysql的方法删除,但不要把Navicat中的mysql也删了,https://blog.csdn.net/qq_41140741/article/details/81489531?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.add_param_isCf&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.add_param_isCf 4> cmd打开终端,执行sc query mysql,再执行sc delete mysql,这是为了卸载干净,
3 去官网下载8.0以上的版本,https://downloads.mysql.com/archives/community/ 注意下载第一个,即不含Debug Binaries & Test Suite的,解压到C盘Program Files下的MySQL文件夹下,在此打开终端,分别执行mysqld -install mysqld --initialize 这时在 MySQL 的根目录下会生成一个 data 文件夹,注意里面的一个以 .err 结尾的文件,初始密码就在这个文件里,在bin目录同一级下新建my.ini文件,写入如下语句
[mysqld] port = 3306 basedir=C:Program FilesMySQLmysql-8.0.11-winx64 datadir=C:Program FilesMySQLmysql-8.0.11-winx64Data max_connections=200 character-set-server=utf8 default-storage-engine=INNODB sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES [mysql] default-character-set=utf8
最后启动服务net start mysql,这里可能发生系统错误2,解决方法https://www.cnblogs.com/sharpest/p/10868343.html
利用刚才生成的密码登录,再修改密码8.0.11 用ALTER USER 'root'@'localhost' IDENTIFIED BY 'xxxxxx';
,其中的 xxxxxx为密码,其余版本用set password for root@localhost=password('xxxxxx');
注意执行sc net 这些语句时若提示不是命令,只需配置环境变量即可
参考:https://blog.csdn.net/qq_42152399/article/details/80360428
安装后使用Navicat时可能会出现1251错误,解决办法https://blog.csdn.net/qq_34200501/article/details/86725486
忘记密码后按这个https://zhidao.baidu.com/question/1244864680682609419.html更改不知道为啥不行