爬虫工作量由小到大的思维转变---<第四十一章 Scrapy Redis 转mysql数据连通问题>

前言:

在实际开发中,有时候我们需要将爬虫数据存储到MySQL数据库中。前面的文章已经介绍过如何让多台机器之间连通Redis,

爬虫工作量由小到大的思维转变---<第三十章 Scrapy Redis 第一步(配置同步redis)>-CSDN博客

在本章中我们将看看如何让多台机器之间连接到同一个MySQL数据库。这样的设置可以确保多台电脑能够操作同一个数据库,方便数据的共享和管理。

正文:

在多台机器上,如果我们想要让它们连接到同一个MySQL数据库时,我们可能会遇到"host '192.168.X.X' is not allowed to connect to this MySQL server"的错误。本文将指导大家如何解决这个问题,确保多台电脑能够连接到同一个MySQL数据库。

步骤:

  1. 修改my.ini文件: 在MySQL服务器上的主机A上的MySQL配置文件中,添加

  2.  bind-address=0.0.0.0

    这个设置允许其他IP地址连接到该MySQL服务器

  3. 重启MySQL服务端。爬虫工作量由小到大的思维转变---<第四十一章 Scrapy Redis 转mysql数据连通问题>_第1张图片

  4. 连接到主机A的MySQL服务器。 以Navicat为例,在客户端主机B上进行以下连接设置:

    查看主机A的IP地址: 打开命令提示符,输入 ipconfig,找到主机A的IP地址,例如:192.168.2.X。

    在客户端主机B上进行连接设置:

    如果在连接过程中遇到"host '192.168.X.X' is not allowed to connect to this MySQL server"错误,可以尝试以下解决步骤:

    解决问题: 在主机A上执行以下步骤:

    1. 在主机A的MySQL命令行中,使用以下命令登录MySQL:

      mysql -u <用户名> -p
      
    2. 在MySQL命令行中,执行以下查询语句,查找用户名的主机名:

      mysql> select host from user where user='<用户名>';
      
    3. 修改用户的主机名为'%':

      mysql> update user set host='%' where user='<用户名>';
      
    4. 刷新权限:

      mysql> flush privileges;
      
    5. 再次查询用户的主机名,确认修改已完成:

      mysql> select host from user where user='<用户名>';
      

    在解决了以上问题后,回到客户端主机B上重新进行连接即可成功连接到主机A的MySQL数据库。

以上是关于如何让多台机器连接到相同MySQL数据库的步骤。请确保在操作过程中按照实际情况进行相应的替换和配置,并确保在授权访问和设置MySQL服务器之前考虑数据库的安全性。

你可能感兴趣的:(scrapy爬虫开发,scrapy,redis,mysql)