windows环境下设置mysql可远程登录

最好的方法是新建一个用户供远程登录使用, 不推荐将root用户设置为远程登录.
新建管理用户, 赋予远程登录权限(未测试, 是的, 我用了不推荐但是方便的方式[狗头]):

CREATE USER '用户名'@'localhost' IDENTIFIED BY '用户密码';
GRANT ALL PRIVILEGES ON *.* TO '用户名'@'localhost' WITH   RANT OPTION;
CREATE USER '用户名'@'远程ip' IDENTIFIED BY '远程访问密码';
GRANT ALL PRIVILEGES ON *.* TO '用户名'@'远程ip' WITH GRANT OPTION;
FLUSH PRIVILEGES;

修改root用户可以远程登录:

GRANT ALL ON *.* to root@'远程ip' IDENTIFIED BY '远程访问密码';
FLUSH PRIVILEGES;

要想所有ip都可以访问, 要设置root@'%'
这些操作都会体现在mysql数据库下的user表中.

万一命令写错了或者各种奇奇怪怪的原因导致root账户登录失败, 需要
①关掉MySQL服务;
②采用无需认证的方式登录(windows环境下):
mysqld --defaults-file="C:\ProgramData\MySQL\MySQL Server 5.7\my.ini" --skip-grant-tables,
做修改操作:
set password for root@'%' = password('123456'); 此操作相当于update user set password=PASSWORD(‘123456’) where User='root' and host = '%';;
③重启MySQL服务.

MySQL查看表结构命令:
desc 表名; // 显示字段名, 字段类型等信息
show create table 表名; // 查看创建表的ddl

你可能感兴趣的:(windows环境下设置mysql可远程登录)