mysql怎么加载txt文本1148_mysql load 从文件读入数据提示ERROR 1148

创建数据表CREATE TABLE weblogs(

md5 varchar(32),

url varchar(64),

request_date date,

request_time time,

ip varchar(15))

我的版本是:Server version: 5.5.38-0ubuntu0.12.04.1-log (Ubuntu)

在使用如下命令导入时会报错:

mysql> LOAD DATA LOCAL INFILE '/home/hadoop/weblog_entries.txt' INTO table weblogs FIELDS TERMINATED BY '\t' LINES TERMINATED BY '\n';

ERROR 1148 (42000): The used command is not allowed with this MySQL version

提示这个版本的mysql不支持这样导入

解决办法:http://dev.mysql.com/doc/refman/5.5/en/load-data-local.html

[email protected]:~$ mysql -uroot --local-infile=1 -p

Enter password:

Welcome to the MySQL monitor. Commands end with ; or \g.

Your MySQL connection id is 45

Server version: 5.5.38-0ubuntu0.12.04.1-log (Ubuntu)

Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> use realworld;

Reading table information for completion of table and column names

You can turn off this feature to get a quicker startup with -A

Database changed

mysql> LOAD DATA LOCAL INFILE '/home/hadoop/weblog_entries.txt' INTO table weblogs FIELDS TERMINATED BY '\t' LINES TERMINATED BY '\n';

Query OK, 3000 rows affected (1.17 sec)

Records: 3000 Deleted: 0 Skipped: 0 Warnings: 0

在连接mysql的时候加上--local-infile的参数 然后导入即可

或者使用如下方式:

mysql -u [youruser] -h [youraddress] -p [yourpassword] [yourdatabase] --local-infile=1 -e "[yourcmd]"

mysql -uroot -p123456 realworld --local-infile=1 -e "LOAD DATA local INFILE '/home/hadoop/weblog_entries.txt' INTO table weblogs FIELDS TERMINATED BY '\t' LINES TERMINATED BY '\n'"原因分析:根据官方的解释是mysql在编译的时候默认把local-infile的参数设为0,就是关闭了从本地load的功能,所以如果需要使用只能自己打开 通过链接的时候把该参数设置为1的方式

另外windows下面的换行符和linux的是不一样的

windows换行是\r\n,十六进制数值是:0D0A。

LINUX换行是\n,十六进制数值是:0A

原文:http://blog.csdn.net/sunflower_cao/article/details/40347461

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值