Maison  >  Article  >  base de données  >  Comment rétrograder de mysql8 vers mysql5

Comment rétrograder de mysql8 vers mysql5

藏色散人
藏色散人avant
2020-04-05 08:57:052914parcourir

Comment rétrograder de mysql8 vers mysql5

最近在研究liferay的使用。liferay可以连接mysql数据库。电脑中装的mysql的最新版本是mysql8。于是开始按照liferay的要求进行连接。

推荐:《mysql视频教程

但是多番尝试后,均报错:

java.sql.SQLException: java.lang.ClassCastException: java.math.BigInteger cannot be cast to java.lang.Long。

询问了一下高人,说可能是mysql的版本太高,建议降到mysql5再尝试连接。于是开始了mysql降级之旅。

1、mysql8卸载

(1) 停mysql服务

net stop mysql

(2) 删除mysql的安装目录。网上好多教程说要在控制面板中删除,但是我的win10系统卸载程序里面根本没找到mysql这个软件。就直接先把目录删掉了。

(3) 删除注册表里的mysql信息

网上说要删掉下面3个值,但是我只找到一个,就删掉了第一个。

打开注册表:方式1:在终端命令里输入 regedit 方式二:在c盘下的windows 路径下找到 regedit.exe执行程序 C:Windows 然后将下面三个路径下的MySQL相关文件夹删除。

HKEY_LOCAL_MACHINE/SYSTEM/ControlSet001/Services/Eventlog/Application/MySQL
HKEY_LOCAL_MACHINE/SYSTEM/ControlSet002/Services/Eventlog/Application/MySQL
HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/Eventlog/Application/MySQL

补充:完成了上述MySQL卸载操作后,在安装新的MySQL时,会出现  

The vervice already exists!
The current server installed:以前安装mysql的地址/bin/mysqld-nt MYSQL

解决办法:

1、移除原来的MySQL服务

mysqld -remove MySQL

2、重新注册MySQL服务

mysqld --install MySQL --defaults-file="C:\mysql-5.1.34\my.ini"

2、安装mysql5

(1)下载并解压

(2)新建my.ini

[mysql]
default-character-set=utf8 
[mysqld]
port = 3306 
basedir=E:\\soft_install\\mysql-5.7.24-winx64
datadir=E:\\soft_install\\mysql-5.7.24-winx64\\data
max_connections=200
character-set-server=utf8
default-storage-engine=INNODB
max_connect_errors=100
explicit_defaults_for_timestamp=true

(3)新建data文件夹

(4)初始化并安装mysql

mysqld --install mysql --defaults-file=E:\soft_install\mysql-5.7.24-winx64\my.ini

(5)启动

net start mysql

补充:

(1)my.ini的目录要用双斜线\\,这个很重要。在安装时,我一直用的是\,但是一直报错,改成\\就好了。

(2)mysql 服务无法启动

服务没有报告任何错误

解决方案:

可以重新进行初始化,重新启动,初始化之前要清空data文件夹(跟bin同级)

还可以删除服务,重新注册

mysqld -remove MySQL

3、登录

使用cmd,分两种情况:

(1)C:/>bin/mysqld --initialize

密码为随机密码,在data目录下的DESKTOP-UK92BAV.err找随机密码。

(2)C:/>bin/mysqld --initialize-insecure

不设置密码。

修改密码:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer