xenial (1) refdbd.1.gz

Provided by: refdb-server_1.0.2-3ubuntu1_amd64 bug

NAME

       refdbd - the application server of RefDB

SYNOPSIS

       refdbd [-b dbs-port] [-d default-database] [-D dbserver] [-e log-destination] [-E encoding] [-h]
              [-i IP-address] [-I] [-k] [-K] [-l log-level] [-L log-file] [-p port] [-P PID-file] [-q] [-r] [-s]
              [-S note-share-mode] [-T time] [-U] [-v] [-V] [-x] [-y confdir] [-Y libdbidir]

       refdbd {[-a] | [-c]} [-b dbs-port] [-D dbserver] [-e log-destination] [-E encoding] [-h] [-i IP-address]
              [-l log-level] [-L log-file] [-p port] [-P PID-file] [-q] [-u username] [-v] [-V] [-w password]
              [-x] [-y confdir] [-Y libdbidir]

DESCRIPTION

       refdbd is the application server of RefDB(7). refdbd contains most of the application logic of RefDB and
       interacts with the database engine. refdbd must run somewhere in your network to do anything useful with
       the RefDB clients. refdbd usually runs as a daemon and responds to client requests, but it can be started
       as a regular process for debugging purposes. To start refdbd as a server, use the first command synopsis
       shown above.

       It is recommended to use a wrapper script to start and stop refdbd. If you want to start and stop refdbd
       manually, use refdbctl(1). If you want to run refdbd as a daemon, use refdb(8). Edit the configuration
       file (see below) to permanently configure refdbd.

       In addition to being run as a server, refdbd can also be invoked to check, install, or upgrade the main
       database. Refer to the second command synopsis shown above.

