⼀台计算机安装两个版本的MySQL
1. 先去官⽹下载要安装的版本(这⾥以Mysql5.7.24为例;原本计算机上是MySQL5.5)
2. 下载完成后解压到某⼀个⽬录【随便任何地⽅】
解压完的⽂件是没有data⽂件夹和my.ini⽂件的
可以将原本mysql5.5中的my.ini⽂件复制来直接⽤;
但注意要将⽂件中所有的port 都修改为3307 【注意是所有】
再将basedir 和 datadir 修改为前路径如下:【data⽂件夹不⽤管,它可以⾃动⽣成】
其他博主my.ini配置信息
3. 将原来的mysql5.5的服务停掉
4. 以管理员⾝份打开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,修改以下就可以成功导⼊了
到安装⽬录下的my.ini配置⽂件,加⼊以下代码:
max_allowed_packet=500M
mysql下载之后是个文件夹
wait_timeout=288000 【可以先不加】
interactive_timeout = 288000 【可以先不加】
三个参数注释如下:
max_allowed_packet是mysql允许最⼤的数据包,也就是你发送的请求;
wait_timeout是等待的最长时间,这个值⼤家可以⾃定义,但如果时间太短的话,超时后就会现了MySQL server has gone away #2006错误。
max_allowed_packet参数的作⽤是,⽤来控制其通信缓冲区的最⼤长度
终于完事
【⽂中有简洁其他博主的内容】

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。