在安装前,先将以前的Mysql版本都卸载干净,以免出现不必要的麻烦。
下载MySQL版本
我下载的两个版本分别为MySQL 5.7.32和MySQL 8.0.23。
官方下载页面:https://dev.mysql.com/downloads/mysql/
点击第一个下载按钮,如果要下载以前的版本,点击箭头所指示的地方
安装MySQL
配置文件
解压下载好的安装包,我的放在E盘下。然后在E:mysql-5.7.32-winx64
目录下新建一个my.ini
配置文件。将下面的内容复制到该文件上。
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
# 设置端口
port = 3305
# 设置mysql的安装目录
basedir=E:\mysql-5.7.32-winx64
# 设置mysql数据库的数据的存放目录(自动生成,不然可能报错)
datadir=E:\mysql-5.7.32-winx64\data
# 允许最大连接数
max_connections=10000
# 允许最大连接人数
max_user_connections=1000
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 连接时间
wait_timeout=31536000
interactive_timeout=31536000
注意:
(1)因为要在同一个系统安装两个不同版本的MySQL数据库,所以端口号不能一样。我MySQL 5使用的是3305,MySQL 8使用的是3306。
(2)basedir是设置你安装数据库时的路径。
(3)datadir是设置你数据库中的数据库文件存放的路径。
初始化
以管理员身份运行cmd,进入E:mysql-5.7.32-winx64in
目录,然后输入以下指令初始化数据库。
mysqld --initialize --console
指令执行后,会生成一堆信息,找到root@localhost:
后面的信息,那就是你数据库的初始密码(随机生成)。
MySQL服务安装,登录,修改密码
输入以下指令进行MySQL服务的安装,服务名称任取,不填则默认为mysql。我的叫“MYSQL5”。
mysqld install [服务名称]
启动MySQL服务
net start [服务名称]
登录,输入以下指令后回车,然后输入刚刚获得的密码,回车。不出意外出现以下结果则表示登录成功。至此,MySQL 5.7.32安装成功。
mysql -u root -P [端口号] -h localhost -p
登录后,输入以下指令,修改初始密码。然后输入指令exit
即可退出登录。
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '密码';
MySQL 8.0.23安装
安装步骤跟上面的一样,只是配置文件、端口号、服务名称需要更改。
MySQL 8的配置文件如下(端口号不能与MySQL5的相同)
[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录
basedir=E:\mysql-8.0.23-winx64
# 设置mysql数据库的数据的存放目录
datadir=E:\mysql-8.0.23-winx64\data
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。
max_connect_errors=10
# 服务端使用的字符集默认为utf8mb4
character-set-server=utf8mb4
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
#mysql_native_password
default_authentication_plugin=mysql_native_password
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8mb4
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8mb4
遇到的问题
(1)发生系统错误5。拒绝访问。
处理方法:记得以管理员身份运行cmd,不然权限不够。
(2)ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' (10061)
我是在登录第二个版本的数据库时,输入密码后出现的错误。然后到网上查了一些资料,发现原因是在注册表中,HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesMYSQL5
目录下的ImagePath值与HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesMYSQL8
目录下的一样,只要修改MYSQL8的ImagePath值即可解决。
处理方法:修改MYSQL8的ImagePath值。
改之前:
改之后:
数据库的卸载(压缩包版)
1、先停止数据库服务。
net stop [服务名称]
2、然后删除数据库服务。
mysqld -remove [服务名称]
3、接着将当初解压的文件夹删掉。
4、然后打开注册表编辑器,找到以下几个目录然后删掉(有的话就删)。
HEKY_LOCAL_MACHINESOFTWAREMYSQL
HKEY_LOCAL_MACHINESYSTEMControlSet001ServicesEventlogApplicationMySQL
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesEventlogApplicationMySQL
5、重启电脑即可。