【发布时间】:2013-05-06 10:56:16
【问题描述】:
我在 CentOS 6.4 上运行 MariaDB (10.0.2-MariaDB),并想使用 MariaDB 的 CONNECT-Engine 来读取一些日志文件。由于日志文件太大,我用两个 CSV 文件重新创建了错误,每个文件都包含一行。
MariaDB [jedi]> create table test1 ( a char(10), b char(10) ) engine=CONNECT table_type=CSV file_name='/tmp/test1.csv' sep_char=';' compress=0 multiple=0;
Query OK, 0 rows affected (0.00 sec)
MariaDB [jedi]> create table test2 ( a char(10), b char(10) ) engine=CONNECT table_type=CSV file_name='/tmp/test2.csv' sep_char=';' compress=0 multiple=0;
Query OK, 0 rows affected (0.01 sec)
MariaDB [jedi]> select * from test1;
+------+------+
| a | b |
+------+------+
| test | bla |
+------+------+
1 row in set (0.00 sec)
MariaDB [jedi]> select * from test2;
+-------+------+
| a | b |
+-------+------+
| test2 | blub |
+-------+------+
1 row in set (0.00 sec)
现在有趣的功能是将这些文件合并到一个表中,这应该是可能的(说https://kb.askmonty.org/en/connect-table-types-data-files/#multiple-file-tables)。
但如果我这样做:
MariaDB [jedi]> create table test_all ( a char(10), b char(10) ) engine=CONNECT table_type=CSV file_name='/tmp/test*.csv' sep_char=';' compress=0 multiple=1;
Query OK, 0 rows affected (0.00 sec)
MariaDB [jedi]> select * from test_all;
ERROR 2013 (HY000): Lost connection to MySQL server during query
有人知道解释吗?没关系“compress=0”,我还测试了从 gzip 压缩文件中读取,这就像一个魅力......直到您尝试从两个文件中读取到一个表中。
谢谢, 延斯
【问题讨论】:
-
日志文件是否处于活动状态?也就是说,在您尝试从中提取数据时它们是否正在更新?
-
不,它们只是两个非常简单的文件,其他人无法访问。
标签: mariadb