mysql不允许远程用户访问主机服务器 1130

本文介绍了解决MySQL远程访问权限错误1130的方法,通过更新MySQL user表中的host字段为'%'并刷新权限,实现从远程主机访问MySQL服务器。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

mysql不允许远程用户访问主机服务器 1130 
安装完之后成 使用 mysql admin连接报错 
ERROR 1130: Host ***.***.***.*** is not allowed to connect to this MySQL server 
以下百度查到的,试过可以 
说明所连接的用户帐号没有远程连接的权限,只能在本机(localhost)登录。 
需更改 mysql 数据库里的 user表里的 host项 
把localhost改称% 
具体步骤:登陆到mysql 
首先 use mysql; 
按照别人提供的方式update的时候,出现错误。 
mysql> update user set host='%' where user = 'root'; 
ERROR 1062 (23000): Duplicate entry '%-root' for key 'PRIMARY' 
然后查看了下数据库的host信息如下: 
mysql> select host from user where user = 'root'; 
+-----------------------+ 
| host | 
+-----------------------+ 
| % | 
| 127.0.0.1 | 
| localhost.localdomain | 
+-----------------------+ 
3 rows in set (0.00 sec) 
host已经有了%这个值,所以直接运行命令: 
mysql>flush privileges; 
再用mysql administrator连接...成功!!!

### 配置 MySQL 用户允许远程访问 要在 Ubuntu 上配置 MySQL允许用户远程访问,可以按照以下方法实现: #### 1. 安装 MySQL 确保已安装 MySQL。如果没有安装,可以通过以下命令完成安装: ```bash sudo apt update sudo apt install mysql-server ``` 验证 MySQL 是否正在运行: ```bash systemctl status mysql ``` 如果显示 `active (running)` 则表明服务已经启动[^3]。 #### 2. 创建新用户并授权远程访问 进入 MySQL 命令行界面: ```bash sudo mysql -u root -p ``` 创建一个新的用户,并指定可以从任何 IP 地址 (`%`) 访问用户的权限: ```sql CREATE USER 'remote_user'@'%' IDENTIFIED BY 'your_password'; ``` 授予该用户对特定数据库的完全控制权(或其他所需的权限): ```sql GRANT ALL PRIVILEGES ON your_database.* TO 'remote_user'@'%'; FLUSH PRIVILEGES; ``` 此处替换 `'your_password'` 和 `'your_database'` 为你自己的密码和数据库名称[^1]。 #### 3. 修改 MySQL 配置文件 编辑 MySQL 的配置文件 `/etc/mysql/mysql.conf.d/mysqld.cnf` 或者 `/etc/mysql/my.cnf` 文件,找到 `bind-address` 参数并将它更改为 `0.0.0.0` 来监听所有网络接口: ```ini bind-address = 0.0.0.0 ``` 保存更改后重启 MySQL 服务使改动生效: ```bash sudo systemctl restart mysql ``` #### 4. 打开防火墙端口 确认系统的防火墙规则允许外部流量到达 MySQL 默认使用的 3306 端口。如果是 ufw,则执行以下命令打开端口: ```bash sudo ufw allow 3306/tcp sudo ufw reload ``` #### 5. 测试远程连接 使用客户端工具如 MySQL Workbench 或其他支持 MySQL 协议的应用程序来测试新的远程用户是否能够成功登录到服务器上的 MySQL 实例[^1]。 --- ### 注意事项 - **安全性考虑**: 生产环境中应避免使用 `%` 表示允许来自任意主机的连接;而是应该限定具体的IP范围或者子网掩码。 - **SSL/TLS 加密传输数据**: 对于敏感信息交换场景下推荐启用加密通信选项。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值