最近在调研关联数据的一些东西,需要用到rdf数据库,所以接触了virtuoso数据库。安装的坑其实并不多,之前在windows 10上安过一次。这次在ubuntu 18.04上安装一下,其他的linux发行版安装的流程也差不多。

virtuoso数据库的下载与使用

开源版本的virtuoso数据库可以在sourceforge下载。我用的是7.25版本。建议下载已经编译好的generic版本(下载图中标红色的那个),需要编译的那个版本我遇到了openssl版本不支持的问题。

下载完毕后将其解压到/usr/local下,修改一下它的权限,添加一下环境变量,这可以让你直接在终端启动virtuoso数据库服务而无需cd到vituoso的bin目录下或加上路径之后再启动,比较方便。编辑/etc下的profile文件,在最后一行加上export VIRTUOSO_HOME=/usr/local/virtuoso-opensource,然后在PATH中加入virtuoso的路径${VIRTUOSO_HOME}/bin,PATH中的各个路径用冒号分隔。我的环境变量设置如下:

设置完环境变量后重启一下。将virtuoso-openlink下的database文件夹中的virtuoso.ini.sample重命名为virtuoso.ini。然后启动终端,cd到database目录下,输入virtuoso-t -fd即可启动服务。在浏览器中输入http://localhost:8890进入8890端口网页即可打开其初始页面。点击conductor,输入用户名和密码(都是dba),可进入数据库服务页面。

点击linkedata之后再点击Quad Store Upload就可以加载rdf数据了,其中FIle是你需要上传的ttl格式或者xml格式的rdf数据(virtuoso支持多种格式的rdf数据,不止这两种)。其中的Named Graph IRI需要你自己来设定。作为测试我们将其改为http://localhost:8890/test。点击Upload完成上传数据。

之后我们打开Graphs就可以看到我们刚才创建的Named Graph IRI了。

然后我们点开SPARQL就可以进行sparql检索了。注意其中的Default Graph IRI需要设为你刚刚创建的http://localhost:8890/test。

isql的使用

Virtuoso数据库可以使用数据库的命令管理工具 ISQL。打开终端,输入isql 1111 dba dba即可进入isql。但是需要注意,Virtuoso的ISQL与系统现有的unixODBC的那个ISQL冲突(会出现[ISQL]ERROR: Could not SQLConnect错误信息),所以需要将virtuoso的bin目录下的isql重命名。我将其重命名为isql-v,这样在终端输入isql-v 1111 dba dba即可进入isql。

总结

Virtuoso我用的不是很熟练,官方文档也不是很友好。国内做关联数据的感觉也不热,相关的资源不太好找。关于Virtuoso数据库的其余的一些问题遇到会再补充。如果安装和使用过程中有疑问可以评论中提出。

