$ tar xvf virtuoso-universal-server-6.1.tar
x install.sh
x universal-server.taz
$ sh install.sh
- Extracting Virtuoso Universal Server v6.1
- Creating default environment settings
- Creating default database settings
Configuring: database
Creating directory $VIRTUOSO_HOME/database/backup
Installing new virtuoso.ini in $VIRTUOSO_HOME/database
Installing new php.ini in $VIRTUOSO_HOME/database
Creating symlink to $VIRTUOSO_HOME/bin/virtuoso-iodbc-t
- Registering ODBC drivers
- Registering .NET provider for Mono
- Installing VAD packages in database (this can take some time)
- Checking where license should be stored
- Starting OpenLink License Manager
- Checking for initial Virtuoso license
- Starting Virtuoso server instance
- Finalizing installation
This concludes the first part of the installation.
- Attempting to start browser
Please start a browser manually and open the following URL to finalize
the installation process:
http://cname:8890/install/
Installation completed
$
$ . ./virtuoso-environment.sh $ virtuoso-stop.sh Shutting down Virtuoso instance in [database] $
rm -rf database
-cluster-size Number of nodes in cluster -cluster-node Node number in a cluster -cluster-port Base portnumer for cluster -cluster-ipc-port Base portnumer for cluster IPC -cluster_size Size of the cluster -virtuoso_home Virtuoso home path
$ virtuoso-mkcluster.sh Configuring cluster node: 1/4 Creating directory $VIRTUOSO_HOME/cluster_01 Creating directory $VIRTUOSO_HOME/cluster_01/backup Creating directory $VIRTUOSO_HOME/cluster_01/logs Installing new virtuoso.ini in $VIRTUOSO_HOME/cluster_01 Installing new php.ini in $VIRTUOSO_HOME/cluster_01 Creating symlink to $VIRTUOSO_HOME/bin/virtuoso-iodbc-t Configuring cluster node: 2/4 Creating directory $VIRTUOSO_HOME/cluster_02 Creating directory $VIRTUOSO_HOME/cluster_02/backup Installing new virtuoso.ini in $VIRTUOSO_HOME/cluster_02 Removing unneeded sections from virtuoso.ini Creating symlink to $VIRTUOSO_HOME/bin/virtuoso-iodbc-t Configuring cluster node: 3/4 Creating directory $VIRTUOSO_HOME/cluster_03 Creating directory $VIRTUOSO_HOME/cluster_03/backup Installing new virtuoso.ini in $VIRTUOSO_HOME/cluster_03 Removing unneeded sections from virtuoso.ini Creating symlink to $VIRTUOSO_HOME/bin/virtuoso-iodbc-t Configuring cluster node: 4/4 Creating directory $VIRTUOSO_HOME/cluster_04 Creating directory $VIRTUOSO_HOME/cluster_04/backup Installing new virtuoso.ini in $VIRTUOSO_HOME/cluster_04 Removing unneeded sections from virtuoso.ini Creating symlink to $VIRTUOSO_HOME/bin/virtuoso-iodbc-t $
$ more cluster_01/cluster.ini [Cluster] Threads = 20 Master = Host1 ThisHost = Host1 ReqBatchSize = 10000 BatchesPerRPC = 4 BatchBufferBytes = 20000 LocalOnly = 2 MaxKeepAlivesMissed = 1000 Host1 = hostname:22201 Host2 = hostname:22202 Host3 = hostname:22203 Host4 = hostname:22204 MaxHosts = 5 $ more cluster_02/cluster.ini [Cluster] Threads = 20 Master = Host1 ThisHost = Host2 ReqBatchSize = 10000 BatchesPerRPC = 4 BatchBufferBytes = 20000 LocalOnly = 2 MaxKeepAlivesMissed = 1000 Host1 = hostname:22201 Host2 = hostname:22202 Host3 = hostname:22203 Host4 = hostname:22204 MaxHosts = 5 $ more cluster_03/cluster.ini [Cluster] Threads = 20 Master = Host1 ThisHost = Host3 ReqBatchSize = 10000 BatchesPerRPC = 4 BatchBufferBytes = 20000 LocalOnly = 2 MaxKeepAlivesMissed = 1000 Host1 = hostname:22201 Host2 = hostname:22202 Host3 = hostname:22203 Host4 = hostname:22204 MaxHosts = 5 $ more cluster_04/cluster.ini [Cluster] Threads = 20 Master = Host1 ThisHost = Host4 ReqBatchSize = 10000 BatchesPerRPC = 4 BatchBufferBytes = 20000 LocalOnly = 2 MaxKeepAlivesMissed = 1000 Host1 = hostname:22201 Host2 = hostname:22202 Host3 = hostname:22203 Host4 = hostname:22204 MaxHosts = 5 $
$ virtuoso-start.sh Starting Virtuoso instance in [cluster_01] Starting Virtuoso instance in [cluster_02] Starting Virtuoso instance in [cluster_03] Starting Virtuoso instance in [cluster_04] $
$ isql 12201
Connected to OpenLink Virtuoso
Driver: 06.01.3127 OpenLink Virtuoso ODBC Driver
OpenLink Interactive SQL (Virtuoso), version 0.9849b.
Type HELP; for help and EXIT; to exit.
SQL> status ('cluster');
REPORT
VARCHAR
_______________________________________________________________________________
Cluster 4 nodes, 4 s. 1 m/s 0 KB/s 0% cpu 0% read 0% clw threads 1r 0w 0i buffers 2981 0 d 0 w 0 pfs
1 Rows. -- 7 msec.
SQL> cl_ping(1,500, 1000);
Done. -- 7 msec.
SQL> cl_ping(2,500, 1000);
Done. -- 52 msec.
SQL> cl_ping(3,500, 1000);
Done. -- 60 msec.
SQL> cl_ping(4,500, 1000);
Done. -- 51 msec.
SQL>
Machine 1 (hostname1) $ more cluster_01/cluster.ini [Cluster] Threads = 20 Master = Host1 ThisHost = Host1 ReqBatchSize = 10000 BatchesPerRPC = 4 BatchBufferBytes = 20000 LocalOnly = 2 MaxKeepAlivesMissed = 1000 Host1 = hostname1:22201 Host2 = hostname1:22202 Host3 = hostname2:22203 Host4 = hostname2:22204 MaxHosts = 5 $ more cluster_02/cluster.ini [Cluster] Threads = 20 Master = Host1 ThisHost = Host2 ReqBatchSize = 10000 BatchesPerRPC = 4 BatchBufferBytes = 20000 LocalOnly = 2 MaxKeepAlivesMissed = 1000 Host1 = hostname1:22201 Host2 = hostname1:22202 Host3 = hostname2:22203 Host4 = hostname2:22204 MaxHosts = 5 $ Machine 2 (hostname2) $ more cluster_03/cluster.ini [Cluster] Threads = 20 Master = Host1 ThisHost = Host3 ReqBatchSize = 10000 BatchesPerRPC = 4 BatchBufferBytes = 20000 LocalOnly = 2 MaxKeepAlivesMissed = 1000 Host1 = hostname1:22201 Host2 = hostname1:22202 Host3 = hostname2:22203 Host4 = hostname2:22204 MaxHosts = 5 $ more cluster_04/cluster.ini [Cluster] Threads = 20 Master = Host1 ThisHost = Host4 ReqBatchSize = 10000 BatchesPerRPC = 4 BatchBufferBytes = 20000 LocalOnly = 2 MaxKeepAlivesMissed = 1000 Host1 = hostname1:22201 Host2 = hostname1:22202 Host3 = hostname2:22203 Host4 = hostname2:22204 MaxHosts = 5 $
Machine 1 (hostname1) $ virtuoso-start.sh Starting Virtuoso instance in [cluster_01] Starting Virtuoso instance in [cluster_02] $ Machine 2 (hostname2) $ virtuoso-start.sh Starting Virtuoso instance in [cluster_03] Starting Virtuoso instance in [cluster_04] $
$ virtuoso-stop.sh Stopping Virtuoso instance in [cluster_01] Stopping Virtuoso instance in [cluster_02] Stopping Virtuoso instance in [cluster_03] Stopping Virtuoso instance in [cluster_04] $
Backup
There are 2 ways to backup Virtuoso Cluster DB:
For example, for every cluster in its backup folder execute:
backup_online ('dbp', 10000000, 0, 'backup');
cl_exec ('backup_online (''dbp'', 10000000, 0, vector (''backup''))');
Restore from Backup
After backup is done for every node in its backup folder, in order to restore, execute from the ..\bin folder the virtuoso-restore.sh:
# . ./virtuoso-restore.sh all dbp
where the second parameter is the restore prefix.
viruoso-start.sh
or
# /etc/init.d/virtuoso start Starting OpenLink Virtuoso: [ OK ]
isql 12201
SQL> status('cluster');
REPORT
VARCHAR
_______________________________________________________________________________
Cluster 4 nodes, 293 s. 0 m/s 0 KB/s 0% cpu 0% read 0% clw threads 1r 0w 0i buffers 1781 0 d 0 w 0 pfs
1 Rows. -- 4 msec.
If an operation seems to hang, see the output of:
status ()
Check for the presence of the following conditions:
raw_exit ();
over an SQL connection to the process in question.
txn_killall (1);
Do this at a node that has local threads waiting. This is seen in the Lock Status paragraph of status ('') when connected to the node in question.
cl_exec ('backup ''/dev/null''');
If this returns, the databases are OK. If one is found to be corrupt the corresponding server exits.
|
Previous
Creating a .Net RIA Services Application That Will Update Virtuoso Data |
Chapter Contents |
Next
Contents of Quick Start & Tours |