Project

General

Profile

1
<!-- 
2
  *   '$RCSfile$'
3
  *     Purpose: web page describing the installation of Metacat
4
  *   Copyright: 2000 Regents of the University of California and the
5
  *               National Center for Ecological Analysis and Synthesis
6
  *     Authors: Chad Berkley
7
  *
8
  *    '$Author: jones $'
9
  *      '$Date: 2004-09-21 00:31:11 -0700 (Tue, 21 Sep 2004) $'
10
  *  '$Revision: 2309 $'
11
  *
12
  *
13
  -->
14
  
15
<!DOCTYPE html PUBLIC "-//W3C//DTD html 4.0//EN">
16
<html>
17

    
18
<head>
19
  <title>Metacat Installation Instructions</title>
20
  <link rel="stylesheet" type="text/css" href="@docrooturl@default.css">
21
</head>
22

    
23
<body>
24

    
25
<table class="tabledefault" width="100%">
26
<tr><td rowspan="2"><img src="@docrooturl@images/KNBLogo.gif"></td>
27
<td colspan="7">
28
<div class="title">Metacat UNIX Installation Instructions</div>
29
</td>
30
</tr>
31
<tr>
32
  <td><a href="@server@/" class="toollink"> KNB Home </a></td>
33
  <td><a href="@server@/data.html" class="toollink"> Data </a></td>
34
  <td><a href="@server@/people.html" class="toollink"> People </a></td>
35
  <td><a href="@server@/informatics" class="toollink"> Informatics </a></td>
36
  <td><a href="@server@/biodiversity" class="toollink"> Biocomplexity </a></td>
37
  <td><a href="@server@/education" class="toollink"> Education </a></td>
38
  <td><a href="@server@/software" class="toollink"> Software </a></td>
39
</tr>
40
</table>
41
<hr>
42

    
43
<table class="tabledefault" width="100%">
44
<td class="tablehead" colspan="2"><p class="emphasis">***Disclaimer***</p></td>
45
<tr>
46
<td>
47
  <p class="emphasis">
48
   These installation instructions are meant for a systems administrator/DBA
49
   or someone who is an advanced computer user.  They are NOT meant for
50
   the average computer user.  Please realize that by executing these
51
   instructions, you may have to trouble shoot many advanced issues yourself.
52
</td>
53
</tr>
54
</table>
55

    
56
<table class="tabledefault" width="100%">
57
<td class="tablehead" colspan="2"><p>Pre-Installation</p></td>
58
<tr>
59
<td>
60
  <p class="header">Minimum Requirements</p> 
61
  <p>
62
   Installing Metacat requires a server running an SQL92 compliant database
63
   (Oracle 8i recommended) with at least 128MB RAM, and a Pentium III class
64
   processor or higher.  The amount of disk space required depends on the
