win10安装并同时运行两个MySQL实例
一、下载MySQL
官网下载地址: https://dev.mysql.com/downloads/mysql/5.7.html#downloads
版本: MySQL Community Server 5.7.25
平台: win10
二、MySQL安装noinstall版本[建议所有指令直接粘贴,容易输错]
1.解压压缩包
将压缩包解压后重命名为mysql-3306和mysql-3307(复制了一份)
目录分别是
mysql-3306: D:databasemysql-3306
mysql-3307: D:databasemysql-3307
2.新建my.ini文件
D:databasemysql-3306my.ini
[client]
port=3306
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
# 设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=D:\database\mysql-3306
# 设置 mysql数据库的数据的存放目录,MySQL 8+ 不需要以下配置,系统自己生成即可,否则有可能报错
datadir=D:\database\mysql-3306\data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
server-id=1
3.安装并启动服务
这一步以管理员身份在mysql-3306目录下打开cmd命令行,按照如下配置
mysqld --install mysql-3306 --defaults-file="D:databasemysql-3306my.ini"
mysqld --defaults-file="D:databasemysql-3306my.ini" --initialize-insecure --explicit_defaults_for_timestamp
net start mysql-3306
第一条指令是安装服务mysql-3306
第二条指令是初始化数据库(会自动生成data文件夹),--initialize-insecure
会在root@localhost创建一个无密码的root用户
第三条指令是启动mysql-3306服务
有任何问题,可以查看data目录下的*.err文件
4.访问mysql-3306服务
mysql -u root -P 3306 -p
完整为mysql -u username -P Portnumber -p password
这样就完成了第一个mysql-3306实例的安装及启动
三、第二个MySQL服务的安装
1.新建my.ini文件
目录:D:databasemysql-3307my.ini
[client]
port=3307
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
# 设置3307端口
port = 3307
# 设置mysql的安装目录
basedir=D:\database\mysql-3307
# 设置 mysql数据库的数据的存放目录,MySQL 8+ 不需要以下配置,系统自己生成即可,否则有可能报错
datadir=D:\database\mysql-3307\data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
server-id=2
2.服务安装及启动
mysqld --install mysql-3307 --defaults-file="D:databasemysql-3307my.ini"
mysqld --defaults-file="D:databasemysql-3307my.ini" --initialize-insecure --explicit_defaults_for_timestamp
[optional?]之后建议修改注册表mysql-3307服务
HEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/services/
查看ImagePath的值,建议修改为
D:databasemysql-3307inmysqld.exe --defaults-file=D:databasemysql-3307my.ini mysql-3307
默认值与mysql-3306服务相同,即为
D:databasemysql-3306inmysqld.exe --defaults-file=D:databasemysql-3307my.ini mysql-3307
之后执行net start mysql-3307
即可