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

打印 上一主题 下一主题

主题 861|帖子 861|积分 2583

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

在目标盘算机上(192.168.10.103)进行以下操作:


  • 修改 MySQL 配置文件

    • 打开 MySQL 配置文件(通常位于 /etc/mysql/my.cnf 或 /etc/my.cnf)。
    • 找到并注释掉 bind-address 行,大概将其设置为 0.0.0.0 以允许来自任何 IP 地点的连接:
      1. # bind-address = 127.0.0.1
      2. bind-address = 0.0.0.0
      复制代码
    • 生存并关闭配置文件。

  • 重新启动 MySQL 服务
    1. sudo systemctl restart mysql
    复制代码
    大概
    1. sudo service mysql restart
    复制代码
  • 创建远程访问用户并授予权限

    • 登录到 MySQL:
      1. mysql -u root -p
      复制代码
    • 创建用户并授予远程访问权限:
      1. CREATE USER 'admin'@'192.168.10.103' IDENTIFIED BY '123456';
      2. GRANT ALL PRIVILEGES ON *.* TO 'admin'@'192.168.10.103' WITH GRANT OPTION;
      3. FLUSH PRIVILEGES;
      复制代码

  1. -- 1. 如果用户已经存在,授予全局权限,允许从任何电脑连接
  2. GRANT ALL PRIVILEGES ON *.* TO 'admin'@'%' WITH GRANT OPTION;
  3. -- 刷新权限
  4. FLUSH PRIVILEGES;
  5. -- 2. 如果用户不存在,先创建用户然后授予权限,允许从任何电脑连接
  6. CREATE USER IF NOT EXISTS 'admin'@'%' IDENTIFIED BY '123456';
  7. GRANT ALL PRIVILEGES ON *.* TO 'admin'@'%' WITH GRANT OPTION;
  8. -- 刷新权限
  9. FLUSH PRIVILEGES;
  10. -- 3. 创建只针对某个数据库的所有权限
  11. GRANT ALL PRIVILEGES ON yourDBName.* TO 'admin'@'%' WITH GRANT OPTION;
  12. -- 刷新权限
  13. FLUSH PRIVILEGES;
  14. -- 4. 创建只针对某个数据库的增加、删除、更新权限
  15. GRANT SELECT, INSERT, UPDATE ON yourDBName.* TO 'admin'@'%' WITH GRANT OPTION;
  16. -- 刷新权限
  17. FLUSH PRIVILEGES;
  18. -- 5. 创建只针对某个数据库的增加、删除、更新权限,并限制远程连接的IP地址
  19. CREATE USER IF NOT EXISTS 'remote_users'@'192.168.1.5' IDENTIFIED BY 'your_secure_password';
  20. GRANT SELECT, INSERT, UPDATE ON yourDBName.* TO 'remote_users'@'192.168.1.5';
  21. -- 刷新权限
  22. FLUSH PRIVILEGES;
复制代码
假如你只必要授予权限给已经存在的用户,请使用第一种语法。假如用户不存在,使用第二种语法来先创建用户然后授予权限。
注意:请确保在使用 GRANT ALL PRIVILEGES 时非常小心,尤其是对 %(所有主机)的权限,因为这会给用户在所有数据库上的所有权限,这在生产环境中可能是不安全的。
2. 配置防火墙

在目标盘算机上(192.168.10.103)进行以下操作:


  • 允许 MySQL 端口(默认是 3306)

    • 使用 ufw(适用于 Ubuntu):
      1. sudo ufw allow 3306
      复制代码
    • 使用 firewalld(适用于 CentOS/RHEL):
      1. sudo firewall-cmd --permanent --add-port=3306/tcp
      2. sudo firewall-cmd --reload
      复制代码

3. 从当田主机连接到远程 MySQL 服务器

在本土地算机上进行以下操作:


  • 安装 MySQL 客户端工具(假如未安装):

    • 在 Ubuntu 上:
      1. sudo apt-get install mysql-client
      复制代码
    • 在 CentOS 上:
      1. sudo yum install mysql
      复制代码

  • 连接到远程 MySQL 服务器
    1. mysql -u admin -p -h 192.168.10.103
    复制代码
    输入密码 123456,你就应该能够连接到远程 MySQL 服务器。
4. 使用图形化工具连接

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


  • 主机名或 IP 地点:192.168.10.103
  • 端口:3306
  • 用户名:admin
  • 密码:123456
按照上述步骤,你应该能够乐成配置和连接到另一台电脑上的 MySQL 数据库。假如在某些步骤中遇到问题,请检查防火墙设置、网络连接和 MySQL 配置是否精确。
5 检察开通的用户

  1. SELECT User, Host FROM mysql.user
复制代码

6删除权限,删除用户

要删除MySQL用户的某个特定权限,你可以使用 REVOKE 下令来收回权限。假如你要删除用户的某个连接权限或删除整个用户,分别使用 REVOKE 下令和 DROP USER 下令。
删除特定权限

假如你只想删除用户的特定权限,例如你授予了用户 username 从任何主机(%)连接的权限,现在想删除这个权限:
  1. REVOKE ALL PRIVILEGES, GRANT OPTION FROM 'username'@'%';
复制代码
删除用户

假如你想完全删除用户 username@%:
  1. DROP USER 'username'@'%';
复制代码
示例操作步骤


  • 检察当前用户权限
    起首,你可以检察用户的权限,以确保你正在删除精确的权限。
    1. SHOW GRANTS FOR 'username'@'%';
    复制代码
  • 删除特定权限
    假设你发现用户有对 pdfDB 的权限,你可以具体撤销这些权限:
    1. REVOKE SELECT, INSERT, UPDATE, DELETE ON pdfDB.* FROM 'username'@'%';
    复制代码
  • 删除用户
    假如你决定完全删除该用户:
    1. DROP USER 'username'@'%';
    复制代码
重新创建用户并设置特定权限

假如你必要重新创建用户并为其设置特定的权限,可以按照之前的方法:
  1. CREATE USER 'username'@'192.168.1.5' IDENTIFIED BY 'password';
  2. GRANT SELECT, INSERT, UPDATE ON pdfDB.* TO 'username'@'192.168.1.5';
  3. CREATE USER 'username'@'192.168.1.6' IDENTIFIED BY 'password';
  4. GRANT SELECT, INSERT, UPDATE ON pdfDB.* TO 'username'@'192.168.1.6';
复制代码
通过这些步骤,你可以撤销用户的全局连接权限或完全删除用户,并根据必要重新创建用户并授予具体权限。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

千千梦丶琪

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表