Linux系统下virtuoso数据库安装与使用的更多相关文章

  1. Linux系统下 MYSQL数据库中的数据库文件在本机内迁移 (需暂停服务的方式)

    Linux系统下 MYSQL数据库中的数据库文件在本机内迁移 本机采用Ubuntu16.04系统,tar方式安装MySQL5.7.21 数据库安装文件夹为    /home/devil/mysql 现 ...

  2. 解决Linux系统下Mysql数据库中文显示成问号的问题

    当我们将开发好的javaWEB项目部署到linux系统上,操作数据库的时候,会出现中文乱码问题,比如做插入操作,发现添加到数据库的数据中文出现论码,下面就将解决linux下mysql中文乱码问题! 打 ...

  3. Linux系统下DHCP服务安装部署和使用详解

    一.概述 DHCP :动态主机设置协议(英语:Dynamic Host Configuration Protocol,DHCP)是一个局域网的网络协议,使用UDP协议工作,主要有两个用途:用于内部网或 ...

  4. Linux系统下源码安装rz/sz命令

    背景:在windows环境下,使用xshell远程连接公司内部做的一个类似centos的系统,但该linux系统yum install有问题,只能源码安装. root 账号登陆后,依次执行以下命令: ...

  5. LINUX系统下PXE网络安装虚拟机

    PXE(preboot execute environment),预启动执行环境.由于安装系统的时候,有时候是大批量的安装:这时使用磁盘或虚拟机进行单个安装,效率太差:所以我们开始使用PXE网络安装L ...

  6. Windows和Linux系统下,虚拟环境安装的全面说明和详细步骤

    虚拟环境的创建和使用 用途: ​ 1.在同一台电脑安装同一个包的不同版本 2.记录项目所用的所有的包的版本,方便部署. 如何使用: 1.创建虚拟环境 mkvirtualenv 虚拟环境名 -p pyt ...

  7. linux 系统下Anaconda的安装【安装python3.6环境首选】

    如果你不想使用python3.6的源码安装包,不想各种繁琐的配置命令,那Anacoda里边自带的python3.6环境就最合适不过了,下面来介绍下anacoda的安装过程,~so easy~Anaco ...

  8. Linux系统下给VMWare安装Tools

    1.进入Linux系统. 2.在VMware的窗口菜单中选VM >> install VMware Tools,虚拟机自动将VMware-tools装入虚拟光驱中. 3.在虚拟光驱里找出V ...

  9. linux系统下调度数据库类型资源库中的kettle job

    已经存在kettle的一个资源库enfo,在目录/works/wxj下面有一个job (testmailsuccess.kjb)如何实现手工在kettle外部执行此job和让系统每天定时的调用此job ...

随机推荐

  1. [Swift]LeetCode874. 模拟行走机器人 | Walking Robot Simulation

    A robot on an infinite grid starts at point (0, 0) and faces north.  The robot can receive one of th ...

  2. [Swift]LeetCode895. 最大频率栈 | Maximum Frequency Stack

    Implement FreqStack, a class which simulates the operation of a stack-like data structure. FreqStack ...

  3. 互联网最新kafka技术面试题含答案

    1.Kafka 的设计时什么样的呢? Kafka 将消息以 topic 为单位进行归纳 将向 Kafka topic 发布消息的程序成为 producers. 将预订 topics 并消费消息的程序成 ...

  4. 厉害—Ansible管理windows集群

    最近公司新项目需要安装400+windows server 2012系统的工作站,想着怎么能像linux下运用ansible批量管理,linux就很简单了有ssh服务 但是下却没这么简单,但还是有办法 ...

  5. 微服务架构:Eureka参数配置项详解

    版权声明:本文为博主原创文章,转载请注明出处,欢迎交流学习! Eureka涉及到的参数配置项数量众多,它的很多功能都是通过参数配置来实现的,了解这些参数的含义有助于我们更好的应用Eureka的各种功能 ...

  6. leetcode — scramble-string

    import java.util.Arrays; /** * Source : https://oj.leetcode.com/problems/scramble-string/ * * Given ...

  7. centos6.7 配置外网端口映射

    目的: 为节省公司外网ip,现需要把部分没有外网ip的服务器做端口映射. 服务器节点: 118.192.66.66(外网服务器) em1 内网 em2 外网 192.168.32.124(内网服务器) ...

  8. VS2015安装水晶报表

    最近在做一个打印功能,本来是不想用水晶报表的.想直接用微软原生的报表rdlc完成,但是整了一个上午老是打印乱码,且网上找资料找也找不出. 无奈放弃,然后就想到用水晶报表了,以前用过水晶报表,不过一直都 ...

  9. AppBoxFuture(二): Say goodbye to sql!

      信息管理类应用系统离不开关系数据存储,目前大家基本都使用的是传统的数据库如MySql.Postgres等.作者从事信息化建设十多年,个人认为传统的数据库存在以下的问题: 扩展问题:   系统数据的 ...

  10. 【.NET Core项目实战-统一认证平台】第十三章 授权篇-如何强制有效令牌过期

    [.NET Core项目实战-统一认证平台]开篇及目录索引 上一篇我介绍了JWT的生成验证及流程内容,相信大家也对JWT非常熟悉了,今天将从一个小众的需求出发,介绍如何强制令牌过期的思路和实现过程. ...