Server configuration

The EyeDB server has a number of configuration switches that allow to specify server parameters such as listening ports, directory for temporary files, databases directory...

Each EyeDB server configuration switch value is determined using, in this order:

Server configuration file

The server configuration file is a file that contains a list of configuration switches definition. The syntax of the configuration file is given informaly in Figure 2.1, “EyeDB server configuration file syntax”.

Figure 2.1. EyeDB server configuration file syntax


file : line ...
line : comment | definition
comment : # LINE
definition: VARIABLE = VALUE ;


A variable value can contain variable expansions; a variable expansion is a variable name surrounded by the character % as in: %variable%.

Example 2.9, “EyeDB server configuration file” gives an example of a EyeDB server configuration file.

Example 2.9. EyeDB server configuration file

# EyeDB server configuration file
# 

# Bases directory
databasedir = /home/francois/projects/eyedb/install/var/lib/eyedb/db;

# Temporary files directory
tmpdir = /home/francois/projects/eyedb/install/var/lib/eyedb/tmp;

# Path to .so files
sopath = /home/francois/projects/eyedb/install/lib/eyedb;

# Default EYEDBDBM database
default_dbm = /home/francois/projects/eyedb/install/var/lib/eyedb/db/dbmdb.dbs;

# Granted EYEDBDBM database
granted_dbm = %default_dbm%;

# Default file mask
default_file_mask = "0";

# Default file group
default_file_group = "";

# Maximum server memory size in Mb
maximum_memory_size = 0;

# Server access file
access_file = /home/francois/projects/eyedb/install/etc/eyedb/Access;

# Smd connection port
smdport = /home/francois/projects/eyedb/install/var/lib/eyedb/pipes/smd;

# Server listen ports and sockets list
listen = localhost:6240,/home/francois/projects/eyedb/install/var/lib/eyedb/pipes/eyedbd;

# OQL files path
oqlpath = /home/francois/projects/eyedb/install/lib/eyedb/oql
	  

The EyeDB server will try to load one of the following configuration files, in this order:

  • the file specified by eyedbctl --server-conf option

  • the file specified by EYEDBDCONF environment variable

  • user configuration file: the file ~/.eyedb/eyedbd.conf where ~ represents the home directory of the user running the eyedbctl command

  • the file eyedbd.conf located in the directory specified by EYEDBCONFDIR environment variable

  • system-wide configuration file: the file eyedbd.conf located in directory sysconfdir/eyedb, where sysconfdir is the system configuration directory specified at compilation time using the configure script. By default, the system-wide configuration file is /etc/eyedb/eyedbd.conf

Server configuration switches list

The list of configuration switches that are use by the EyeDB server is given in Table 2.1, “ List of EyeDB server configuration switches ”. This table gives the variable name that can appear in a configuration file, the corresponding eyedbctl option if applicable, the name of the environment variable and a description of the configuration switch meaning.

Table 2.1.  List of EyeDB server configuration switches

Configuration variable name eyedbctl option environment variable Description
databasedir --databasedir EYEDBDATABASEDIR databases directory
tmpdir NA EYEDBTMPDIR temporary files directory
sopath NA EYEDBSOPATH path to .so files
default_dbm --default-dbm EYEDBDEFAULT_DBM default EYEDBDBM database
granted_dbm --granted-dbm EYEDBGRANTED_DBM granted EYEDBDBM database
default_file_mask --default-file-mask EYEDBDEFAULT_FILE_MASK default file mask
default_file_group --default-file-group EYEDBDEFAULT_FILE_GROUP default file group
maximum_memory_size --maximum-server-memory-size EYEDBMAXIMUM_MEMORY_SIZE maximum server memory size in Mb
access_file NA EYEDBACCESS_FILE server access file
smdport NA EYEDBSMDPORT smd connection port
listen --listen EYEDBLISTEN server listen ports and sockets list
oqlpath NA EYEDBOQLPATH OQL files path