Cassandra新手在这里。我刚刚在Red Hat Linux上设置了概念验证单节点机器。我终于得到了所有权限,并启动了机器。然后我创建了一个名为harvard的密钥空间,发出use命令切换到harvard,然后创建一个名为hmxpc的表。
然后我想导入一个.csv文件。为了简单起见,我将.csv文件放在cassandra文件夹中,chmod 755文件,并发出以下内容:
copy hmxpc (course_id, userid_di, certified, explored, final_cc_cname_di, gender, grade, incomplete_flag, last_event_di, loe_di, nchapters, ndays_act, nevents, nforum_posts, nplay_video, registered, roles, start_time_di, viewed, yob) from 'cassandra/HMXPC.csv' with header=true;
当我运行它时,我收到以下错误:
[Errno 13]权限被拒绝:' import_harvard_hmxpc.err'
我做错了什么?
答案 0 :(得分:0)
此问题最终成为Red Hat权限问题,与Cassandra无关。谢谢你的期待。
答案 1 :(得分:0)
我遇到了同样的问题。我通过使用--debug标志来解决它。 我的花车有','而不是'。'所以我的csv无法解析。 CQLSH试图写一个描述问题的错误文件,但我在/ root中,cassandra无法写入。所以我cd -ed到/ tmp并做了同样的事情,这次我得到的错误显示我的花车无法解析
答案 2 :(得分:0)
我遇到了与screenshot_Errored中显示的错误相同的错误。将.csv文件移动到.cassandra目录,并能够执行与screenshot_worked中所示相同的csql命令
答案 3 :(得分:0)
除了其他响应中描述的其他情况外,如果在COPY命令中出现不正确的顺序或列数,则可能会出现错误,如下所述。
即考虑使用一个带有以下标题行的CSV文件:
actor, added date, video id, character name, description, encoding, tags, title, user id
如果我使用以下COPY命令:
cqlsh:killrvideo> COPY videos_by_actor(actor, added_date, character_name, description, encoding, tags, title, user_id, video_id) FROM 'videos_by_actor.csv' WITH HEADER = true;
我会收到错误13:
Using 7 child processes
Starting copy of killrvideo.videos_by_actor with columns [actor, added_date, character_name, description, encoding, tags, title, user_id, video_id].
[Errno 13] Permission denied: 'import_killrvideo_videos_by_actor.err'
如果我按如下所示在COPY命令中正确设置了列名
cqlsh:killrvideo>COPY videos_by_actor(actor, added_date, video_id, character_name, description, encoding, tags, title, user_id ) FROM 'videos_by_actor.csv' WITH HEADER = true
然后命令成功完成。
Using 7 child processes
Starting copy of killrvideo.videos_by_actor with columns [actor, added_date, video_id, character_name, description, encoding, tags, title, user_id].
Processed: 81659 rows; Rate: 5149 rows/s; Avg. rate: 2520 rows/s
81659 rows imported from 1 files in 32.399 seconds (0 skipped).