我认为我的MySQL服务器或我正在使用的查询存在问题。我不确定是哪一个。
服务器是VM Ubuntu12.4 4核/ 16gb Ram MySQL 5.5.24 x86
我的查询:
INSERT INTO `NEWTEXT`.`Order_LineDetails`
( OrderLineItem_ID, Customer_ID, Order_ID, ProductName )
SELECT
'Order_Details'.'OrderDetailID',
'Orders'.'CustomerID',
'Order_Details'.'OrderID',
'prods'.'ProductName'
FROM Order_Details
JOIN Orders ON Orders.OrderID = Order_Details.OrderID
JOIN Products prods ON prods.ProductID = Order_Details.ProductID
WHERE Orders.OrderID = 500000
我不确定从哪里开始寻找问题。上述查询需要9秒以上才能完成。 Order_Details表中包含1,800,000多条记录。
让我烦恼的是,当我运行一个select查询时,它也会变慢。但是,我有另一个运行win2k MsSql的服务器,它几乎是即时的同一个SELECT查询。
我希望有人能在这里指出我正确的方向。
嗯,对不起烦恼,谢谢你的帮助。
我发现问题在于我完成导入后跳过了我通常会为新表分配PrimaryKey
的步骤。我知道,:(愚蠢。
反正!不要忘记分配Primary Keys
!