<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <head profile="http://internetalchemy.org/2003/02/profile"> <link rel="foaf" type="application/rdf+xml" title="FOAF" href="http://www.openlinksw.com/dataspace/uda/about.rdf" /> <link rel="schema.dc" href="http://purl.org/dc/elements/1.1/" /> <meta name="dc.title" content="2. Installation Guide" /> <meta name="dc.subject" content="2. Installation Guide" /> <meta name="dc.creator" content="OpenLink Software Documentation Team ; " /> <meta name="dc.copyright" content="OpenLink Software, 1999 - 2009" /> <link rel="top" href="index.html" title="OpenLink Virtuoso Universal Server: Documentation" /> <link rel="search" href="/doc/adv_search.vspx" title="Search OpenLink Virtuoso Universal Server: Documentation" /> <link rel="parent" href="installation.html" title="Chapter Contents" /> <link rel="prev" href=".html" title="" /> <link rel="next" href="linuxinstall.html" title="Virtuoso for Linux (Enterprise Edition)" /> <link rel="shortcut icon" href="../images/misc/favicon.ico" type="image/x-icon" /> <link rel="stylesheet" type="text/css" href="doc.css" /> <link rel="stylesheet" type="text/css" href="/doc/translation.css" /> <title>2. Installation Guide</title> <meta http-equiv="Content-Type" content="text/xhtml; charset=UTF-8" /> <meta name="author" content="OpenLink Software Documentation Team ; " /> <meta name="copyright" content="OpenLink Software, 1999 - 2009" /> <meta name="keywords" content="" /> <meta name="GENERATOR" content="OpenLink XSLT Team" /> </head> <body> <div id="header"> <a name="installwin32" /> <img src="../images/misc/logo.jpg" alt="" /> <h1>2. Installation Guide</h1> </div> <div id="navbartop"> <div> <a class="link" href="installation.html">Chapter Contents</a> | <a class="link" href="installation.html" title="Installation Guide">Prev</a> | <a class="link" href="linuxinstall.html" title="Virtuoso for Linux (Enterprise Edition)">Next</a> </div> </div> <div id="currenttoc"> <form method="post" action="/doc/adv_search.vspx"> <div class="search">Keyword Search: <br /> <input type="text" name="q" /> <input type="submit" name="go" value="Go" /> </div> </form> <div> <a href="http://www.openlinksw.com/">www.openlinksw.com</a> </div> <div> <a href="http://docs.openlinksw.com/">docs.openlinksw.com</a> </div> <br /> <div> <a href="index.html">Book Home</a> </div> <br /> <div> <a href="contents.html">Contents</a> </div> <div> <a href="preface.html">Preface</a> </div> <br /> <div class="selected"> <a href="installation.html">Installation Guide</a> </div> <br /> <div class="selected"> <a href="installwin32.html">Virtuoso for Windows</a> <div> <a href="#b4ustart" title="Before You Start">Before You Start</a> <a href="#knowthywinvirt" title="Getting To Know Your Virtuoso Components">Getting To Know Your Virtuoso Components</a> <a href="#InstallStepsWin" title="Installation Steps">Installation Steps</a> <a href="#wininstpost" title="Post Installation">Post Installation</a> <a href="#startvdbms" title="Starting Your Virtuoso Server">Starting Your Virtuoso Server</a> <a href="#CreatingDeletingServices" title="Creating and Deleting Virtuoso Services ">Creating and Deleting Virtuoso Services </a> <a href="#ConfiguringVirtuosoClients" title="Configuring Virtuoso Client Components">Configuring Virtuoso Client Components</a> <a href="#defpasschgwin" title="Default passwords">Default passwords</a> </div> </div> <div> <a href="linuxinstall.html">Virtuoso for Linux (Enterprise Edition)</a> </div> <div> <a href="unxinstvirt.html">Virtuoso for Unix (Enterprise Edition)</a> </div> <div> <a href="unixpersonainstall.html">Virtuoso for Unix (Personal Edition)</a> </div> <div> <a href="installmacosx.html">Virtuoso for Mac OS X</a> </div> <div> <a href="installvsgrid.html">Virtuoso ADO.Net Data Grid Form Application</a> </div> <div> <a href="installvsent.html">Using Visual Studio 2008 to Build an Entity Frameworks based Windows Form Application</a> </div> <div> <a href="installusado.html">Using Visual Studio 2008 to Build an ADO.NET Data Services based Application</a> </div> <div> <a href="installwfas.html">Windows Form Application for accessing Virtuoso RDF data via SPASQL using the Virtuoso ADO.Net Provider</a> </div> <div> <a href="installcrweb.html">Creating a Web Browser Application to Access RDF Data Using The Virtuoso ADO.Net Provider</a> </div> <div> <a href="installsilver.html">Creating a Silverlight Application to consume the service</a> </div> <div> <a href="installnetriadd.html">Creating A Simple .NET RIA Services Application To Display Data From Virtuoso</a> </div> <div> <a href="installnetriavd.html">Creating a .Net RIA Services Application That Will Update Virtuoso Data</a> </div> <div> <a href="clusterstcnf.html">Cluster Installation and Config</a> </div> <br /> </div> <div id="text"> <a name="installwin32" /> <h2>2.1. Virtuoso for Windows</h2> <a name="b4ustart" /> <h3>2.1.1. Before You Start</h3> <p>To ensure a smooth installation, please review the following checklist before you start the setup program.</p> <a name="haveudld" /> <h4>2.1.1.1. Have you downloaded the software?</h4> <p>If you have not already done so, please download your copy of OpenLink Virtuoso from the OpenLink web site. The URL is <a href="http://www.openlinksw.com">http://www.openlinksw.com</a>. When you visit the site, select "Download & Evaluation". </p> <ol> <li> <p>Select product "OpenLink Virtuoso: Personal Edition "</p> </li> <li> <p>From "Product Category" choose "Universal Server"</p> </li> <li> <p>From "Product" choose "Virtuoso Universal Server"</p> </li> <li> <p>Select "Database Version"</p> </li> <li> <p>From "server OS" select "Windows" and click "Next"</p> </li> <li> <p>Select a release and click "Next"</p> </li> <li> <p>You will be prompt to login in not already.</p> </li> <li> <p>Click "Next"</p> </li> <li> <p>Download the desired component. For example, click the HTTP link for "Multi-Threaded Universal Server (Commercial Edition) for OpenLink Virtuoso 4.x"</p> </li> </ol> <br /> <a name="douhavelic" /> <h4>2.1.1.2. Do you have the License file?</h4> <p>The server will need a license file, and this is automatically delivered by email as part of the download process. It is therefore important to supply a valid email address. The installer will prompt for the license file location.</p> <br /> <a name="srvadminstallreqt" /> <h4>2.1.1.3. Installation Requirements</h4> <p>A typical installation will require a minimum of 400Mb of hard disk space to install the code, samples, documentation and sample database. The database will need additional space for data inserted, backups, logs and reports, web pages, etc. </p> <p>The size of the database .db file will not reduce when data is removed. The spare space will however be reclaimed for later use.</p> <br /> <a name="srvadmopreq" /> <h4>2.1.1.4. Operational Requirements</h4> <p>The Virtuoso database requires a minimum of 64Mb of system memory for each instance to operate in. Each connection will take between 70kb and 130kb of memory.</p> <p>The memory usage is affected by the following parameters in the <a href="databaseadmsrv.html#VIRTINI">Virtuoso configuration file</a>.</p> <ul> <li>ServerThreads</li> <li>ServerThreadSize</li> <li>MainThreadSize</li> <li>FutureThreadSize</li> <li>NumberOfBuffers</li> </ul> <p>See the following <a href="">Parameter section</a> for more details.</p> <br /> <a name="srvadmossupport" /> <h4>2.1.1.5. Operating System Support</h4> <p>Virtuoso runs on the following operating systems:</p> <ul> <li>Windows</li> <li>Linux</li> <li>Unix: AIX, HP-UX, Solaris, etc.</li> <li>Mac OS X</li> </ul> <br /> <a name="limitsandparameters" /> <h4>2.1.1.6. Limits</h4> <p> The below table lists the most important parameters and limits for a database or a Virtuoso server instance. For space consumption of individual data types, see <a href="databaseadmsrv.html#SpaceConsump">Space Consumption</a>. </p> <table class="data"> <caption>Table: 2.1.1.6.1. Limits</caption> <tr> <th class="data">Limit Description</th> <th class="data">Value</th> </tr> <tr> <td class="data">Identifier length</td> <td class="data">100</td> </tr> <tr> <td class="data">User name and password length</td> <td class="data">100</td> </tr> <tr> <td class="data">SQLstmt and proc text</td> <td class="data">100K+</td> </tr> <tr> <td class="data">varchar length</td> <td class="data">Constrained by max row length when stored into non-LOB column, 10MB inside procedure code.</td> </tr> <tr> <td class="data">Numeric precision</td> <td class="data">Max 40 digits</td> </tr> <tr> <td class="data">LOB column length</td> <td class="data">2GB</td> </tr> <tr> <td class="data">row length</td> <td class="data">4086</td> </tr> <tr> <td class="data">Columns per row</td> <td class="data">200</td> </tr> <tr> <td class="data">Database size</td> <td class="data">32TB for data, 32TB for temp data </td> </tr> <tr> <td class="data">Page size</td> <td class="data">8K</td> </tr> <tr> <td class="data">File size</td> <td class="data">64 bit file offsets on supporting OS's</td> </tr> <tr> <td class="data">Files per database</td> <td class="data">unlimited</td> </tr> <tr> <td class="data">Table size</td> <td class="data">Up to database size </td> </tr> <tr> <td class="data">Tables per database</td> <td class="data">64K keys, a table takes 1 key for primary key, 1 key per index and 1 key for each obsolete primary key layout resulting from adding or dropping columns.</td> </tr> <tr> <td class="data">Indexes per table</td> <td class="data">Unlimited, subject to global cap on keys.</td> </tr> <tr> <td class="data">Row in sorting/distinct temp</td> <td class="data">4078b, as in tables </td> </tr> <tr> <td class="data">Locks per transaction</td> <td class="data">Depends on memory, 16b per row lock, 60b per page with at least one row lock.</td> </tr> <tr> <td class="data">Changes per transaction</td> <td class="data">Depends on memory, ini parameter allows cap on rollback before image.</td> </tr> <tr> <td class="data">Virtual memory></td> <td class="data">Depends on OS, 64 bit pointers on 64 bit platforms</td> </tr> <tr> <td class="data">Threads</td> <td class="data">Depends on OS, ini files specifies cap for pool for SQL client and web server worker thread pools.</td> </tr> <tr> <td class="data">Max connections</td> <td class="data">Depends on OS fdset size, at least 2048, license can set a limit</td> </tr> <tr> <td class="data">Memory per connection</td> <td class="data">22K plus up to 100 cached SQL statement compilations</td> </tr> </table> <br /> <br /> <a name="reinstvirt" /> <h4>2.1.1.7. Reinstalling Virtuoso?</h4> <p>If you are reinstalling Virtuoso, you must first shutdown any additional database servers you have configured on non default ports. The databases on port 1111 and 1112 will automatically be stopped during the install process. On Windows NT/2000/XP, go to the services applet in the Control Panel. There you can stop services that appear with names of the form "OpenLink Virtuoso DBMS Server [instance name]".</p> <p>On Windows NT/2000/XP you can also shut them down with the following commands in the Virtuoso\bin directory:</p> <div> <pre class="programlisting"> virtuoso-odbc-t.exe +service stop virtuoso-odbc-t.exe +instance myinstance +service stop virtuoso-odbc-t.exe +instance anotherinstance +service stop </pre> </div> <div class="note"> <div class="notetitle">Note:</div> <p>There is an alternative executable available for Virtuoso called: virtuoso-odbc-f.exe, which you may have installed. This version is designed for versions of Windows that offer no native threading support such as Windows 98, and offers no advantages over virtuoso-odbc-t.exe for Windows NT/2000/XP.</p> </div> <p>You can list the services with their status using:</p> <div> <pre class="programlisting">virtuoso +service list</pre> </div> <br /> <a name="allocoftcpports" /> <h4>2.1.1.8. Allocation of TCP/IP ports</h4> <p>The Default database have the following port allocations:</p> <table class="data"> <caption>Table: 2.1.1.8.1. Port Usage</caption> <tr> <th class="data">Port</th> <th class="data">Used by</th> </tr> <tr> <td class="data">1111</td> <td class="data">Default Virtuoso Server port</td> </tr> <tr> <td class="data">8889</td> <td class="data">Default Virtuoso Visual Server Administration Interface HTTP port</td> </tr> </table> <br /> <p>By default, the Virtuoso DBMS listens on port 1111. This port number is not selectable at install time. If the port is currently in use by another server then after the installation completes you will need to change the port number in the Local Virtuoso ODBC DSN that is created during the installation process, and also in the following file:</p> <div> <pre class="programlisting"> C:\Program Files\OpenLink Software\Virtuoso 5.0\bin\virtuoso.ini </pre> </div> <p>To check if a port is in use on NT, you can use the following command, and review the output:</p> <div> <pre class="programlisting"> netstat -an | more </pre> </div> <br /> <a name="prevworkodbcdsn" /> <h4>2.1.1.9. Do you already have an ODBC Data Source Name (DSN) that works?</h4> <p>The Virtual Database aspects of the Virtuoso for ODBC assumes that you already have an ODBC driver on your machine from a database vendor, OpenLink Software, or from another 3rd party vendor. It is a useful sanity-check to ensure that you have an ODBC System Data Source Name (DSN) on your machine, and that it successfully connects to your database, and that it retrieve data. Any ODBC compliant tool can be used to test that your ODBC Data Source Name (DSN) works, such as the sample application we provide - C++ Demo32, and that it is sufficiently robust to operate with Virtuoso. Virtuoso is ODBC Driver Independent and certified to work with any drivers that are ODBC level 1 or higher.</p> <br /> <br /> <a name="knowthywinvirt" /> <h3>2.1.2. Getting To Know Your Virtuoso Components</h3> <p>Virtuoso is made up of several components, these components fall into two distinct categories: Client Components and Server Components.</p> <a name="clicomppack" /> <h4>2.1.2.1. Client Components Package</h4> <p>These are the components typically used to communicate with a local or remote Virtuoso server, this includes: </p> <ul> <li>Virtuoso Drivers for ODBC</li> <li>Virtuoso Drivers for JDBC</li> <li>ISQL Utility</li> <li>ISQLO Utility</li> <li>Documentation</li> <li>Samples</li> </ul> <br /> <a name="srvcomp" /> <h4>2.1.2.2. Server Components</h4> <p>These are the components that service Virtuoso clients, these include:</p> <ul> <li> Virtuoso Virtual Database Servers for: ODBC based interfaces - the files "virtuoso-odbc-f" (for Virtuoso Lite) and "virtuoso-odbc-t" (For Virtuoso Enterprise Edition). </li> <li>Virtuoso HTTP Server. </li> <li>Virtuoso System Manager to configure the database through the HTTP interface. </li> </ul> <br /> <br /> <a name="InstallStepsWin" /> <h3>2.1.3. Installation Steps</h3> <p>You can install Virtuoso in any one of the following configurations: Stand-Alone, 2-Tier Client-Server, or 3-Tier Client-Server.</p> <a name="standalone" /> <h4>2.1.3.1. Stand-Alone Configuration</h4> <p>In this scenario you have one machine making up your entire solution, which implies that your Applications, Virtuoso's client and server components, and the back end database engine(s) that you want to access via Virtuoso all reside on the same machine. </p> <p>Virtuoso Personal Edition Release 5.0 Installation on Windows</p> <ol> <li> <p>Double click on the Virtuoso Personal Edition installer (for example "ntvpz2zz.msi") to run the Windows installer.</p> <table class="figure" border="0" cellpadding="0" cellspacing="0"> <tr> <td> <img alt="Run the installer" src="../images/inst/v50pex8601.png" /> </td> </tr> <tr> <td>Figure: 2.1.3.1.1. Run the installer</td> </tr> </table> </li> <li> <p>The installer Welcome dialog is loaded:</p> <table class="figure" border="0" cellpadding="0" cellspacing="0"> <tr> <td> <img alt="The Welcome Screen" src="../images/inst/v50pex8602.png" /> </td> </tr> <tr> <td>Figure: 2.1.3.1.1. The Welcome Screen</td> </tr> </table> </li> <li> <p>Review the license agreement and 'agree' to the terms:</p> <table class="figure" border="0" cellpadding="0" cellspacing="0"> <tr> <td> <img alt="License Agreement" src="../images/inst/v50pex8603.png" /> </td> </tr> <tr> <td>Figure: 2.1.3.1.1. License Agreement</td> </tr> </table> </li> <li> <p>If a license file already exists the installer can place this in the correct location for use. Browse to the location of your installer file and the installer will use this for the Virtuoso Server. Alternatively the "Try & Buy" feature of the installer can be used to enable a trial or full license file to be obtained online:</p> <table class="figure" border="0" cellpadding="0" cellspacing="0"> <tr> <td> <img alt="The License File Location" src="../images/inst/v50pex8604.png" /> </td> </tr> <tr> <td>Figure: 2.1.3.1.1. The License File Location</td> </tr> </table> </li> <li> <p>Choose to obtain a Trial license for an evaluation or enter the shop site to purchase a full license.</p> <table class="figure" border="0" cellpadding="0" cellspacing="0"> <tr> <td> <img alt="The obtain Trial license screen" src="../images/inst/v50pex8605.png" /> </td> </tr> <tr> <td>Figure: 2.1.3.1.1. The obtain Trial license screen</td> </tr> </table> </li> <li> <p>Click on the "Download License" button on the right to obtain the license file immediately. An e-mail will also be sent with details of the license and the location on the ODS account of the registered user where in can be obtained from at a later date. Once a license file is available on the machine use the "Browse" button to locate it and the "Set License" button to initialize the Virtuoso server with this license file.</p> <table class="figure" border="0" cellpadding="0" cellspacing="0"> <tr> <td> <img alt="The Download license screen" src="../images/inst/v50pex8606.png" /> </td> </tr> <tr> <td>Figure: 2.1.3.1.1. The Download license screen</td> </tr> </table> </li> <li> <p>Select the Installation Type to be performed from the options presented:</p> <table class="figure" border="0" cellpadding="0" cellspacing="0"> <tr> <td> <img alt="Setup Type" src="../images/inst/v50pex8607.png" /> </td> </tr> <tr> <td>Figure: 2.1.3.1.1. Setup Type</td> </tr> </table> </li> <li> <p>If the custom option was chosen, the installer prompts for the Destination folder of the installation.</p> <table class="figure" border="0" cellpadding="0" cellspacing="0"> <tr> <td> <img alt="Choose Destination Location" src="../images/inst/v50pex8608.png" /> </td> </tr> <tr> <td>Figure: 2.1.3.1.1. Choose Destination Location</td> </tr> </table> </li> <li> <p>Select the Product Features to be installed.</p> <table class="figure" border="0" cellpadding="0" cellspacing="0"> <tr> <td> <img alt="Select Components" src="../images/inst/v50pex8609.png" /> </td> </tr> <tr> <td>Figure: 2.1.3.1.1. Select Components</td> </tr> </table> </li> <li> <p>The Installation is now ready to proceed.</p> <table class="figure" border="0" cellpadding="0" cellspacing="0"> <tr> <td> <img alt="Proceed Installation" src="../images/inst/v50pex8610.png" /> </td> </tr> <tr> <td>Figure: 2.1.3.1.1. Proceed Installation</td> </tr> </table> </li> <li> <p>The Progress of the installation is indicated in the Status bar.</p> <table class="figure" border="0" cellpadding="0" cellspacing="0"> <tr> <td> <img alt="Status bar" src="../images/inst/v50pex8611.png" /> </td> </tr> <tr> <td>Figure: 2.1.3.1.1. Status bar</td> </tr> </table> </li> <li> <p>The installation is now complete.</p> <table class="figure" border="0" cellpadding="0" cellspacing="0"> <tr> <td> <img alt="Complete Installation" src="../images/inst/v50pex8612.png" /> </td> </tr> <tr> <td>Figure: 2.1.3.1.1. Complete Installation</td> </tr> </table> </li> <li> <p>The installer may prompt for the machine to be reboot if required.</p> <table class="figure" border="0" cellpadding="0" cellspacing="0"> <tr> <td> <img alt="Reboot prompt" src="../images/inst/v50pex8613.png" /> </td> </tr> <tr> <td>Figure: 2.1.3.1.1. Reboot prompt</td> </tr> </table> </li> <li>Post installation the Virtuoso Server can be started by running the "Virtuoso Service Manager" which gets added to the Windows "Icons Tray" in the status bar. <table class="figure" border="0" cellpadding="0" cellspacing="0"> <tr> <td> <img alt="Post installation" src="../images/ui/winpinst14.png" /> </td> </tr> <tr> <td>Figure: 2.1.3.1.1. Post installation</td> </tr> </table> </li> <li>Double click on the "Virtuoso Service Manager" icon in the "Icons Tray" to load the application, select the "OpenLink Virtuoso Server" instance and press the "Start" button to run the Service. <table class="figure" border="0" cellpadding="0" cellspacing="0"> <tr> <td> <img alt="Virtuoso Service Manager" src="../images/ui/winpinst15.png" /> </td> </tr> <tr> <td>Figure: 2.1.3.1.1. Virtuoso Service Manager</td> </tr> </table> </li> <li>Once the Virtuoso service has successfully started, it is recommended that the default "dba" and "dav" passwords be changed to secure values by loading the URL "http://localhost:8890/install" in a Web Browser which loads the following page for making these changes: <table class="figure" border="0" cellpadding="0" cellspacing="0"> <tr> <td> <img alt="Default passwords" src="../images/ui/winpinst16.png" /> </td> </tr> <tr> <td>Figure: 2.1.3.1.1. Default passwords</td> </tr> </table> </li> <li>The Virtuoso Server Welcome page will now be displayed indicating the server is online. This Web based page can be used for general configuration and usage of the Virtuoso Server: <table class="figure" border="0" cellpadding="0" cellspacing="0"> <tr> <td> <img alt="Virtuoso Server Welcome page" src="../images/ui/winpinst17.png" /> </td> </tr> <tr> <td>Figure: 2.1.3.1.1. Virtuoso Server Welcome page</td> </tr> </table> </li> </ol> <p>The installation Virtuoso Universal Server is complete.</p> <br /> <a name="TwoTierConfigInst" /> <h4>2.1.3.2. 2-Tier Client-Server Configuration</h4> <p>In this scenario you have two logically distinct machine types making up your total solution, one machine hosts your Applications and Virtuoso client components, while the other hosts your Virtuoso and back-end Database Servers. This installation configuration format will allow Windows client machines to communicate with non Windows server machines running Virtuoso, it also allows Virtuoso clients on non Windows client machines to connect to Virtuoso servers on Windows server machines.</p> <a name="twotierclicomp" /> <h5>2.1.3.2.1. Client Components:</h5> <ol> <li> <p>Move the Virtuoso installation archive into a temporary installation folder on your Client machine</p> </li> <li> <p>Choose the Client install option. No further component selection will be required.</p> <table class="figure" border="0" cellpadding="0" cellspacing="0"> <tr> <td> <img alt="Setup Screens" src="../images/inst/12clienttype.png" /> </td> </tr> <tr> <td>Figure: 2.1.3.2.1.1. Setup Screens</td> </tr> </table> </li> <li> <p>The installer will now extract and install your Virtuoso Client components</p> </li> </ol> <br /> <a name="twotiersrvcomp" /> <h5>2.1.3.2.2. Server Components:</h5> <ol> <li> <p>Move the Virtuoso installation archive into a temporary installation folder on your Server machine.</p> </li> <li> <p>Choose the Server install option.</p> <table class="figure" border="0" cellpadding="0" cellspacing="0"> <tr> <td> <img alt="Setup Screens" src="../images/inst/13installtype.png" /> </td> </tr> <tr> <td>Figure: 2.1.3.2.2.1. Setup Screens</td> </tr> </table> </li> <li> <p>At the component selection, uncheck the "Virtuoso Drivers for ODBC" and "Virtuoso Drivers for JDBC" and the "Samples" check-boxes since you are only installing Virtuoso's Server components on this machine.</p> </li> <li> <p>The installer will now extract and install your Virtuoso Server components.</p> </li> </ol> <br /> <br /> <a name="ThreeTierConfigInst" /> <h4>2.1.3.3. 3-Tier Client-Server Configuration</h4> <p>In this scenario you have three logically distinct machine types making up your total solution, the first machine hosts your Applications and Virtuoso client components (Client Machine), the second hosts your Virtuoso server, (Middle Tier Server Machine) and the third machine your back end Database Server (Database Server Machine). This installation configuration format will allow Windows client machines to communicate with non Windows middle-tier server machines running Virtuoso, as well as allowing Virtuoso clients on non Windows client machines to connect to Virtuoso servers on windows based middle-tier server machines. </p> <a name="threetierclicomp" /> <h5>2.1.3.3.1. Client Components:</h5> <ol> <li> <p>Move the Virtuoso installation archive into a temporary installation folder on your Client machine</p> </li> <li> <p>Choose the Client install option. No further component selection will be required.</p> <table class="figure" border="0" cellpadding="0" cellspacing="0"> <tr> <td> <img alt="Setup Screens" src="../images/inst/12clienttype.png" /> </td> </tr> <tr> <td>Figure: 2.1.3.3.1.1. Setup Screens</td> </tr> </table> </li> <li> <p>The installer will now extract and install your Virtuoso Client components</p> </li> </ol> <br /> <a name="threetiermidsrccomp" /> <h5>2.1.3.3.2. Middle-Tier Server Components:</h5> <p>You need to install both the Virtuoso client and server components on this machine. This is due to the fact that in many cases this server will double as an Application Server, which entails having clients connecting to an application service that uses Virtuoso for data access.</p> <ol> <li> <p>Move the Virtuoso installation archive into a temporary installation folder on your Server machine.</p> </li> <li> <p>Choose the Server install option.</p> <table class="figure" border="0" cellpadding="0" cellspacing="0"> <tr> <td> <img alt="Setup Screens" src="../images/inst/13installtype.png" /> </td> </tr> <tr> <td>Figure: 2.1.3.3.2.1. Setup Screens</td> </tr> </table> </li> <li> <p>At the component selection, uncheck the "Sample Application" check-box then the "Virtuoso Driver for ODBC" and "Virtuoso Drivers for JDBC" check-boxes since you are only installing Virtuoso's Server components on this machine.</p> </li> <li> <p>The installer will now extract and install your Virtuoso Server components.</p> </li> </ol> <p>You will not need to install anything on the remote database server since you will be connecting to remote database either via ODBC or Native Drivers installed on this Server.</p> <br /> <br /> <br /> <a name="wininstpost" /> <h3>2.1.4. Post Installation</h3> <a name="wininstpostsan" /> <h4>2.1.4.1. Post-Installation Sanity Check</h4> <p>A quick way to check that the database is running, is to point a browser to the http port. The following example URLs will show the System Manager for the default, and the demo Virtuoso databases:</p> <div> <pre class="programlisting">http://localhost:8889 http://localhost:8890 http://a_virtuoso_server.org:8890</pre> </div> <br /> <a name="wininstposttrb" /> <h4>2.1.4.2. Troubleshooting DB Startup Failures</h4> <p> <strong>Install failure</strong> </p> <p>Check the .log file in your Virtuoso installation db location, for ex:</p> <div> <pre class="programlisting"> C:\Program Files\OpenLink Software\Virtuoso 6.0\db\virtuoso.log </pre> </div> <p>which is for the database and log files etc. in order to review the installed files binaries and databases (defaults) for issues if install fails.</p> <p> <strong>.lck existance</strong> </p> <p>Check .log in case of .lck issue</p> <p>Delete the .lck file and repeat the steps from above.</p> <p> <strong>.trx incompatiblity issue</strong> </p> <p>Check .log in case of .trx incompatiblity issue</p> <br /> <br /> <a name="startvdbms" /> <h3>2.1.5. Starting Your Virtuoso Server</h3> <p>Due to subtle differences between the Windows 95 family (including Windows 98 and Windows ME) and the Windows NT family (including Windows 2000, Windows XP, Vista, Windows 7, Windows 2000 Server, Windows Server 2003, and Windows Server 2008), specific instructions for starting and stopping your Virtuoso server are supplied for each Windows family.</p> <a name="winnt" /> <h4>2.1.5.1. Windows NT family</h4> <p>You can start your Virtuoso server in one of two ways, automatically or manually, the default mode configured by your installer is Automatic.</p> <a name="winntautostart" /> <h5>2.1.5.1.1. Automatic Startup</h5> <p>Your Virtuoso servers (default and demonstration databases) are configured at installation time as "Automatic Startup" services. Thus, rebooting your machine after installation is all that is required in order for your Virtuoso servers to be ready to start receiving connections from client applications. The service is actually started during the installation, however some files may be locked, so a reboot is required to complete the install.</p> <br /> <a name="winntmanstart" /> <h5>2.1.5.1.2. Manual Startup</h5> <p>You can manually start your Virtuoso server in one of two ways, either via the "services" control panel applet or from within a DOS shell. When doing this via the "Services" control panel Applet you need to simply open up your control panel and click on the "services" applet. This will present you with a screen similar to the one below:</p> <table class="figure" border="0" cellpadding="0" cellspacing="0"> <tr> <td> <img alt="Services Applet" src="../images/virtinst12.gif" /> </td> </tr> <tr> <td>Figure: 2.1.5.1.2.1. Services Applet</td> </tr> </table> <p>Click the "Start" or "Stop" button in order to start or stop a highlighted Virtuoso Server.</p> <p>To start your Virtuoso servers manually using DOS command prompts, start a DOS shell and then enter the following command:</p> <div> <pre class="programlisting">virtuoso-odbc-f +service start</pre> </div> <br /> <br /> <a name="win9x" /> <h4>2.1.5.2. Windows 95 family</h4> <p>You can start your Virtuoso server under Windows 95/98 in one of two ways, automatically or manually, the default mode configured by your installer is Automatic.</p> <a name="win9xautostart" /> <h5>2.1.5.2.1. Automatic Startup</h5> <p>Your Virtuoso servers (default and demonstration databases) are configured at installation time as "Automatic Startup" services. Thus, rebooting your machine after installation is all that is required in order for your Virtuoso servers to be ready to start receiving connections from client applications.</p> <p>If Virtuoso does not start automatically on Windows 95/98 after installation you will need to add the following line to the system's "autoexec.bat" file (assuming you have installed Virtuoso using the installers default installation folder):</p> <div> <pre class="programlisting">C:\Program Files\OpenLink\Virtuoso\bin\virtuoso-odbc-f +service start</pre> </div> <br /> <a name="sect4win9xmanstart" /> <h5>2.1.5.2.2. Manual Startup</h5> <p>You can start your Virtuoso servers manually by entering the following commands at the DOS command line prompt:</p> <div> <pre class="programlisting"> virtuoso-odbc-f +service start virtuoso-odbc-f +instance demo +service start </pre> </div> <div class="note"> <div class="notetitle">Note:</div> <p>If you encounter a "Program Not Found" error this is because your Virtuoso installation's "bin" sub-directory is not part of your PATH environment variable. </p> </div> <br /> <br /> <br /> <a name="CreatingDeletingServices" /> <h3>2.1.6. Creating and Deleting Virtuoso Services </h3> <p>At sometime you may need to have multiple Virtuoso server processes running on your Windows servers or simply need to add or delete existing Virtuoso servers that have been registered with the "Services" control panel applet. You do this by executing the following commands:</p> <p>Adding new Virtuoso Server service: virtuoso-odbc-f +service create -I <your chosen service name></p> <p>Deleting an existing Virtuoso service: virtuoso-odbc-f +service delete -I <service that you are deleting></p> <p>Starting a new Virtuoso service manually: virtuoso-odbc-f +service start -I <service name> </p> <p>Showing a list of existing Virtuoso services: virtuoso-odbc-f +service list</p> <div class="note"> <div class="notetitle">Note:</div> <p>This functionality is only available on Windows NT/2000/XP.</p> <p>Ensure that the services applet from the control panel is closed while issuing the above commands to prevent locking.</p> </div> <br /> <a name="ConfiguringVirtuosoClients" /> <h3>2.1.7. Configuring Virtuoso Client Components</h3> <p>The Virtuoso client components set consists of the following:</p> <ul> <li>Virtuoso Driver for ODBC</li> <li>Virtuoso Driver for JDBC</li> <li>Native Virtuoso Interactive SQL Query (ISQL)</li> <li>ODBC based Interactive SQL Query Utility (ISQLO)</li> </ul> <p>The sections that follow address the configuration and utilization of each one of these client components separately.</p> <a name="VirtuosoDriverODBC" /> <h4>2.1.7.1. Virtuoso Driver for ODBC</h4> <p>The Virtuoso Driver for ODBC conforms to both the ODBC 1.x,2.x,and 3.x versions of the ODBC specification, it implements Core, Level 1, Level 2, and Extensions functionality. This driver enables you to communicate with local or remote Virtuoso servers across any combination of platforms supported by Virtuoso.</p> <p>At installation time two ODBC data source names (DSN's) are created with default values by the Virtuoso installer, the first DSN named "Local Virtuoso" provides a link to a local default Virtuoso database server instance, while the other named "Local Virtuoso Demo" provides a link to a local Virtuoso server for the Virtuoso demonstration database.</p> <div class="tip"> <div class="tiptitle">See Also:</div> <p>the <a href="odbcimplementation.html#virtdsnsetup">Data Access Interfaces</a> chapter for more detailed information regarding the Virtuoso ODBC Driver setup</p> </div> <br /> <a name="VirtuosoDriverJDBC" /> <h4>2.1.7.2. Virtuoso Drivers for JDBC</h4> <p>The Virtuoso Drivers for JDBC are available in "jar" file formats for the JDBC 1.x, JDBC 2.x and JDBC 3.x JDBC specifications. These are Type 4 Drivers implying that utilization is simply a case of adding the relevant "jar" file to your CLASSPATH and then providing an appropriate JDBC URL format in order to establish a JDBC session with a local or remote Virtuoso server. It is important to note that when you make a JDBC connection to a Virtuoso Server, you do also have access to Native and External Virtuoso tables. Thus, you actually have a type 4 JDBC Driver for any number of different database types that have been linked into Virtuoso.</p> <div class="tip"> <div class="tiptitle">See Also:</div> <p>The <a href="installwin32.html#VirtuosoDriverJDBC">JDBC Driver</a> section in the Access Interfaces chapter.</p> </div> <br /> <a name="ISQL" /> <h4>2.1.7.3. Native Virtuoso Interactive SQL Query (ISQL)</h4> <p>To assist you with the use of Virtuoso an interactive SQL interpreter utility called "ISQL" is bundled with all Virtuoso installations. This utility allows you to enter and execute SQL statements from a command line prompt against a local or remote Virtuoso server.</p> <p>The command line format for executing this utility is: </p> <div> <pre class="programlisting"> isql [<hostname>][:<port#>]</pre> </div> <p>The steps that follow guide you through the process of using ISQL to verify your Virtuoso installation:</p> <ol> <li> <p>Open up a DOS shell</p> </li> <li> <p>Move into the "bin" sub-directory of your Virtuoso installation</p> </li> <li> <p>Type the following command: isql</p> <p>This will connect you to the default Virtuoso server at port "1111", if you want to connect to your demonstration Virtuoso database (which listens at port 1112 by default) then enter: isql 1112</p> </li> <li> <p>At the ISQL command line prompt type in the following command: </p> <div> <pre class="programlisting"> tables ;</pre> </div> <p>This will produce a list of tables in the current Virtuoso database, you can also enter other SQL statements e.g.: </p> <div> <pre class="programlisting"> select * from Customers</pre> </div> <p>This will produce a listing of records in the "Customers" table.</p> </li> <li> <p>If you are not able to perform these task that it implies that your Virtuoso database server is not running or that it has not been installed properly.</p> </li> </ol> <br /> <a name="ISQLO" /> <h4>2.1.7.4. ODBC based Interactive SQL Query Utility (ISQLO)</h4> <p>In addition to a Native ISQL utility, your Virtuoso installation includes an ODBC based version of "ISQL" called "ISQLO", this enable you to connect to ODBC DSN's rather than Virtuoso only. To use this program perform the following steps: </p> <ol> <li> <p>Open up a DOS shell</p> </li> <li> <p>Move into the "bin" sub-directory of your Virtuoso installation</p> </li> <li> <p>Type the following command :</p> <div> <pre class="programlisting"> isqlo <enter a valid ODBC Data Source Name></pre> </div> <div class="note"> <div class="notetitle">Note:</div> <p>If your DSN contains spaces you will need to enclose it within double quotes when passing it as a parameter to ISQLO</p> </div> </li> <li> <p>Enter any valid SQL at the ISQLO command line prompt.</p> </li> <li> <p>You can also use this utility from within the Virtuoso Conductor</p> </li> </ol> <br /> <br /> <a name="defpasschgwin" /> <h3>2.1.8. Default passwords</h3> <p>See the following Quick Start chapter for very important information about <a href="newadminui.html#defpasschange">changing the default passwords</a>.</p> <br /> <table border="0" width="90%" id="navbarbottom"> <tr> <td align="left" width="33%"> <a href="installation.html" title="Installation Guide">Previous</a> <br />Contents of Installation Guide</td> <td align="center" width="34%"> <a href="installation.html">Chapter Contents</a> </td> <td align="right" width="33%"> <a href="linuxinstall.html" title="Virtuoso for Linux (Enterprise Edition)">Next</a> <br />Virtuoso for Linux (Enterprise Edition)</td> </tr> </table> </div> <div id="footer"> <div>Copyright© 1999 - 2009 OpenLink Software All rights reserved.</div> <div id="validation"> <a href="http://validator.w3.org/check/referer"> <img src="http://www.w3.org/Icons/valid-xhtml10" alt="Valid XHTML 1.0!" height="31" width="88" /> </a> <a href="http://jigsaw.w3.org/css-validator/"> <img src="http://jigsaw.w3.org/css-validator/images/vcss" alt="Valid CSS!" height="31" width="88" /> </a> </div> </div> </body> </html>