1. 先去官网下载要安装的版本(这里以Mysql5.7.24为例 ;本来计算机上是MySQL5.5)mysql
官网网址:https://downloads.mysql.com/archives/community/【要下载zip的那个】sql
2. 下载完成后解压到某一个目录【随便任何地方】数据库
解压完的文件是没有data文件夹和my.ini文件的ui
能够将本来mysql5.5中的my.ini文件复制来直接用 ;3d
但注意要将文件中全部的port 都修改成3307 【注意是全部!!!】server
再将basedir 和 datadir 修改成前路径 以下:【data文件夹不用管,它能够自动生成】blog
其余博主my.ini配置信息ip
3. 将原来的mysql5.5的服务停掉get
4. 以管理员身份打开cmd 【注意是管理员身份,要不会报错】 -- 这里要记住密码 【箭头指的就是密码】cmd
mysqld --defaults-file=F:\mysql5.7.24\mysql-5.7.24-winx64\my.ini --initialize --console
5. 再执行以下命令
mysqld install MySQL5.7.24 --defaults-file="F:\mysql5.7.24\mysql-5.7.24-winx64\my.ini"
6.先不急启动服务,打开注册表【win+R ->regedit】,查找mysql5.7.24,将值修改成
F:\mysql5.7.24\mysql-5.7.24-winx64\bin\mysqld --defaults-file=F:\mysql5.7.24\mysql-5.7.24-winx64\my.ini MySQL5.7.24
7. 启动mysql服务
net start mysql5.7.24 【注意这里启动的时候必定要带着版本(名字),要不会启动别的版本】 【net stop mysql5.7.24 : 停掉服务
8.用临时密码进行登陆【这个临时密码就是前面你存的】【P:端口 p :密码】
9. 修改密码: set password for root@localhost=password('root');
10. 退出 :quit
若是顺利一切就ok了,可是怎么可能,安装过程我遇到的问题
1.开始没有将my.ini文件中的全部port都改成3307 -- 后面须要从新执行以前的步骤,从新初始化就OK了
2.在我输入密码的时候报错:
解决办法:
编辑mysql5.7.24中的my.ini文件,在[mysqld] 这个条目下加入skip-grant-tables 保存后退出重启mysql
1. win+R -> cmd
2.中止服务:net stop mysql5.7.24
3.启动服务:net start mysql5.7.24
这时候在cmd里面输入 mysql -u root -p 就能够不用密码登陆了,出现了password:的时候直接回车能够进入,不会出现ERROR,但不少操做都会受限制,由于咱们不能grant(没有权限)
继续按下面的流程走:【句末记得加分号】
1. 进入mysql数据库
mysql>use mysql;
Database changed
2.给root用户设置新密码
mysql>update user set password=password(“新密码") where user="root";
Query OK,1 rows affected(0.01sec)
Row matched:1 Changed: 1 Warings:0
【
!!!!! 这里我又报错了:Unknown column 'password' in 'field list'
错误缘由是: 5.7版本下的myqsl数据库下已经没有password这个字段了,password字段改为了authentication_string ,因此修改密码须要修改如下
update user set authentication_string=password("新密码") where user="root";
update mysql.user set authentication_string=password('*******') where user='*******'; (参考)
】
3. 刷新数据库
mysql>flush privileges;
Query OK,0 rows affected(0.00 sec)
4.退出mysql
mysql>quit;
Bye
改好以后,再修改如下my.ini这个文件,把咱们刚加入的"skip-grant-tables”这行删除,保存退出再重启mysql5.7.24就能够了
这样装两个版本的Mysql就结束了
再我导入公司给的脚本文件的时候又出错了!!!
【navicat导入sql脚本文件报错MySQL server has gone away】
后来在网上找,原来是由于脚本文件太大了,我以前的my.ini中容许最大的数据包是1M,修改如下就能够成功导入了
找到mysql安装目录下的my.ini配置文件,加入如下代码:
max_allowed_packet=500M
wait_timeout=288000 【能够先不加】
interactive_timeout = 288000 【能够先不加】
三个参数注释以下:
max_allowed_packet是mysql容许最大的数据包,也就是你发送的请求;
wait_timeout是等待的最长时间,这个值你们能够自定义,但若是时间过短的话,超时后就会现了MySQL server has gone away #2006错误。
max_allowed_packet参数的做用是,用来控制其通讯缓冲区的最大长度
终于完事!!!
【文中有简洁其余博主的内容】