OPTIONS

       -a
           Runs refdbd to install or upgrade the main database. refdbd will exit after performing the
           maintenance tasks. In order to perform the maintenance tasks you have to provide a database
           administrator username and password using the -u and -w options, respectively, if your database
           engine uses access control. Some database configurations (e.g. PostgreSQL on Debian) further require
           you to run the administrative tasks from a special privileged user account (often called pgsql or
           postgres). If you use one of the file-based engines (SQLite or SQLite3), you must run the tool from
           an account which has write permissions in the database folder. refdbd first checks whether a main
           database already exists. If not, it will attempt to install it. Otherwise, it will upgrade the
           database to the current version if required. refdbd will print an error message to stderr if the
           maintenance job fails, and exit with a non-zero exit code.

       -b dbs-port
           Set the port on which the database server listens for incoming connections. The default is 3306 for
           MySQL and 5432 for PostgreSQL. This option does not apply if you use SQLite as your database engine.

       -c
           Runs refdbd to check the main database version and the database engine connection. refdbd will exit
           after performing the maintenance tasks. In order to perform the maintenance tasks you have to provide
           a database administrator username and password using the -u and -w options, respectively, if your
           database engine uses access control. If you use one of the file-based engines (SQLite or SQLite3),
           you must run the tool from an account which has read permissions for the main database file. refdbd
           will print an error message to stderr if the check fails, and exit with a non-zero exit code.

       -d default-database
           Set a default database to be used for all client queries that do not specify a database.

       -D dbserver
           Select the database server. Currently the values mysql, pgsql, and sqlite are supported to select
           MySQL, PostgreSQL, and SQLite, respectively.

       -e log-destination
           This specifies the destination of the log information. If destination is 0 or "stderr", the log
           output is sent to stderr. This should only be used for debugging purposes when refdbd is not run as a
           daemon. If destination is 1 or "syslog", the syslog facility of the system is used. syslog has to be
           configured properly to accept refdb's log output. Consult the syslogd(8) man page how to achieve
           this. If destination is 2 or "file", a custom log file as defined by the -L switch is used instead.
           If this log file cannot be written to, refdbd falls back to using syslog.

       -E encoding
           Select the default character encoding for new reference databases. Specify the IANA name of the
           encoding. You can override this default by using the -E option of the createdb command.

       -h
           Displays help and usage screen, then exits.

       -i IP-address
           For external database servers, set the IP address of the box which is running the database server.
           Instead of the IP address you can also specify the hostname as long as it can be properly resolved by
           your system. If the database server runs on the same box as refdbd, use the string localhost. Note:
           If localhost does not seem to work, try specifying the real IP address of the box instead - some
           database client libraries refuse to use TCP/IP for local connections which may cause mayhem on
           particular systems. For embedded database engines, this option sets the directory which contains the
           database files. The default is /usr/local/share/refdb/db. Note: SQLite on Cygwin has a bug which
           prevents the use of absolute paths. Use a relative path instead by leaving out the leading slash.
           This assumes that refdbd is started from the root directory. The start script refdbctl does this
           automatically.

       -I
           Set this switch to allow remote connections to refdbd. Otherwise only connections from localhost
           (127.0.0.1) will be answered.

       -k
           refdb stores up to four names (full name, official abbreviation, and two user-defined abbreviations)
           of each periodical. These synonyms are shared by all references that use one of these periodical
           names. As it sometimes requires some effort to get at the synonyms (public reference data often
           contains only the official abbreviation), it is desirable to keep these synonyms even if you remove
           the last reference that uses a particular periodical name. If you use the -k option, the synonyms
           will not be removed from the database and will be available immediately if you add a new reference
           using that particular periodical name.

       -K
           If this option is used, refdbd will run an automatic keyword scan each time you add or update
           references. refdbd will scan the title fields and the abstract field of the modified references for
           any keywords already present in the database but not in the particular reference. This increases the
           usability of keywords in queries. There is no speed decrease for the user interaction as the keyword
           scan is performed in the background. See also the related refdba command scankw which performs a more
           thorough manual keyword scan.

       -l log-level
           Set the log level to a value between 0 and 7 or to a string value as described in log level
           definitions. 0 means that only critical log messages will be logged, while a value of 7 means that
           every log message will be logged. Set level to -1 to disable logging.

       -L log-file
           This switch specifies a custom log file (full path please). This will only be used if the -e switch
           is set accordingly.

       -p port
           Set the port on which refdbd listens for incoming connections. The default is 9734.

       -P PID-file
           Specify the full path of the file that refdbd writes its process ID to. This PID simplifies stopping
           and reconfiguring the application server from the command line. The default value is
           /var/log/refdbd.pid.

       -q
           Start without reading the configuration file. Useful for debugging purposes

       -r
           Enables remote administration via refdba.

       -s
           Starts as a standalone application, not as daemon.

       -S note-share-mode
           Set the default extended note share mode to either public or private. This setting affects the
           accessibility of extended notes if they do not explicitly carry a share attribute. See the section
           about notes sharing for more information.

       -T time
           Set the timeout for client/application server dialogue in seconds.

       -u name
           Set the username of the database administrator account.

       -U
           This switch causes refdbd to automatically uppercase all citation keys of newly added references.
           This makes it more convenient to work with SGML bibliographies.

       -v
           Prints version and copyright information, then exits.

       -V
           Switches to verbose mode. To be honest, currently this doesn't make much of a difference.

       -w password
           The password of the database administrator account. You can pass an asterisk to let refdbd ask for a
           password interactively. This keeps your password from showing up in the process list. Keep in mind
           that you have to protect the asterisk on the command line by surrounding it with single quotes.

       -x
           Assume incoming passwords are unencrypted.

       -y confdir
           Specify the directory where the global configuration files are Note: By default, all RefDB
           applications look for their configuration files in a directory that is specified during the configure
           step when building the package. That is, you don't need the -y option unless you use precompiled
           binaries in unusual locations, e.g. by relocating a rpm package.

       -Y libdbidir
           Specify the directory where the libdbi drivers are Note: By default, libdbi (the database abstraction
           library used by refdbd) looks for its driver files in a directory that is specified during the
           configure step when building the package. That is, you don't need the -Y option unless you use
           precompiled libdbi binaries in unusual locations, e.g. by relocating a rpm package.

