我有一个名为 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 的服务器上,因为我与他们有托管计划。我在他们的网站上看不到为服务器设置任何配置的任何选项。
请帮我。谢谢。