mysql 添加访问ip


首先按下面的步骤登录Mysql服务器


登录mysql需要切换到dos下的mysql的bin目录,进行如下操作:


mysql>use mysql;


mysql>update user set host = '%' where user ='root';


mysql>flush privileges;


mysql>select 'host','user' from user where user='root';


mysql>quit
### 配置 MySQL 以允许特定 IP 地址进行远程访问 为了使 MySQL 接受来自特定 IP 地址的连接请求,需调整 `bind-address` 参数并设置防火墙规则来增强安全性。 #### 修改 MySQL 绑定地址 默认情况下,MySQL 可能被配置为仅监听本地接口。要更改此行为,在 `/etc/my.cnf` 文件中找到 `bind-address` 参数,并将其更改为服务器的公共 IP 地址[^1]: ```ini [mysqld] ... bind-address = YOUR_PUBLIC_IP_ADDRESS ``` 请注意,如果不知道服务器的具体公共 IP 地址,则可以通过多种方式查找;通常这是用于通过 SSH 连接到服务器的地址[^3]。 #### 设置防火墙规则 当决定绑定 MySQL 到公网 IP 后,应当实施严格的防火墙策略,确保只有指定的客户端 IP 能够建立连接。这一步骤对于保护数据库免遭未授权访问至关重要。 可以使用 iptables 或 ufw 工具创建相应的入站规则,例如: ```bash sudo ufw allow from SPECIFIC_CLIENT_IP/32 to any port 3306 proto tcp comment 'Allow MySQL' ``` 这里假设 MySQL 使用的是标准端口 3306 并且采用 TCP 协议传输数据。 #### 创建具有适当权限的新用户 除了网络层面的安全措施外,还需在 MySQL 中定义新账户及其对应的主机名限制。这样即使有人知道了正确的密码也无法随意登录到数据库实例上。 执行如下 SQL 命令添加一个只限于某固定外部 IP 访问的新用户(记得替换掉 `<username>` 和 `<password>` 字): ```sql CREATE USER '<username>'@'SPECIFIC_CLIENT_IP' IDENTIFIED WITH mysql_native_password BY '<password>'; GRANT ALL PRIVILEGES ON *.* TO '<username>'@'SPECIFIC_CLIENT_IP'; FLUSH PRIVILEGES; ``` 注意:由于不同版本间加密算法存在差异,建议指明身份验证插件为 `mysql_native_password` 来兼容旧版客户端应用[^4]。 完成上述操作之后重启 MySQL 服务生效变更即可实现安全可靠的远端接入功能。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值