Using custom track database: Difference between revisions

From genomewiki
Jump to navigationJump to search
Line 9: Line 9:
<ul>
<ul>
<li>database loader binaries hgLoadBed, hgLoadWiggle and wigEncode are installed in /cgi-bin/loader/ - these are installed via the normal 'make cgi' in the source tree kent/src/hg/ directory.</li>
<li>database loader binaries hgLoadBed, hgLoadWiggle and wigEncode are installed in /cgi-bin/loader/ - these are installed via the normal 'make cgi' in the source tree kent/src/hg/ directory.</li>
<li>an empty customTrash database has been created on the MySQL host - create this manually once</li>
<li>an empty customTrash database has been created on the MySQL host - create this manually once, the MySQL host name is a configuration item</li>
<li>temporary read-write data directory <em>/data/tmp</em> has been created with read/write/delete enabled for the Apache server effective user, this directory name is a configuration item</li>
<li>configuration items are specified in /cgi-bin/hg.conf/ - this will turn on the function</li>
<li>configuration items are specified in /cgi-bin/hg.conf/ - this will turn on the function</li>
<li>for command line access to the database, create a special ~/.hg.ct.conf to be used with the environment variable HGDB_CONF</li>
<li>for command line access to the database, create a special ~/.hg.ct.conf to be used with the environment variable HGDB_CONF</li>

Revision as of 19:22, 2 March 2007

Using the Custom Track Database

A new feature of the genome browser as of March 2007 is the ability to use a data base for custom tracks. Up to this date, custom track data has been kept in files in the /trash/ct/ directory. This article discusses the steps required to enable this function.

Summary configuration

  • database loader binaries hgLoadBed, hgLoadWiggle and wigEncode are installed in /cgi-bin/loader/ - these are installed via the normal 'make cgi' in the source tree kent/src/hg/ directory.
  • an empty customTrash database has been created on the MySQL host - create this manually once, the MySQL host name is a configuration item
  • temporary read-write data directory /data/tmp has been created with read/write/delete enabled for the Apache server effective user, this directory name is a configuration item
  • configuration items are specified in /cgi-bin/hg.conf/ - this will turn on the function
  • for command line access to the database, create a special ~/.hg.ct.conf to be used with the environment variable HGDB_CONF
  • create a cron job to run a cleaner script to expire and remove older tables from the database - dbTrash command is used for this purpose

Host and database name

For performance and security considerations, the MySQL host for the custom track database can be a separate machine from the ordinary MySQL host that usually serves up the assembly databases or the hgcentral database. It is not required that the custom track database be on a separate MySQL server. The specification of the host machine is placed in the /cgi-bin/hg.conf file, for example a host machine called "ctdbhost":

customTracks.host=ctdbHost

The database name used on this host is fixed at customTrash which is a define in the source tree file hg/inc/customTrack.h

/cgi-bin/hg.conf configuration items

The following items must be specified in /cgi-bin/hg.conf to enable this function:

customTracks.host=ctdbhost
customTracks.user=ctdbuser
customTracks.password=ctdbpasswd
customTracks.useAll=yes

Optionally, a temporary read-write directory used during database loading can be specified:

customTracks.tmpdir=/data/tmp

The default for this is /data/tmp