在 Windows 环境下完整配置额外 MySQL 实例的步骤如下(以 3308 端口为例)
1. 创建目录
mkdir F:\Database3308
mkdir F:\Database3308\data
创建配置文件 F:\Database3308\my.ini
2.初始化数据库:
"C:\program1\mysql8\bin\mysqld.exe" --defaults-file="D:\Database3308\my.ini" --initialize-insecure --console
或者 cd "C:\program1\mysql8\bin"
mysqld --defaults-file="D:\Database3308\my.ini" --initialize-insecure --console
3.安装为Windows服务
mysqld --install MySQL3308 --defaults-file="D:\Database3308\my.ini"
或
"C:\program1\mysql8\bin\mysqld.exe" --install MySQL3308 --defaults-file="D:\Database3308\my.ini"
4.启动服务并设置root密码
net start MySQL3308
mysql -u root -P 3308 -h 127.0.0.1 -e "ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';"
5.验证连接
mysql -u root -P 3308 -p
6.服务管理命令
操作 命令
启动服务 net start MySQL3308
停止服务 net stop MySQL3308
删除服务 sc delete MySQL3308
查看服务 sc query MySQL3308
7.需要先手动创建数据库才能导入
create database trade_demo;
mysql -P 3308 -u root -p trade_okx < "G:\mysql-backup\trade_demo.sql"
8.开启mysql远程连接
mysql -u root -P 3308 -p
use mysql;
在 MySQL 8.0 及以上版本,不能直接用 GRANT 创建用户,必须先 CREATE USER,再 GRANT:
-- 1. 创建用户
CREATE USER 'root'@'%' IDENTIFIED BY '123456';
-- 2. 授予所有权限
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
-- 3. 刷新权限
FLUSH PRIVILEGES;
9.创建mysql8只读用户(暂不限制ip范围)
root用户登录: mysql -u root -P 3308 -p
创建用户并设置密码: create user 'testuser'@'%' identified by '123456';
授予指定数据库只读权限: grant select on trade_demo.* to 'testuser'@'%';
grant select on trade_demo.* to 'testuser'@'%';
刷新权限使更改生效:
FLUSH PRIVILEGES;