1

我有一个名为 products2 的表,其中包含大约 830,000 行。当我有大约 500,000 行时,查询运行缓慢但很好。现在,当我尝试查询某些内容时,它几乎不会在 Mysql Workbench 中返回任何内容。显示以下错误:

>**strong text**Error Code: 2013. Lost connection to MySQL server during query  44.515 sec

我认为这与我的 Workbench 连接到 Go-daddy 主机上的数据库有关,但即使我直接使用 PHPadmin 在线工具也会发生同样的事情。我将产品 ID 作为主键、唯一索引、不为空和自动递增。完整的表结构如下:

  • ProductID int(11) AI PK
  • 供应商零件编号 varchar(100)
  • OemPartNum varchar(100)
  • UPC varchar(45)
  • 成本价格小数 (10,2)
  • 兼容文字
  • 产品名称 varchar(500)
  • 品牌 varchar(45)
  • 制造商 varchar(45)
  • 供应商 int(11)
  • 类别 varchar(45)
  • 子类别 varchar(100)
  • 注释文本
  • Notes2 varchar(500)
  • 数量 int(11)
  • PageYield varchar(45)
  • 条件 varchar(45)
  • 颜色 varchar(45)
  • 说明 varchar(21844)
  • IsTruckShip varchar(45)
  • UnitOfMeasure varchar(45)
  • 最小数量 int(11)
  • 宽度小数(8,2)
  • 长度小数(8,2)
  • 高度小数(8,2)
  • 重量小数(8,2)
  • 可返回的 varchar(5)
  • 保修 varchar(100)
  • SubCategory2 varchar(100)
  • ImageUrl1 varchar(150)

查询失败(现在几乎所有查询都失败了):

select * from Products2 where Supplier = 15 and Description is not null and ImageUrl1 is not null and flag2 = 1;

选择 *from Products2 其中供应商 = 10;

做了一些研究并增加了超时。但没有帮助。我之前在 Management Studio 中使用过 Microsoft Sql,之前在 mssql 中处理过数百万行,它既快速又简单。我只是不明白为什么它在mysql中不起作用,我是新手。如果我的数据库在本地主机上,我认为这个问题无法解决。互联网应该足够快。

服务器位于 godaddy 的服务器上,因为我与他们有托管计划。我在他们的网站上看不到为服务器设置任何配置的任何选项。

请帮我。谢谢。

4

0 回答 0