1.下载msi文件
(1)进入官网:https://dev.mysql.com/downloads/mysql/
(2)选择下载的MSI
(3)确定
2.检查系统中是否已经按照mysql服务
(1)打开任务管理器,再点击里面的“服务”,在服务中查找mysql,如果存在,则表示mysql服务已经存在。
(2)删除MySql服务
打开cmd(记得”使用管理员身份“打开),如果没有配置环境变量,请cd(切换目录)到mysql程序下的bin文件夹下:
先到mysql的安装目录的bin文件夹下:D:\MySql\bin>
执行:sc delete MySql
删除完成之后,再次从任务管理器的“服务”中,查看一下,如果找不到MySql服务,说明已经已经删除成功。
如果还能看到MySql服务,可以手动右击选择”停止“,服务停止之后就会自动消失了
3.安装
(1)打开下载的MySql安装文件:mysql-installer-community-8.0.30.0.msi,有弹框就点击允许
(2)选择安装类型,有“Developer Default(开发人员默认)”、“Server only(仅服务器)”、“Client only(仅客户端)”、“Full(完全)”、“Custom(用户自定义)”三个选项,我们选择“Developer Default(开发人员默认)”(本机开发建议选择这个)。如下图:
(3)检测运行环境,安装程序会自行检测系统环境,如果出现问题,按要求修改提示信息,重新检测即可,点击“NEXT”进入下一步。
(4)确认执行安装以下产品,点击执行安装,此处可能需要10分钟左右,安装完成后进行配置环境。 (注:Execute为安装选项。)
正常安装完成的图片如下,直接点击下一步即可。
重点来了!如果你这步过去之后,还是正常接续下一步,那么你不用看这条消息。在我的安装过程中安装发生闪退,这时我们需要打开图中所示程序来完成接下来的安装。
打开之后,选择该选项完成接下来的安装。
之后,我们进入下一步的安装。
(5)点击下一步
(6)出现如下的界面,这里有一个很好的功能,MySql配置向导,不用像以前一样,自己手动配置MySql.ini了。
这里有 否启用TCP/IP连接,设定端口,如果不启用,就只能在自己的机器上访问MySql数据库了,我这里使用的是启用,把前面的勾打上,Port Number(端口号):3306。(注:上面的都是默认配置,不用改)
(7)点击“Next”进入下一步,配置账户和角色,这一步询问是否要修改默认Root用户(超级管理)的密码(默认为空)。再点击“Next”进入下一步。
(8)选择是否将MySql安装为Windows服务,还可以指定Service Name(服务标识名称),这里我们选择默认Service Name不变。按“Next”继续。
(9)确认配置信息无误,如果有误,按“Back”返回检查。按“Execute”使设置生效。
(10)设置完毕,按“Finish”结束MySql的安装与配置。
(11)
(12)接下来进入可视化界面,输入刚刚自己设置的密码。点击“Finish”,如下图
然后点击“Next”,出现下图
(13)出现以下界面,代表我们登录成功。
4.解决局域网内访问该mysql
(1)局域网内其他客户端链接会出现 错误代码:1130 Host ... is not allowed to connect to this MySQL server
解决方法:改表法
可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 “mysql” 数据库里的 “user” 表里的 “host” 项,从“localhost”改称”%”mysql -u root -p
打开MySQL 8.0 Command Line Client (即在搜索里输入即可),并输入密码,然后执行下面语句:
mysql>use mysql;
mysql>update user set host = ‘%’ where user =’root’;
mysql>flush privileges;
mysql>select host,user from user where user=’root’;
(2)错误代码:1521 - Client does not support authentication protocol requested by server;consider upgrading MySQL client
解决方法:
mysql>ALTER USER ‘root’@‘localhost’ IDENTIFIED WITH mysql_native_password BY ‘123456’; #修改加密规则
mysql>flush privileges;
如果前面已经执行过(1)了,则需要把 “localhost” 改成 “%”,如下:
mysql>ALTER USER ‘root’@‘%’ IDENTIFIED WITH mysql_native_password BY ‘123456’; #修改加密规则
mysql>flush privileges;
现在就可以连接了
5.问题解答
(1)安装的目录下没有my.ini和data目录。是可能是因为安装设置或者版本原因,my.ini文件在C盘中的ProgramData下的MySQL下的MySQL Server 8.0下。如果C盘目录中没有ProgramData文件夹,则其一般是被隐藏的,点击“查看“,在“隐藏的项目”前打钩,然后ProgramData就出现了
6.mysql配置
编辑mysql目录里的:C:\ProgramData\MySQL\MySQL Server 8.0\my.ini
在文件my.ini里找到 [mysqld],然后在下面加上下列配置:
event_scheduler=on
log_bin_trust_function_creators=1
interactive_timeout=172800
wait_timeout=172800
以上配置项说明如下:
event_scheduler是控制事件(可以理解为任务计划)的开关,on:表示打开;off表示关闭;
interactive_timeout针对交互式连接,
wait_timeout针对非交互式连接。说得直白一点,通过mysql客户端连接数据库是交互式连接,通过jdbc连接数据库是非交互式连接。
wait_timeout服务器默认是8小时【也就是默认的值默认是28800秒】,也就是说一个connection空闲超过8个小时,
Mysql将自动断开该connection,通俗的讲就是一个连接在8小时内没有活动,就会自动断开该连接。
重启mysql服务