之前电脑上已经安装过mysql5.6。现因工作需要安装mysql8。让两个版本可以同时使用。
1. 下载mysql8免安装版本
下载地址: https://downloads.mysql.com/archives/community/.
我下载的是mysql8.0.11
解压到自己的安装目录。
2.配置环境变量
右键点击"此电脑-属性-高级系统设置"。
点击"环境变量"。
新建变量 MYSQL8_HOME=“你的解压目录”
在Path变量中添加%MYSQL8_HOME%\bin
3.创建my.ini文件
在mysql的目录下和bin目录同级,创建my.ini文件。
内容如下,可直接复制修改目录,参数等。
[mysqld]
# 设置3307端口,为了与旧版本的区分不冲突
port=3307
# 设置自己的mysql的安装目录
basedir=D:\Program Files\mysql-8.0.11-winx64
# 设置自己的mysql数据库的数据的存放目录,这个目录稍后初始化时会自动创建
datadir=D:\Program Files\mysql-8.0.11-winx64\data
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=5
# 服务端使用的字符集默认为UTF8
character-set-server=utf8mb4
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# MySQL8.0.4之前,MySQL的密码认证插件是“mysql_native_password”,而现在使用的是“caching_sha2_password”。# 但因为当前有很多数据库工具和链接包都不支持“caching_sha2_password”,为了方便,我暂时改回了“mysql_native_password”认证插件。# 默认使用“mysql_native_password”插件认证
default_authentication_plugin=mysql_native_password
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8mb4
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3307
default-character-set=utf8mb4
[mysqld]
# 用户密码的生命周期,设置为0 (不过期)
default_password_lifetime=0
4.安装mysql服务
以管理员身份打开命令行。进入mysql8的bin目录。
输入初始化命令:mysqld --initialize --console
初始化成功会提供一个默认密码。如下图红框内所示。
输入服务安装命令:mysql install 服务名
这里我设置的服务名是mysql8。
显示安装成功后,启动mysql:net start MySQL8
OK!到这为止已经安装成功啦,接下来修改默认的密码。
5.修改密码
连接到mysql8服务,刚才在my.ini中设置的端口为3307,因此输入命令:mysql -u root -p -P3307
,输入初始化成功时的默认密码。
修改密码命令:ALTER USER 'root'@'localhost'IDENTIFIED BY '新密码'
这样就完成了。
6.注意事项
1.my.ini中basedir和datadir的路径一定要写对,写自己mysql解压的那个文件夹路径。不然初始化时会报错。如下:
2.我电脑上原来安装的mysql5.6是安装版本,这次安装的mysql8是免安装版本,设置环境变量时直接添加就行了,不用修改以前的mysql5.6。3.mysql8安装成功后,要先修改默认密码,不然会报错。
4.两个mysql同时运行了,使用时根据需要连接不同端口的mysql就行。