65
   size of your RDBMS tablespace (which should be at least 10 MB, 
66
   however Metacat itself requires only about 1 MB of free space after 
67
   installation.  These instructions assume a Linux environment but may
68
   work on other UNIX type environments, however this has not been tested.
69
  </p>
70
  <p class = "header">Additional Required Software</p>
71
  <p>
72
   The server on which you wish to install Metacat must have the following
73
   software installed and running correctly before attempting to install
74
   Metacat.
75
   <ul>
76
     <li><a href="http://www.oracle.com">Oracle 8i</a> (or another SQL92
77
         compliant RDBMS like Postgres)</li>
78
     <li><a href="http://jakarta.apache.org/ant/index.html">Apache Jakarta-Ant</a>
79
     </li>
80
     <li><a href="http://jakarta.apache.org/tomcat/index.html">Apache Jakarta-Tomcat</a>
81
       <p class="emphasis">Note: For a more robust web serving environment, 
82
       Apache web server should
83
       be installed along with Tomcat and the two should be integrated
84
       as described on the Apache web site.</p>
85
     </li>
86
   </ul>
87
  </p>
88
</td>
89
</tr>
90
</table>
91

    
92
<table class="tabledefault" width="100%">
93
<td class="tablehead" colspan="2"><p>Aditional Software Setup</p></td>
94
<tr>
95
<td>
96
  <p class="header">Java</p>
97
  <p>You'll need a recent Java SDK; j2sdk1.4.2 or later is required.  We haven't 
98
  tested with any of the 1.5.x versions yet, so probably best to stay with 1.4.x.
99
  Make sure that JAVA_HOME environment variable is properly set and that both
100
  java and javac are on your PATH.
101
  </p>
102
  <p class="header">Oracle 8i or Postgres</p>
103
  <p><i>Oracle:</i><br>
104
   The Oracle RDBMS must be installed and running as a daemon on the system.
105
   In addition the JDBC listener must be enabled.  You can enable it by
106
   logging in as your Oracle user and typing the following:
107
   <pre>lsnrctl start</pre>
108
   Your instance should have a table space of at least 5 MB (10 MB or higher 
109
   recommended).  You should also have a username specific to Metacat
110
   created and enabled.  This user must have most normal permissions 
111
   including CREATE SESSION, CREATE TABLE, CREATE INDEX, CREATE TRIGGER, 
112
   EXECUTE PROCEDURE, EXECUTE TYPE, etc.  If an action is unexplainably 
113
   rejected by Metacat it is probably because the user permissions are not
114
   correctly set.
115
  </p>
116
  <p><i>Postgres:</i><br>
117
  Postgres can be easily installed on most linux distributions and on
118
  Windows (using cygwin) and Mac OS X.  Using Fedora Core or RedHat Linux,
119
  you can install the rpms for postgres and then run 
120
  <code>/etc/init.d/postgresql start</code> in order to start the database.
121
  This initializes the data files.  You need to do a bit of configuration
122
  to create a database and set up a user account and allow internet access
123
  via jdbc.  See the postgres documentation for this, but here is a quick 
124
  start:
125
  <ul>
126
     <li>Switch to the "postgres" user account and edit "data/pg_hba.conf", adding the following line to the file:<br>
127
     <code>host   metacat  metacat      127.0.0.1         255.255.255.255   password</code></li>
128
     <li>Edit the "data/postgres.conf" file and uncomment and edit the line
129
     starting with "tcpip_socket" so that it reads 
130
     <code>tcpip_socket = true</code></li>
131
     <li>Run <code>createdb metacat</code> to create a new database</li>
132
     <li>Run <code>psql metacat</code> to log in using the postgres account and create a new "metacat" user account
133
     <ul>
134
        <li>In postgres, run <code>CREATE USER metacat WITH UNENCRYPTED PASSWORD 'apasswordyoulike';</code></li>
135
        <li>This creates a new account called metacat on the database named metacat</li>
136
        <li>Note: there are many ways to do this, so others such as using 
137
        ENCRYPTED passwords will work fine.</li>
138
     </ul>
139
     </li>
140
     <li>Exit the postgres account back to root and restart the postgres 
141
     database with <code>/etc/init.d/postgresql restart</code></li>
142
     <li>Test logging into the postgres db using the metacat account with 
143
     the following command: 
144
     <code>psql -U metacat -W -h localhost metacat</code></li>
145
  </ul>
146
  </p>
147
  <p class="header">Ant</p>
148
  <p>
149
   Ant is a Java based build application similar to Make on UNIX systems.  
150
   It takes in installation parameters from a file in the root installation
151
   directory named "build.xml".  The Metacat CVS module contains a default
152
   build.xml file that may require some modification upon installation.  Ant
153
   should be installed on the system and the "ant" executable shell script 
154
   should be available in the users path. We note that the current build is 
155
   not working with Ant 1.6.x, so you'll need to use an earler version.  We have 
156
   successfully used Ant 1.5.1, 1.5.2, and some earlier versions.
157
  </p>
158
  <p class="header">Tomcat</p>
159
  <p>
160
    Install Tomcat into the directory of your choice. The directory in which 
161
    you install Tomcat itself will be referred to as the "$CATALINA_HOME".
162
    We recommend that you install Tomcat version 4.0.  More details about 
163
    Tomcat installation is available <a href=" http://jakarta.apache.org/tomcat/index.html">here</a>.
164
  </p>
165
 </td>
166
</tr>
167
</table>
168

    
169
<table class="tabledefault" width="100%">
170
<td class="tablehead" colspan="2"></td>
171
<tr>
172
<td>
173
  <p>
174
   Once all of the prerequisite software is installed as described above, 
175
   the installation of Metacat can begin.  First you must have a current
176
   version of the source distribution of Metacat.  You can get it two ways.
177
   Authorized users can check it out of the NCEAS 
178
   <a href="http://www.nceas.ucsb.edu/cgi-bin/cvsweb.cgi/xmltodb/">CVS</a>
179
   system. You'll need both the "metacat" module and the "utilities" module to
180
   be checked out in sibling directories. The command is as follows: 
181
   <pre>mkdir knb-software</pre>
182
   <pre>cd knb-software</pre>
183
   <pre>cvs checkout -P metacat</pre>
184
   <pre>cvs checkout -P utilities</pre>  
185
   Or you can 
186
   <a href="@server@/software/download.html">download</a> a gzipped tar file
187
   from this site.
188
  </p>
189
  <p><h2>Edit <code>build.properties</code> File</h2></p>
190
  <p>
191
   Once you have either checked out or unzipped and untarred the source
192
   distribution, you can begin the installation process.  Change into the 
193
   metacat directory and edit the file called "<code>build.properties</code>".  You will need 
194
   to change a number of configuration properties to match the setup on
195
   your system.
196
  </p>
197
  <p>
198
  The properties that you will likely need to change will include 
199
  <code>tomcat</code>, <code>tomcatversion</code>, <code>webapps</code>, 
200
  <code>context</code>, <code>server</code>, <code>httpserver</code>, 
201
  <code>database</code>, <code>jdbc-connect</code>, <code>jdbc-base</code>, 
202
  <code>user</code>, <code>password</code>, <code>datafilepath</code>, 
203
  <code>inlinedatafilepath</code>, <code>cvsroot</code>, 
204
  <code>cvsroot-alternate</code>, <code>default-style</code>, and
205
  <code>administrators</code>. 
206
  Each is described in detail in the table below.
207
  </p>
208
  Properties you will likely need to change:
209
  <br><br>
210
  <table border="1">
211
    <tr>
212
      <td><b>Property</b></td>
213
      <td><b>Description</b></td>
214
      <td><b>Default value and examples of other values</b></td>
215
    </tr>
216
    <tr>
217
      <td>tomcat</td>
218
      <td>The tomcat property is the location in which tomcat is installed.</td>
219
      <td>Default:&nbsp;&nbsp;
220
          <code>/usr/local/devtools/jakarta-tomcat</code>
221
      <br><br>Example:&nbsp;&nbsp;
222
          <code>C:/Tomcat4</code></td>
223
    </tr>
224
    <tr>
225
      <td>tomcatversion</td>
226
      <td>The tomcatversion property is the version of your Tomcat. You should 
227
          put tomcat3, tomcat4, or tomcat5 here. We have most extensively 
228
          tested Tomcat 4.x, but Tomcat 5.x seems to work fine as well.
229
      </td>
230
      <td>Default:&nbsp;&nbsp;
231
          <code>tomcat4</code>
232
      <br><br>Example:&nbsp;&nbsp;
233
          <code>tomcat3</code>
234
      </td>
235
    </tr>
236
    <tr>
237
      <td>webapps</td>
238
      <td>The webapps property is the location in which your tomcat servlet 
239
          contexts are installed. This is typically "TOMCAT_HOME/webapps",
240
          where TOMCAT_HOME is the same value that you entered for the 'tomcat'
241
          property above.
242
      </td>
243
      <td>Default:&nbsp;&nbsp;
244
          <code>/var/www/org.ecoinformatics.knb</code>
245
      <br><br>Example:&nbsp;&nbsp;
246
          <code>C:/Tomcat4/webapps</code>
247
      </td>
248
    </tr>
249
    <tr>
250
      <td>context</td>
251
      <td>The context property is the name of the servlet context in which you 
252
          want Metacat to be installed. This will determine the installation 
253
          directory for the servlet and many of the URLs that are used to access
254
          the installed Metacat server.</td>
255
      <td>Default:&nbsp;&nbsp;
256
          <code>knb</code>
257
      <br><br>Example:&nbsp;&nbsp;
258
          <code>mycontext</code>
259
      </td>
260
    </tr>
261
    <tr>
262
      <td>server</td>
263
      <td>The server property is hostname of for the server on which Metacat is 
264
          running (note that you should not include the 'http://' in the server 
265
          property). The server setting should include the port number 
266
          appended to the end if Tomcat is running stand-alone (see example).
267
      </td>
268
      <td>Default:&nbsp;&nbsp;
269
         <code>knb.ecoinformatics.org</code>
270
      <br><br>Example:&nbsp;&nbsp;
271
         <code>somehost.university.edu:8080</code>
272
      </td>
273
    </tr>
274
    <tr>
275
      <td>httpserver</td>
276
      <td>httpserver is the plain HTTP address on which Metacat is running 
277
          (note that you should not include the 'http://' in the httpserver 
278
          property).
279
          The httpserver setting should include the HTTP plain port number 
280
          appended to the end if Tomcat is running stand-alone (see example).</td>
281
      <td>Default:&nbsp;&nbsp;
282
          <code>knb.ecoinformatics.org</code>
283
      <br><br>Example:&nbsp;&nbsp;
284
          <code>somehost.university.edu:8080</code>
285
      </td>
286
    </tr>
287
    <tr>
288
      <td>ldapUrl</td>
289
      <td>URL to the LDAP server. The LDAP server is used in the default
290
          authentication module to authenticate and identify users of the
291
          system.  To participate in the KNB network, you should leave this at
292
          the default.  But it can be changed if you want to use a 
293
          different directory of users.
294
      </td>
295
      <td>Default:&nbsp;&nbsp;
296
          <code>ldap://ldap.ecoinformatics.org/dc=ecoinformatics,dc=org</code>
297
      </td>
298
    </tr>
299
    <tr>
300
      <td>database</td>
301
      <td>Select the database to use for metadata storage.
302
          Valid values are <code>oracle</code>, <code>postgresql</code>, or
303
          <code>sqlserver</code>. Note that sqlserver support is minimal and
304
          probably will not work without substantial changes on your part,
305
          possibly including code changes.  We have not revcently tested on 
306
          sqlserver.
307
      </td>
308
      <td>Default:&nbsp;&nbsp;
309
          <code>oracle</code>
310
      <br><br>Other possible values:&nbsp;&nbsp;
311
          <code>postgresql</code>&nbsp;&nbsp;
312
          <code>sqlserver</code>
313
      </td>
314
    </tr>
315
    <tr>
316
      <td>jdbc-connect</td>
317
      <td>The JDBC connection string used to connect to the database.</td>
318
      <td>Default:&nbsp;&nbsp;
319
          <code>jdbc:oracle:thin:@metacat.nceas.ucsb.edu:1521:knb</code>
320
      </td>
321
    <tr>
322
      <td>jdbc-base</td>
323
      <td>The base directory for locating JDBC jar files (not needed for postgresql).</td>
324
      <td>Default:&nbsp;&nbsp;
325
          <code>/usr/oracle/jdbc/lib</code>
326
      <br><br>Example:&nbsp;&nbsp;
327
          <code>C:/jdev10g/jdbc/lib</code><br>
328
      </td>
329
    </tr>
330
    <tr>
331
      <td>user</td>
332
      <td>The database user name that you set up to use Metacat. For example, 
333
          an Oracle username.</td>
334
      <td>Default:&nbsp;&nbsp;
335
          <code>knb</code>
336
      <br><br>Example:&nbsp;&nbsp;
337
          <code>metacatdb</code>
338
      </td>
339
    </tr>
340
    <tr>
341
      <td>password</td>
342
      <td>The database password that you set up to use Metacat.</td>
343
      <td>Default:&nbsp;&nbsp;
344
          <code>yourPasswordHere</code>
345
      <br><br>Example:&nbsp;&nbsp;
346
          <code>metacat123</code>
347
      </td>
348
    </tr>
349
    <tr>
350
      <td>datafilepath</td>
351
      <td>The datafilepath is the directory to store data files.</td>
352
      <td>Default:&nbsp;&nbsp;
353
          <code>/var/metacat/data</code>
354
      <br><br>Example:&nbsp;&nbsp;
355
          <code>C:/Tomcat4/data/knb/data</code>
356
      </td>
357
    </tr>
358
    <tr>
359
      <td>inlinedatafilepath</td>
360
      <td>The inlinedatafilepath is the directory to store inline data that
361
          has been extracted from EML documents.</td>
362
      <td>Default:&nbsp;&nbsp;
363
          <code>/var/metacat/inline-data</code>
364
      <br><br>Example:&nbsp;&nbsp;
365
          <code>C:/Tomcat4/data/knb/inlinedata</code>
366
      </td>
367
    </tr>
368
    <tr>
369
      <td>cvsroot</td>
370
      <td>CVS access to retrieve latest EML. Only used by
371
          developers in building the release.</td>
372
      <td>Default:&nbsp;&nbsp;
373
          <code><pre>:ext:${env.USER}@cvs.ecoinformatics.org:/cvs</pre></code>
374
          Example:&nbsp;&nbsp;
375
          <code><pre>:ext:myaccount@cvs.ecoinformatics.org:/cvs</pre></code>
376
      </td>
377
    </tr>
378
    <tr>
379
      <td>cvsroot-alternate</td>
380
      <td>CVS access to retrieve latest conversion styles. Only used by
381
          developers in building the release.</td>
382
      <td>Default:&nbsp;&nbsp;
383
          <code><pre>:ext:${env.USER}@cvs.nceas.ucsb.edu:/cvs/pbi</pre></code>
384
          Example:&nbsp;&nbsp;
385
          <code><pre>:ext:myaccount@cvs.nceas.ucsb.edu:/cvs/pbi</pre></code>
386
      </td>
387
    </tr>
388
    <tr>
389
      <td>default-style</td>
390
      <td>The default-style parameter defines the "style-set" that is to be used
391
          by default when the qformat parameter is missing or set to "html"
392
          during a query. It is set to "knb", which is one of the styles that 
393
          ships with the default metacat distribution. Other possible settings
394
          are shown in the examples to the right.</td>
395
      <td>Default:&nbsp;&nbsp;
396
          <code>knb</code>
397
      <br><br>Examples:&nbsp;&nbsp;
398
          <pre><code>default   esa   knb2   nceas   nrs   obfs   specnet</code></pre>
399
      </td>
400
    </tr>
401
    <tr>
402
      <td>administrators</td>
403
      <td>The administrators parameter lists the accounts that are allowed to
404
          perform administrative actions such as rebuilding indices for 
405
          documents. The list can can contain more than one account separated
406
          by colons.</td>
407
      <td>Default:&nbsp;&nbsp;
408
          <code>uid=jones,o=NCEAS,dc=ecoinformatics,dc=org</code>
409
      <br><br>Examples:&nbsp;&nbsp;
410
          <code>uid=localadmin,o=ucnrs.org</code>
411
      </td>
412
    </tr>
413
  </table>
414
  <br>
415
  <p>
416
   Note that the build file is preconfigured to install Metacat either using 
417
   Oracle, PostgreSQL, or Microsoft SQL Server as a backend database.  
418
   To change the database system, simply change the value of the 'database' 
419
   property to be the name of the database target that you wish to use 
420
   (either 'oracle', 'postgresql', or 'sqlserver').
421
  </p>
422
  Other properties in <code>build.properties</code> that you can (but generally need not) change:<br />
423
  <br>
424
  <table border="1">
425
    <tr>
426
      <td><b>Property</b></td>
427
      <td><b>Description</b></td>
428
      <td><b>Default value and examples of other values</b></td>
429
    </tr>
430
    <tr>
431
      <td>inst.cgi.dir</td>
432
      <td>Installation directory for registry CGI scripts</td>
433
      <td>Default:&nbsp;&nbsp;
434
          <code>/var/www/cgi-knb</code>
435
      </td>
436
    </tr>
437
    <tr>
438
      <td>cgi-prefix</td>
439
      <td>&nbsp;</td>
440
      <td>Default:&nbsp;&nbsp;
441
          <code>http://knb.ecoinformatics.org/cgi-bin</code>
442
      </td>
443
    </tr>
444
    <tr>
445
      <td>knb-site-url</td>
446
      <td>This is the URL to the web context root for the knb site. 
447
          It is used for the qformat=knb skin only.</td>
448
      <td>Default:&nbsp;&nbsp;
449
          <code>http://knb.ecoinformatics.org</code>
450
      </td>
451
    </tr>
452
    <tr>
453
      <td>forcereplicationwaitingtime</td>
454
      <td>The waiting time before replication is forced to begin after
455
          uploading a package. The default value should usually suffice.</td>
456
      <td>Default:&nbsp;&nbsp;
457
          <code>30000</code>
458
          <code>&nbsp;</code>
459
      </td>
460
    </tr>
461
  </table>
462
  <p>
463
  Metacat has a number of additional settable properties in file
464
  <code>metacat/lib/metacat.properties</code>. Under most circumstances,
465
  you will not need to modify this file because the properties of interest
466
  to you can be controlled by editing <code>build.properties</code> as
467
  described above. To learn more about Metacat's additional properties,
468
  see <a href="./properties.html">Metacat Properties File</a>.
469
  </p>
470
  <p class="emphasis">
471
   Note: When setting properties, DO NOT add a trailing slash [/] to the end of any paths that are specified.
472
   Metacat will not function correctly if you do so.
473
  </p>
474
  <p class="header"><h2>SQL Scripts</h2></p>
475
  <p>
476
   You now need to set up the table structure in your database.  You can do
477
   either do this using the ant build system, or by manually running the
478
   scripts using a sql utility.
479
  </p>
480
  <p><b>WARNING: Do NOT run this on an existing metacat installation as it
481
  will delete all of your data.  If you have an existing metacat installation,
482
  see the instructions for "Upgrading" below.</b></p>
483

    
484
  <p>To run the scripts using ant, type <code>ant installdb</code>.  This does 
485
  not work for postgres, so you'll need to run the xmltables-postgres.sql script 
486
  manually (see next paragraph).
487
  </p>
488
  <p>To run the scripts manually, change to the
489
   metacat/build/src directory.  Then run you RDBMS's SQL utility.  In Oracle it is
490
   SQLPlus.  This tutorial assumes an Oracle database so this example is for
491
   SQLPlus.  Login as the oracle user that was set up for use with Metacat.
492
   At the SQLPlus prompt type the following: <pre><b>@xmltables.sql;</b></pre>
493
   For postgres, use a command like: 
494
   <code>psql -U metacat -W -h localhost -f build/src/xmltables-postgres.sql metacat</code>
495
  </p>
496
  <p>Either way, 
497
   you should see a bunch of output showing the creation of the Metacat table
498
   space. The first time you run this script you will get several errors at the 
499
   beginning saying that you cannot drop a table/index/trigger because it 
500
   does not exist.  This is normal.  Any other errors besides this need to be
501
   resolved before continuing. The script file name for PostgreSQL is 
502
   xmltables-postgres.sql and for Microsoft SQL server is 
503
   xmltables-sqlserver.sql.
504
  </p>
505
  <p>
506
   If the script has run correctly you should be able to type 
507
   <pre>describe xml_documents</pre> and it should show:
508
   <pre>
509
    Name            Null?         Type
510
    --------------  ------------  ---------------- 
511
     DOCID          NOT NULL      VARCHAR2(250)
512
     ROOTNODEID                   NUMBER(20)
513
     DOCNAME                      VARCHAR2(100)
514
     DOCTYPE                      VARCHAR2(100)
515
     DOCTITLE                     VARCHAR2(1000)
516
     USER_OWNER                   VARCHAR2(100)
517
     USER_UPDATED                 VARCHAR2(100)
518
     SERVER_LOCATION              NUMBER(20)
519
     REV                          NUMBER(10)
520
     DATE_CREATED                 DATE
521
     DATE_UPDATED                 DATE
522
     PUBLIC_ACCESS                NUMBER(1)
523
     UPDATED                      NUMBER(1)
524
   </pre>
525
  </p>
526
  <p class="header"><h2>Upgrading SQL Scripts</h2></p>
527
  <p>
528
    If you have an existing metacat installation, you should not run the install
529
    script because it will replace all of the older tables with new, empty 
530
    copies of the tables.  Thus you would lose your data!  Instead, you can 
531
    run some upgrade scripts that will change the table structure as needed for
532
    the new version.  If you are skipping versions, run each upgrade script
533
    for the intermediate versions as well.  Currently the upgrade scripts are:
534
   </p>
535
    <ul>
536
      <li>upgrade-db-to-1.2.sql</li>
537
      <li>upgrade-db-to-1.3.sql</li>
538
      <li>upgrade-db-to-1.4.sql</li>
539
    </ul>
540
   <p>
541
    So, if you had an existing metacat 1.0 installation and you were upgrading 
542
    to 1.4, you would need to run all three scripts in sequence:
543
    upgrade-db-to-1.2.sql, upgrade-db-to-1.3.sql, and upgrade-db-to-1.4.sql. 
544
    However, if you were starting from a Metacat 1.3.x
545
    installation, you would only need to run the upgrade-db-to-1.4.sql script.
546
   </p>
547
  </p>
548
</td>
549
</tr>
550
</table>
551

    
552
<table class="tabledefault" width="100%">
553
<td class="tablehead" colspan="2"><p><h2>Compilation and Installation</h2></p></td>
554
<tr>
555
<td>
556
  <a name="protocol"></a>
557
  <p>
558
   Ant allows compilation and installation to be done in one step.
559
   Change into the metacat directory and type: 
560
   <pre><b>ant geteml install</b></pre>
561
   or, if you are upgrading an existing installation, type:
562
   <pre><b>ant clean geteml upgrade</b></pre>
563
   <p>
564
   You should see a bunch of messages telling you the progress of compilation
565
   and installation.  When it is done you should see the message 
566
   BUILD SUCCESSFUL
567
   and you should be returned to a UNIX command prompt.  If you do not see
568
   the message BUILD SUCCESSFUL then there was an error that you need to 
569
   resolve.
570
   This may come up if you are logged in as a user that does not have write
571
   access to one or more of the directories that are listed in the build.xml
572
   file, or if any of the paths to files are not configured correctly in the
573
   "config" target.
574
  </p>
575
  <p>Once metacat itself is installed, you should also register
576
  the Ecological Metadata Language (EML) DTDs and schemas. This process is done most
577
  easily by running:</p>
578
  <pre><b>ant dtdschemasql</b></pre> 
579
  <p>This command registers the DTDs' and schemas' location in the 
580
  metacat server.  Your database username and password have to be set correctly
581
  for this to work.
582
  </p>
583
  <p>
584
  Note: The 'data' directory in the installation directory must be writeable
585
  by whatever user is running Tomcat or you will not be able to upload data 
586
  files to the system.
587
  <h2>Restart Tomcat</h2>
588
  <p>
589
   Once you have successfully installed Metacat, there is one more step.  Tomcat
590
   (and Apache if you have Tomcat integrated with it) must be restarted.  To do
591
   this, login as the user that runs your tomcat server (often "tomcat"),
592
   go to $CATALINA_HOME/bin and type:
593
   <pre>
594
   ./shutdown.sh 
595
   ./startup.sh 
596
   </pre>
597
   In the Tomcat startup messages you should see something in log file like:
598
   <pre>
599
    MetacatServlet Initialize
600
    Context log path="/metadata" :Metacat: init
601
    MetacatServlet Initialize
602
   </pre>
603
   If you see that message Tomcat is successfully loading the Metacat servlet.
604
   Next, try to run your new servlet.  Go to a web browser and type:
605
   <pre>http://yourserver.yourdomain.com/yourcontext/</pre>
606
   You should substitute your context name for "yourcontext" in the url above.
607
   If everything is working correctly, you should see a query page followed
608
   by an empty result set.  Note that if you do not have Tomcat integrated with
609
   Apache you will probably have to type
610
   <pre>http://yourserver.yourdomain.com:8080/yourcontext/</pre>
611
  </p>
612
</td>
613
</tr>
614
</table>
615

    
616
</body>
617
</html>
(28-28/50)