Difference between revisions of "Configuration"

From BaseX Documentation
Jump to navigation Jump to search
Line 13: Line 13:
 
==Home Directory==
 
==Home Directory==
  
As BaseX is a portable application, it dynamically determines its home directory. Three potential choices for the home directory exist:
+
As BaseX is distributed in different flavors, and may be started from different locations, it dynamically determines its home directory. The directory is
  
* The '''current working directory''' will be selected if the configuration files are found in this directory. This way, you can define local settings, which will be ignored if you run BaseX from another directory.
+
* First, the '''system property''' {{mono|"org.basex.path"}} is checked. If it contains a value, it is chosen as directory path.
* Second, the '''application directory''' is checked for configuration files. This directory will be your home directory if you have used the Windows Installer to get BaseX running.
+
* If not, the '''current user directory''' (defined by the system property {{mono|"user.dir"}}) is chosen if the {{mono|.basex}} configuration file is found in this directory.  
* In all other cases, the '''user's home directory''' is chosen to store the BaseX configuration and database files.
+
* Otherwise, the configuration file is searched in the '''application directory''' (the folder in which the project is located).  
 +
* In all other cases, the '''user's home directory''' (defined in {{mono|"user.home"}}) is chosen.
  
 
==Database Directory==
 
==Database Directory==

Revision as of 01:07, 4 November 2011

This article is part of the Advanced User's Guide. It gives some more insight into the configuration of BaseX.

Configuration Files

BaseX uses three configuration files, which are stored in the Home Directory (note that, depending on your OS and configuration, files and folders with a '.' prefix may be hidden):

  • .basex contains all options that are relevant for running the server or standalone versions of BaseX.
  • .basexgui defines all options relevant to the BaseX GUI.
  • .basexperm contains user name, passwords, and permissions (see last paragraph).
  • .basexevents contains all existing events (see Events).

Home Directory

As BaseX is distributed in different flavors, and may be started from different locations, it dynamically determines its home directory. The directory is

  • First, the system property "org.basex.path" is checked. If it contains a value, it is chosen as directory path.
  • If not, the current user directory (defined by the system property "user.dir") is chosen if the .basex configuration file is found in this directory.
  • Otherwise, the configuration file is searched in the application directory (the folder in which the project is located).
  • In all other cases, the user's home directory (defined in "user.home") is chosen.

Database Directory

A database in BaseX consists of several files, which are all bundled in a folder with the database name. By default, all of these files are stored in a database directory in the home directory, which is named BaseXData. If you use the Windows installer, this directory will be named data, and reside in the application directory.

The database path can be changed as follows:

  • GUI: Choose OptionsPreferences and choose a new database path.
  • Server/Standalone: SET DBPATH [path]

Note: After having changed the database path, all existing databases have to be manually moved to the new location.

User and Log Files

Global users, along with their passwords and permissions, are stored in the .basexperm file in the home directory. Local users and permissions are stored inside the database files. Log files are stored in text format in the home directory BaseXData/.logs (see Logging for more information).