决定弃坑 等半年后稳定了再说 重新装回 -- 稳定的 MySQL 5.7 https://dev.mysql.com/downloads/windows/installer/5.7.htm
文章为以后复习用 有个人语句表达习惯 对本人复读感觉良好 请谅解!!!
真香定律 我还是在项目上用了MySQL8.0
为什么还要用MySQL8 ~_~!!!
MySQL8.0字符集变成了 utf8mb4 , 性能提升了 ,还有我讨厌的安全性(管理员忘记密码后。。)
项目的配置及maven依赖
jdbc.driverClassName=com.mysql.cj.jdbc.Driver
jdbc.url=jdbc:mysql://192.168.1.1:3306/testingdevice?useAffectedRows=true&useSSL=false&useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true&serverTimezone=Asia/Shanghai
jdbc.username=mysql8
jdbc.password=root
jdbc.driverClassName=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://192.168.1.1:3306/testingdevice?useAffectedRows=true&useSSL=true&useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true&serverTimezone=GMT
jdbc.username=mysql5.7
jdbc.password=root
# 想升级为mysql8, 5.1.46替换为8.0.11
mysql
mysql-connector-java
5.1.46
org.mybatis.generator
mybatis-generator-maven-plugin
1.3.5
mysql
mysql-connector-java
5.1.46
登录后
use mysql;
删除用户 DROP USER 'manufac'@'%'; DROP USER 'manufac'@'192.168.1.107';
创建用户 manufac 密码 Jtomanufac. %表示所有host都能访问
create user manufac@'%' identified by 'Jtomanufac.';
赋予权限 database.* 表示 database数据库下所有表权限
grant all privileges on database.* to manufac@'%' with grant option;
flush privileges; 刷新权限
远程链接时报错 1251 修改加密规则 : mysql_native_password ,密码最好有大小写字母和符号
alter user manufac@'%' identified with mysql_native_password by 'Jtomanufac.'
FLUSH PRIVILEGES; #刷新权限
--- 更新于 2019-08-23
注意:
1 为 历史版本
2 为 点击后如下页面 选择第二个下载 ( 推荐 )
3 为压缩包安装版本 ( 不推荐 需要自己配置 )
首先,任务管理器 -- 服务 关掉MySQL
备份一下数据库数据 默认地址在 C:\ProgramData\MySQL\MySQL Server 8.0\data
坑点一: ( 随着版本的更新, 我们重装MySQL很正常 ) 摸索了一下午,sql 安装时也失败
总结补充 : 删删删
sc delete MySQL (重点删) 在命令提示符(管理员)
注册表 Ctrl + F 搜到mysql 的全删
C盘隐藏文件夹 ProgramData 和 服务
PATH 环境变量若存在记得删一下 ( 重启后才有效 )
地址: https://blog.csdn.net/qq_33144861/article/details/80267462
地址: https://www.cnblogs.com/tanfuchao/p/9025134.html
补:
临时密码记得复制保存 ,当安装完成 输入 mysql -uroot -p 回车报错
因为mysql 8.0即使第一次安装密码不为空
临时密码 在第四行
记得data 文件夹 ( 保存数据表数据 ) 目录与 mysql安装位置最好一致 | |
mysqld -remove 将以前的错误安装删除,否则会提示已经安装 | |
上面说的是压缩包版的配置麻烦 |
因为第一次安装,所以出现这个错 (重点)请记住临时密码
方法: https://www.sojson.com/blog/197.html 5.7版本以下适用
苹果的 : https://blog.csdn.net/lisongjia123/article/details/57418989
因为 mysql 8 没有 my.ini 文件 当然你可以自己建一个
[mysqld]
basedir=D:\mysql-8.0.12-winx64
datadir=D:\mysql-8.0.12-winx64\data
port = 3306
character-set-server=utf8
#忘记密码时使用
#skip-grant-tables
#设置协议认证方式(重点啊)
default_authentication_plugin=mysql_native_password
[mysql]
default-character-set=utf8
最后设置一下密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root'
然而MySQL报错 ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near
why??
今天遇到的mysql8.0的新特性(坑)和解决办法(转载)
https://blog.csdn.net/huangyuehong914/article/details/80503195
( 99.99%会爆 ‘’远程连接‘’ 的错 按步骤做完 )
若报错为 : ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
alter user 'root'@'localhost' identified by 'root';
OK 解决
如有纰漏 麻烦指正!! 谢谢