如何修复使用MySQL LOAD INFILE得到的错误?

问题描述 投票:1回答:1

我有一个产品表,具有以下结构

CREATE TABLE IF NOT EXISTS `products` (

  `id` int(50) NOT NULL AUTO_INCREMENT,
  `productname` varchar(255) NOT NULL,
  `description` text NOT NULL,
  `merchanturl` text NOT NULL,
  `imageurl` text NOT NULL,
  `price` varchar(10) NOT NULL,
  `original` varchar(10) NOT NULL,
  `currency` varchar(12) NOT NULL,
  `extrafields` text NOT NULL,
  `feedid` varchar(25) NOT NULL,
  `category` varchar(255) NOT NULL,
  `merchant` varchar(255) NOT NULL,
  PRIMARY KEY (`id`),
  FULLTEXT KEY `productname` (`productname`),
  FULLTEXT KEY `description` (`description`)
) ENGINE=MyISAM;

我使用mysql LOAD INFILE命令将分隔的数据文件导入到此表中。它现在有400万条记录。当我使用LOAD INFILE导入更多数据时,我收到以下错误:

ERROR 2002(HY000):无法通过套接字'/var/run/mysqld/mysqld.sock'连接到本地MySQL服务器(2)

之后我无法访问产品表。 如何提高表的性能?请注意,某些数据文件的大小超过100MB。我有另外400万个条目需要导入到表中。

请建议避免这些问题的方法。

谢谢,Sree

sql mysql load-data-infile
1个回答
0
投票

尝试使用TCP / IP而不是socket连接到mysql服务器。 Socket仅适用于unix操作系统。

© www.soinside.com 2019 - 2024. All rights reserved.