MySQL的。加载数据

时间:2016-03-14 13:38:32

标签: mysql sql etl

我使用'load data'命令将~100M行加载到我的sql中。加载数据后,我检查了信息模式,看到该表已填充:

SELECT table_name "Table Name", table_rows "Rows Count", round(((data_length +
index_length)/1024/1024),2)  "Table Size (MB)" FROM information_schema.TABLES
WHERE table_schema = "testDB" AND table_name ="TweetPerson";

+-------------+------------+-----------------+
| Table Name  | Rows Count | Table Size (MB) |
+-------------+------------+-----------------+
| TweetPerson |   88355921 |        19517.00 |
+-------------+------------+-----------------+

但是当我尝试计算表的行或使用任何select语句时,我得到的行数为0或空集:

select count(*) from TweetPerson; 

+----------+
| count(*) |
+----------+
|        0 |
+----------+

我正在使用MySQL 5.6。当我加载数据时,我使用以下命令来加速该过程:

SET FOREIGN_KEY_CHECKS = 0;
SET UNIQUE_CHECKS = 0;
SET SESSION tx_isolation='READ-UNCOMMITTED';
SET sql_log_bin = 0;
SET autocommit = 0;

这可能是什么问题?

由于

更新 在加载数据后,我试图将自动提交设置回1,但它没有改变任何东西。我从头开始重新启动加载,autocommit设置为1并正确加载数据。

我不知道第一次数据加载有什么问题,但我非常怀疑它与自动提交有关。

0 个答案:

没有答案