CONFIGURATION

       Table 1. refdbdrc
       ┌──────────────┬─────────────────────────────┬──────────────────────────────┐
       │VariableDefaultComment                      │
       ├──────────────┼─────────────────────────────┼──────────────────────────────┤
       │refdblib      │ /usr/local/share/refdb      │ The path of the directory    │
       │              │                             │ containing shareable refdb   │
       │              │                             │ files like DTDs, HTML        │
       │              │                             │ templates etc. Actually,     │
       │              │                             │ most of the files are in     │
       │              │                             │ subdirectories of refdblib.  │
       ├──────────────┼─────────────────────────────┼──────────────────────────────┤
       │dbsport       │ 3306                        │ The port on which the        │
       │              │                             │ database server listens. Use │
       │              │                             │ either 3306 or 5432 for      │
       │              │                             │ MySQL and PostgreSQL,        │
       │              │                             │ respectively. This variable  │
       │              │                             │ is ignored if you use SQLite │
       │              │                             │ as your database engine.     │
       ├──────────────┼─────────────────────────────┼──────────────────────────────┤
       │dbserver      │ sqlite                      │ The database server you want │
       │              │                             │ to connect to. Use one of    │
       │              │                             │ mysql, pgsql, or sqlite to   │
       │              │                             │ select MySQL, PostgreSQL, or │
       │              │                             │ SQLite as your database      │
       │              │                             │ engine, respectively.        │
       ├──────────────┼─────────────────────────────┼──────────────────────────────┤
       │dbpath        │ /usr/local/var/lib/refdb/db │ The directory that contains  │
       │              │                             │ the database files of an     │
       │              │                             │ embedded database engine.    │
       │              │                             │ Leave out the leading slash  │
       │              │                             │ if you use SQLite on Cygwin. │
       ├──────────────┼─────────────────────────────┼──────────────────────────────┤
       │logdest       │ 2                           │ The destination of the log   │
       │              │                             │ information. 0 = print to    │
       │              │                             │ stderr (for debugging only,  │
       │              │                             │ don't use when running as a  │
       │              │                             │ daemon); 1 = use the syslog  │
       │              │                             │ facility; 2 = use a custom   │
       │              │                             │ logfile. The latter needs a  │
       │              │                             │ proper setting of logfile.   │
       ├──────────────┼─────────────────────────────┼──────────────────────────────┤
       │logfile       │ /var/log/refdbd.log         │ The full path of a custom    │
       │              │                             │ log file. This is used only  │
       │              │                             │ if logdest is set            │
       │              │                             │ appropriately. If you start  │
       │              │                             │ refdbd from the command line │
       │              │                             │ as a regular user, you       │
       │              │                             │ should specify a file that   │
       │              │                             │ you have write access to     │
       │              │                             │ (you may not be allowed to   │
       │              │                             │ create /var/log/refdbd.log   │
       │              │                             │ or write to this file as a   │
       │              │                             │ regular user).               │
       ├──────────────┼─────────────────────────────┼──────────────────────────────┤
       │loglevel      │ 6                           │ The log level up to which    │
       │              │                             │ messages will be sent. A low │
       │              │                             │ setting (0) will notify you  │
       │              │                             │ only in case of a meltdown,  │
       │              │                             │ whereas a high setting (7)   │
       │              │                             │ allows all messages          │
       │              │                             │ including debug messages     │
       │              │                             │ (this is a lot). -1 means    │
       │              │                             │ nothing will be logged.      │
       ├──────────────┼─────────────────────────────┼──────────────────────────────┤
       │pidfile       │ /var/log/refdb.pid          │ The file refdbd writes its   │
       │              │                             │ process ID to. If you start  │
       │              │                             │ refdbd from the command line │
       │              │                             │ as a regular user, you       │
       │              │                             │ should specify a file that   │
       │              │                             │ you have write access to     │
       │              │                             │ (you may not be allowed to   │
       │              │                             │ create /var/log/refdbd.pid   │
       │              │                             │ or write to this file as a   │
       │              │                             │ regular user).               │
       ├──────────────┼─────────────────────────────┼──────────────────────────────┤
       │port          │ 9734                        │ The port on which refdbd     │
       │              │                             │ listens. The server and all  │
       │              │                             │ clients that are supposed to │
       │              │                             │ connect to it must agree on  │
       │              │                             │ the same port. Obviously,    │
       │              │                             │ this option allows to run    │
       │              │                             │ several instances of refdbd  │
       │              │                             │ on the same box if there is  │
       │              │                             │ a good reason to do so. In   │
       │              │                             │ this case you should also    │
       │              │                             │ use separate log and pid     │
       │              │                             │ files.                       │
       ├──────────────┼─────────────────────────────┼──────────────────────────────┤
       │remoteadmin   │ f                           │ Set this to 't' to allow     │
       │              │                             │ remote administration via    │
       │              │                             │ refdba. Be aware that this   │
       │              │                             │ is a security risk.          │
       ├──────────────┼─────────────────────────────┼──────────────────────────────┤
       │serverip      │ localhost                   │ The IP address or hostname   │
       │              │                             │ of the machine where the     │
       │              │                             │ database server runs. Use    │
       │              │                             │ the default (localhost)      │
       │              │                             │ address if the database      │
       │              │                             │ server and refdbd run on the │
       │              │                             │ same machine.                │
       ├──────────────┼─────────────────────────────┼──────────────────────────────┤
       │timeout       │ 180                         │ The timeout in seconds.      │
       │              │                             │ After this time has elapsed, │
       │              │                             │ a stalled connection is      │
       │              │                             │ taken down. Increase this    │
       │              │                             │ value if you encounter       │
       │              │                             │ frequent timeout errors due  │
       │              │                             │ to high network traffic.     │
       ├──────────────┼─────────────────────────────┼──────────────────────────────┤
       │keep_pnames   │ t                           │ Set this to 't' to keep      │
       │              │                             │ periodical names and         │
       │              │                             │ synonyms if you remove       │
       │              │                             │ references. If set to 'f',   │
       │              │                             │ the names will be removed    │
       │              │                             │ from the database if the     │
       │              │                             │ last reference using these   │
       │              │                             │ names is deleted.            │
       ├──────────────┼─────────────────────────────┼──────────────────────────────┤
       │db_encoding   │ (none)                      │ Specify the default          │
       │              │                             │ character encoding for new   │
       │              │                             │ refdb reference databases.   │
       │              │                             │ If the database server       │
       │              │                             │ supports this feature        │
       │              │                             │ (currently only PostgreSQL   │
       │              │                             │ does), all new databases     │
       │              │                             │ will use this encoding       │
       │              │                             │ unless a different one is    │
       │              │                             │ specified with the createdb  │
       │              │                             │ command.                     │
       ├──────────────┼─────────────────────────────┼──────────────────────────────┤
       │in_encoding   │ ISO-8859-1                  │ Specify the default          │
       │              │                             │ character encoding for RIS   │
       │              │                             │ data being added to          │
       │              │                             │ databases.                   │
       ├──────────────┼─────────────────────────────┼──────────────────────────────┤
       │dbi_driverdir │ (none)                      │ Specify the directory        │
       │              │                             │ containing the libdbi driver │
       │              │                             │ files. As mentioned above,   │
       │              │                             │ this is only necessary if    │
       │              │                             │ you use precompiled libdbi   │
       │              │                             │ binaries in funny locations. │
       ├──────────────┼─────────────────────────────┼──────────────────────────────┤
       │keyword_scan  │ t                           │ Set this to 't' to allow an  │
       │              │                             │ automatic keyword scan after │
       │              │                             │ references are added or      │
       │              │                             │ updated. 'f' will switch off │
       │              │                             │ this feature.                │
       ├──────────────┼─────────────────────────────┼──────────────────────────────┤
       │upper_citekey │ f                           │ Set this to 't' to uppercase │
       │              │                             │ all citation keys of newly   │
       │              │                             │ added references (this makes │
       │              │                             │ sure they work with SGML     │
       │              │                             │ bibliographies).             │
       ├──────────────┼─────────────────────────────┼──────────────────────────────┤
       │share_default │ public                      │ Whether ("public") or not    │
       │              │                             │ ("private") to share         │
       │              │                             │ extended notes between users │
       │              │                             │ by default. See the section  │
       │              │                             │ about notes sharing for more │
       │              │                             │ information.                 │
       ├──────────────┼─────────────────────────────┼──────────────────────────────┤
       │remoteconnect │ f                           │ Set this to 't' to allow     │
       │              │                             │ remote connections to        │
       │              │                             │ refdbd. By default, refdbd   │
       │              │                             │ accepts only local           │
       │              │                             │ connections due to security  │
       │              │                             │ concerns.                    │
       ├──────────────┼─────────────────────────────┼──────────────────────────────┤
       │no_decrypt    │ f                           │ If set to 't', incoming      │
       │              │                             │ passwords are assumed to be  │
       │              │                             │ unencrypted. The default is  │
       │              │                             │ to expect encrypted          │
       │              │                             │ passwords.                   │
       └──────────────┴─────────────────────────────┴──────────────────────────────┘

FILES

       PREFIX/etc/refdb/refdbdrc

       The global configuration file of refdbd.

SEE ALSO

       RefDB (7), refdb (8), refdbctl (1), refdba (1), refdbc (1).

       RefDB manual (local copy) PREFIX/share/doc/refdb-<version>/refdb-manual/index.html

       RefDB manual (web) <http://refdb.sourceforge.net/manual/index.html>

       RefDB on the web <http://refdb.sourceforge.net/>

AUTHOR

       refdbd was written by Markus Hoenicka <markus@mhoenicka.de>.