【问题标题】:Virtuoso ISQL data import can't stat fileVirtuoso ISQL 数据导入无法统计文件
【发布时间】:2017-05-07 12:17:21
【问题描述】:

isql-vt(Virtuoso 的 isql 的 Ubuntu 名称)中,我正在尝试导入一个测试 .ttl 文件,但收到错误“无法统计文件”:

SQL> DB.DBA.TTLP(file_to_string_output('./scratch/ttl/granule.ttl'),'','http://origin.mytest.org/');

*** Error 42000: [Virtuoso Driver][Virtuoso Server]FA112: Can't stat file './scratch/ttl/granule.ttl', error (2) : No such file or directory

但是,文件肯定在那里;我什至可以cat它:

SQL> !cat ./scratch/ttl/granule.ttl;
@prefix datacite: <http://purl.org/spar/datacite/> .
@prefix prov: <http://www.w3.org/ns/prov#> .
<http://0.0.0.0:3000/granule/MOD09.A2016278.0110.006.2016279074214.hdf>
   datacite:identifier "MOD09.A2016278.0110.006.2016279074214.hdf";
   prov:wasGeneratedBy <http://0.0.0.0:3000/run/MODAPS_456056327>;
   a prov:entity .

SQL> 

为什么DB.DBA.TTLP 命令说不能统计?

【问题讨论】:

    标签: file-access virtuoso


    【解决方案1】:

    尝试使用完整路径给出了一个更好的错误消息:

    SQL> DB.DBA.TTLP(file_to_string_output('/home/ubuntu/Origin/scratch/ttl/granule.ttl'),'','http://origin.nasa.gov/');
    
    *** Error 42000: [Virtuoso Driver][Virtuoso Server]FA003: Access to 
    '/home/ubuntu/Origin/scratch/ttl/granule.ttl' is denied due to access control in ini file
    

    所以,解决方法是在/etc/virtuoso-opensource-6.1/virtuoso.ini中添加路径,例如:

    ...
    DirsAllowed  = ., /usr/share/virtuoso-opensource-6.1/vad, /home/ubuntu/Origin
    ...
    

    并重新启动 virtuoso 以使更改生效。

    【讨论】:

    • 我注意到您显然正在运行非常旧的 Virtuoso 6.1。建议所有用户使用Virtuoso 7.2.4This answer 可能会帮助您到达那里。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多