在MySql中添加远程控制用户

本文介绍在MySql中创建具有超级管理权限且能远程访问的新用户的方法。提供了两种途径:使用GRANT语句或INSERT语句,并解释了每一步的具体操作。

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

在安装MySql后只有一个超级管理权限的用户ROOT,而且ROOT限制只能在数据库本机上使用,如果我们要远程管理MySql咋办呢?那么事实上我们需要添加一个具有超级管理权限并且可能远程访问的超级用户,而在MySql中有两种方法可以实现这个目的,我们以增加一个超级权限管理用户admin为例来说明。

       你可以通过发出GRANT语句增加新用户:首先在数据库本机上用ROOT用户登录上MySql(不用我告诉你如何登录吧?),然后:

mysql>GRANT ALL PRIVILEGES ON *.* TO admin@localhost IDENTIFIED BY 'something' WITH GRANT OPTION; 
mysql>GRANT ALL PRIVILEGES ON *.* TO
admin@"%" IDENTIFIED BY 'something' WITH GRANT OPTION;

第一句增加了一个admin用户授权通过本地机(localhost)访问,密码“something”。第二句则是授与admin用户从任何其它主机发起的访问(通配符%)。
        
        你也可以直接通过发出INSERT语句增加同样的用户存取信息:
mysql>INSERT INTO user VALUES('localhost','admin',PASSWORD('something'), 'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y')
mysql>INSERT INTO user VALUES('%','admin',PASSWORD('something'), 'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y')

      取决于你的MySQL版本,对上述,你可能必须使用一个不同数目'Y'值(在3.22.11以前的版本有更少的权限列)。  

验证方法,在命令行中输入:mysql -h主机名或IP地址 -u用户名 -p密码

### 配置 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 加密传输数据**: 对于敏感信息交换场景下推荐启用加密通信选项。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值