0


配置和连接另一台电脑上的 MySQL 数据库

要配置和连接另一台电脑上的 MySQL 数据库,可以按照以下步骤进行设置:

1. 配置 MySQL 服务器

在目标计算机上(192.168.10.103)进行以下操作:
  1. 修改 MySQL 配置文件:- 打开 MySQL 配置文件(通常位于 /etc/mysql/my.cnf/etc/my.cnf)。- 找到并注释掉 bind-address 行,或者将其设置为 0.0.0.0 以允许来自任何 IP 地址的连接:# bind-address = 127.0.0.1bind-address = 0.0.0.0- 保存并关闭配置文件。
  2. 重新启动 MySQL 服务sudo systemctl restart mysql或者sudoservice mysql restart
  3. 创建远程访问用户并授予权限:- 登录到 MySQL:mysql -u root -p- 创建用户并授予远程访问权限:CREATEUSER'admin'@'192.168.10.103' IDENTIFIED BY'123456';GRANTALLPRIVILEGESON*.*TO'admin'@'192.168.10.103'WITHGRANTOPTION;FLUSH PRIVILEGES;
-- 1. 如果用户已经存在,授予全局权限,允许从任何电脑连接GRANTALLPRIVILEGESON*.*TO'admin'@'%'WITHGRANTOPTION;-- 刷新权限
FLUSH PRIVILEGES;-- 2. 如果用户不存在,先创建用户然后授予权限,允许从任何电脑连接CREATEUSERIFNOTEXISTS'admin'@'%' IDENTIFIED BY'123456';GRANTALLPRIVILEGESON*.*TO'admin'@'%'WITHGRANTOPTION;-- 刷新权限
FLUSH PRIVILEGES;-- 3. 创建只针对某个数据库的所有权限GRANTALLPRIVILEGESON yourDBName.*TO'admin'@'%'WITHGRANTOPTION;-- 刷新权限
FLUSH PRIVILEGES;-- 4. 创建只针对某个数据库的增加、删除、更新权限GRANTSELECT,INSERT,UPDATEON yourDBName.*TO'admin'@'%'WITHGRANTOPTION;-- 刷新权限
FLUSH PRIVILEGES;-- 5. 创建只针对某个数据库的增加、删除、更新权限,并限制远程连接的IP地址CREATEUSERIFNOTEXISTS'remote_users'@'192.168.1.5' IDENTIFIED BY'your_secure_password';GRANTSELECT,INSERT,UPDATEON yourDBName.*TO'remote_users'@'192.168.1.5';-- 刷新权限
FLUSH PRIVILEGES;

如果你只需要授予权限给已经存在的用户,请使用第一种语法。如果用户不存在,使用第二种语法来先创建用户然后授予权限。

注意:请确保在使用

GRANT ALL PRIVILEGES

时非常小心,尤其是对

%

(所有主机)的权限,因为这会给用户在所有数据库上的所有权限,这在生产环境中可能是不安全的。

2. 配置防火墙

在目标计算机上(192.168.10.103)进行以下操作:
  1. 允许 MySQL 端口(默认是 3306): - 使用 ufw(适用于 Ubuntu):sudo ufw allow 3306- 使用 firewalld(适用于 CentOS/RHEL):sudo firewall-cmd --permanent --add-port=3306/tcpsudo firewall-cmd --reload

3. 从本地主机连接到远程 MySQL 服务器

在本地计算机上进行以下操作:
  1. 安装 MySQL 客户端工具(如果未安装):- 在 Ubuntu 上:sudoapt-getinstall mysql-client- 在 CentOS 上:sudo yum install mysql
  2. 连接到远程 MySQL 服务器mysql -u admin -p-h192.168.10.103输入密码 123456,你就应该能够连接到远程 MySQL 服务器。

4. 使用图形化工具连接

你也可以使用 MySQL Workbench、DBeaver 或 Navicat 等图形化工具来连接远程 MySQL 服务器。只需在连接设置中输入以下信息:

  • 主机名或 IP 地址:192.168.10.103
  • 端口:3306
  • 用户名:admin
  • 密码:123456

按照上述步骤,你应该能够成功配置和连接到另一台电脑上的 MySQL 数据库。如果在某些步骤中遇到问题,请检查防火墙设置、网络连接和 MySQL 配置是否正确。

5 查看开通的用户

SELECT User, Host FROM mysql.user

在这里插入图片描述

6删除权限,删除用户

要删除MySQL用户的某个特定权限,你可以使用

REVOKE

命令来收回权限。如果你要删除用户的某个连接权限或删除整个用户,分别使用

REVOKE

命令和

DROP USER

命令。

删除特定权限

如果你只想删除用户的特定权限,例如你授予了用户

username

从任何主机(

%

)连接的权限,现在想删除这个权限:

REVOKEALLPRIVILEGES,GRANTOPTIONFROM'username'@'%';
删除用户

如果你想完全删除用户

username

@

%

DROPUSER'username'@'%';
示例操作步骤
  1. 查看当前用户权限: 首先,你可以查看用户的权限,以确保你正在删除正确的权限。SHOW GRANTS FOR'username'@'%';
  2. 删除特定权限: 假设你发现用户有对 pdfDB 的权限,你可以具体撤销这些权限:REVOKESELECT,INSERT,UPDATE,DELETEON pdfDB.*FROM'username'@'%';
  3. 删除用户: 如果你决定完全删除该用户:DROPUSER'username'@'%';
重新创建用户并设置特定权限

如果你需要重新创建用户并为其设置特定的权限,可以按照之前的方法:

CREATEUSER'username'@'192.168.1.5' IDENTIFIED BY'password';GRANTSELECT,INSERT,UPDATEON pdfDB.*TO'username'@'192.168.1.5';CREATEUSER'username'@'192.168.1.6' IDENTIFIED BY'password';GRANTSELECT,INSERT,UPDATEON pdfDB.*TO'username'@'192.168.1.6';

通过这些步骤,你可以撤销用户的全局连接权限或完全删除用户,并根据需要重新创建用户并授予具体权限。

标签: sql

本文转载自: https://blog.csdn.net/zzx2016zzx/article/details/140682535
版权归原作者 好玩的Matlab(NCEPU) 所有, 如有侵权,请联系我们删除。

“配置和连接另一台电脑上的 MySQL 数据库”的评论:

还没有评论