mysql开启可以使用IP有权限访问

在MySQL 8.0及更高版本中,GRANT 语句的语法有所变化。不再使用 IDENTIFIED BY 'password' 来设置或修改用户的密码。相反,你需要分两步来完成这个过程:首先创建或修改用户,并设置密码;然后授予相应的权限。

这里是你应该遵循的步骤:

  1. 创建或修改用户及其密码

    • 如果 root 用户已存在并且你只是想更改其密码或允许从另一个地址访问,使用 ALTER USER 语句:

      sql 复制代码
      ALTER USER 'root'@'内网IP' IDENTIFIED BY '新密码';

      '内网IP' 替换为你的内网IP地址,'新密码' 替换为新密码。

    • 如果你想允许 root 用户从任何IP地址连接,你可以使用:

      sql 复制代码
      ALTER USER 'root'@'%' IDENTIFIED BY '新密码';
    • 如果 root 用户在指定的主机上还不存在,你需要先创建用户:

      sql 复制代码
      CREATE USER 'root'@'内网IP' IDENTIFIED BY '新密码';

      或者对于任意IP地址:

      sql 复制代码
      CREATE USER 'root'@'%' IDENTIFIED BY '新密码';
  2. 授予权限

    • 然后使用 GRANT 语句授予权限(不再包含密码):

      sql 复制代码
      GRANT ALL PRIVILEGES ON *.* TO 'root'@'内网IP' WITH GRANT OPTION;

      或者对于任意IP地址:

      sql 复制代码
      GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
  3. 刷新权限

    • 最后,刷新权限使更改生效:

      sql 复制代码
      FLUSH PRIVILEGES;

这些操作完成后,root 用户应该能够从指定的内网IP地址访问MySQL服务器。记得替换示例中的 '内网IP''新密码' 为实际的IP地址和你想要设置的密码。请小心操作,并确保你了解每个命令的作用。如果你对此有任何疑问,最好咨询经验丰富的数据库管理员。

相关推荐
东风破_7 小时前
从输入 juejin.cn 到看到页面:DNS、Nginx、服务器集群与 CDN 到底在做什么?
后端·mysql
小成很成7 小时前
mysql 8.0.21 升级 mysql 8.0.45(经过生产环境验证)
android·mysql·adb
东风破_7 小时前
从 0 设计一个博客数据库:用户、头像与文章表应该怎么建?
后端·mysql
虎王物联7 小时前
工业Modbus TCP协议深度实战:STM32 HAL库实现从机通信与数据上云
stm32·物联网·网络协议·tcp/ip·嵌入式
大模型码小白9 小时前
Spring AI Tool 实现自然语言操作 MySQL 数据库详解
服务器·开发语言·数据库·人工智能·python·mysql·spring
楷哥爱开发10 小时前
TikTok Shop新加坡本土店入驻:如何选择新加坡本土住宅IP?
网络·网络协议·tcp/ip
云计算DevOps-韩老师10 小时前
【MySQL运维DBA】【SQL基础系列002篇】
运维·mysql·dba
放风铃的兔子11 小时前
15 年 DBA 经验:MySQL 迁移到 KES,哪些东西真的不用改?
mysql
虎王物联11 小时前
PHP实现MQTT消息处理:物联网设备数据接收与指令下发
android·物联网·php