setup(1)
on reboot.
At that time or by running it again subsequently, we make a couple of changes: 8890/tcp
in the firewall configuration to allow external access to Virtuoso's web-based interfaces such as the Conductor.
yum update
sudo
only for the final make install
phase, so create a new user with the adduser
command and run visudo
to add them to sudoers
.Virtuoso is not currently packaged for CentOS?, so has to be built from source.
Note: Useful prior reading: please see the pages VOSBuild and VOSMake in the VOS Wiki.
Proceed to install the required build dependencies:
[tim@centos ~]$ sudo yum install gcc gmake autoconf automake libtool flex \ bison gperf gawk m4 make openssl-devel readline-devel wget Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: mirror.as29550.net * extras: mirror.as29550.net * updates: mirror.as29550.net Setting up Install Process No package gmake available. Package gawk-3.1.5-14.el5.i386 already installed and latest version Package m4-1.4.5-3.el5.1.i386 already installed and latest version Package 1:make-3.81-3.el5.i386 already installed and latest version No package openssl-dev available. Resolving Dependencies --> Running transaction check ---> Package autoconf.noarch 0:2.59-12 set to be updated --> Processing Dependency: imake for package: autoconf [...] Dependency Installed: cpp.i386 0:4.1.2-50.el5 glibc-devel.i386 0:2.5-58 glibc-headers.i386 0:2.5-58 imake.i386 0:1.0.2-3 kernel-headers.i386 0:2.6.18-238.5.1.el5 Complete! [tim@centos ~]$
Download the latest VOS archive (source tarball such as virtuoso-opensource-6.1.3.tar.gz
) from GitHub and unpack it:
[tim@centos ~]$ tar xvpfz virtuoso-opensource-6.1.3.tar.gz virtuoso-opensource-6.1.3/ virtuoso-opensource-6.1.3/bin/ virtuoso-opensource-6.1.3/bin/installer/ virtuoso-opensource-6.1.3/bin/installer/virtuoso.ini virtuoso-opensource-6.1.3/bin/installer/demo.ini ...
[tim@centos virtuoso-opensource-6.1.3]$ ./configure --prefix=/usr/local/ \ --with-readline
README
files in the source distribution and run './configure --help
'.
isql
tool once built../configure
script.
This forms a base directory under which Virtuoso will create/use the following structure: /usr/local/lib/
/usr/local/bin/
/usr/local/share/virtuoso/vad/
/usr/local/share/virtuoso/doc/
/usr/local/var/lib/virtuoso/db/
/usr/local/var/lib/virtuoso/vsp/
--bindir
, --libdir
, etc.
--with-layout={GNU|Debian|Gentoo|RedHat|FreeBSD|opt|OpenLink}
opt
" means a prefix of /opt
and
[tim@centos virtuoso-opensource-6.1.3]$ nice make
make check
' to run the test-suite (beware, it takes hours and multiple gigabytes of disk-space).
[tim@centos virtuoso-opensource-6.1.3]$ nice make check
[tim@centos virtuoso-opensource-6.1.3]$ sudo make install
virtuoso.ini
and store it safely in case of making erroneous changes.
[tim@centos v-oss]$ cd /usr/local/var/lib/virtuoso/db/ [tim@centos db]$ ls virtuoso.ini
sudo chown -R tim .
).
Virtuoso only requires root if you wish to use it as a webserver listening on port 80 or other privileged port; by default, it listens only on high ports.)
[tim@centos db]$ virtuoso-t -df Wed Apr 13 2011 15:12:48 INFO: { Loading plugin 1: Type 'plain', file 'wikiv' in '/usr/local/lib/virtuoso/hosting' ... 15:13:10 INFO: Checkpoint finished, log reused 15:13:10 INFO: PL LOG: Installing Virtuoso Conductor version 1.00.7890 (DAV) 15:13:10 INFO: Checkpoint started 15:13:14 INFO: Checkpoint finished, log reused 15:13:14 INFO: HTTP/WebDAV server online at 8890 15:13:14 INFO: Server online at 1111 (pid 4125)
virtuoso.db
, virtuoso.trx
(the transaction log), etc.) and installed the Conductor VAD package into the database.
-df
" flags.
You can still see most of what's happening by running tail -f virtuoso.log
.You can access the Conductor menu by pointing your web-browser at http://localhost:8890/conductor/
(substitute the hostname as appropriate).
From the Conductor you can manage users and automated backups, install VAD packages, execute SQL commands in a web-based iSQL tool, configure the RDF Sponger, and much more.
There are two system users of immediate importance:
dba
-- the relational data administrative account dav
-- the WebDAV administrative accountBy default, both of these accounts have their passwords set to their respective usernames; it is highly advised that you change these as soon as possible, for security reasons.
Virtuoso provides a SQL/ODBC listener on port 1111/tcp
by default (configurable in the INI
).
You can connect directly to this and execute SQL statements using the included isql
tool:
[tim@centos db]$ ../bin/isql localhost:1111 dba dba OpenLink Interactive SQL (Virtuoso), version 0.9849b. Type HELP; for help and EXIT; to exit. SQL> tables; Connected to OpenLink Virtuoso Driver: 06.01.3127 OpenLink Virtuoso ODBC Driver Showing SQLTables of tables like 'NULL.NULL.NULL', tabletype/colname like 'NULL' TABLE_QUALIFIER TABLE_OWNER TABLE_NAME TABLE_TYPE REMARKS VARCHAR VARCHAR VARCHAR VARCHAR VARCHAR _______________________________________________________________________________ DB DBA ADMIN_SESSION SYSTEM TABLE NULL DB DBA ADM_OPT_ARRAY_TO_RS_PVIEW SYSTEM TABLE NULL [...]
Virtuoso is highly configurable: the same executables and packages will service anything from a small "lite-mode" installation with a database of 10Mb up to a huge multi-user enterprise installation with terabytes of data.
The defaults with Virtuoso Open-Source give a 160MB process size in memory, about 29MB database and total 237MB footprint on disk; this has 20 threads running for database and/or web-server use.
The wiki document VOSScale describes how to scale Virtuoso in some detail.