Difference between revisions of "Startup"

From BaseX Documentation
Jump to navigation Jump to search
Line 19: Line 19:
 
====Synchronization====
 
====Synchronization====
  
The GUI of BaseX and the standalone client and are not synchronized, as they all
+
If you plan to concurrently read and write your data, you need to resort
work in different JVMs (virtual Java machines). If you plan to concurrently read
+
to the client/server architecture. This is because the GUI, the standalone client
and write your data, you need to resort to the client/server architecture.
+
and the client/server architecture of BaseX all work in different JVMs (Java
Note that, in the worst case, databases might get corrupt if you use BaseX
+
virtual machines) and are not synchronized among each other. You should be aware
instances in different Java VMs and try to enforce updates.
+
that, in the worst case, databases might get corrupt if you use BaseX instances
 +
in different JVMs and try to enforce updates.
  
 
==BaseX GUI==
 
==BaseX GUI==

Revision as of 16:50, 11 April 2012

This article is part of the Getting Started Guide. It tells you how to get BaseX running.

Requirements

BaseX

Please download the latest BaseX version from our homepage. The official releases include the BaseX JAR file, libraries and optional Start Scripts. If you do not use an installer, we recommend to manually add the project’s bin directory to your path environment; this way, you will be able to run BaseX from everywhere in your shell/terminal.

Java

A Runtime Environment of Java 1.6 (JRE) is needed to run BaseX. BaseX is platform independent and runs on any system that provides a Java Virtual Machine. BaseX has been tested on Windows (2000, XP, Vista, 7), Max OS X (10.x), Linux(SuSE xxx, Debian, Ubuntu) and OpenBSD (4.x).

Synchronization

If you plan to concurrently read and write your data, you need to resort to the client/server architecture. This is because the GUI, the standalone client and the client/server architecture of BaseX all work in different JVMs (Java virtual machines) and are not synchronized among each other. You should be aware that, in the worst case, databases might get corrupt if you use BaseX instances in different JVMs and try to enforce updates.

BaseX GUI

The GUI is the visual interface to the features of BaseX. It can be used to create new databases, perform queries or interactively explore your XML data.

The GUI can be started as follows (get more information on all Startup Options):

  • Double click on the BaseX.jar file.
  • Run one of the basexgui or basexgui.bat scripts.
  • Execute the following command: java -cp BaseX.jar org.basex.BaseXGUI
  • On Windows: Double click on the BaseX GUI icon.
  • For Maven users: type in mvn exec:java in the main directory of the basex project.

BaseX Standalone

The Standalone Mode can be used to enter database commands, or execute automated database operations and queries, on command line.

The standalone version can be started as follows (get more information on all Startup Options):

  • Run one of the basex or basex.bat scripts.
  • Execute the following command: java -cp BaseX.jar org.basex.BaseX
  • On Windows: Double click on the BaseX icon.

BaseX Server

The Database Server comes into play if BaseX is to be used by more than one user (client). It handles concurrent read and write transactions, provides user management and logs all user interactions.

By default, the server listens to the port 1984. There are several ways of starting and stopping the server (get more information on all Startup Options):

  • Run one of the basexserver or basexserver.bat scripts. Add the stop keyword to gracefully shut down the server.
  • Execute the following command: java -cp BaseX.jar org.basex.BaseXServer. Again, the stop keyword will ensure a graceful shutdown.
  • On Windows: Double click on the BaseX Server icon, which will also start the HTTP Server, or the BaseX Server (stop) icon.

Pressing Ctrl+c will close all connections and databases and shut down the server process.

BaseX Client

The BaseX Client interface can be used to send commands and queries to the server instance on command line.

It can be started as follows (get more information on all Startup Options):

  • Run one of the basexclient or basexclient.bat scripts.
  • Execute the following command: java -cp BaseX.jar org.basex.BaseXClient
  • On Windows: Double click on the BaseX Client icon.

The default admin user can be used to connect to the server:

  • Username: admin
  • Password: admin

The password should be changed with the PASSWORD command after the first login.

Please check out the article on the Database Server for more details.

BaseX HTTP Server

The HTTP Server gives access to the REST, RESTXQ and WebDAV Services of BaseX. By default, it starts an instance of the Jetty Web Server, which listens to the port 8984, and the BaseX Server, which listens to 1984.

The HTTP Server can be started as follows (get more information on all Startup Options):

  • Run one of the basexhttp or basexhttp.bat scripts. Add the stop keyword to gracefully shut down the server.
  • On Windows: Double click on the BaseX Server or BaseX Server (stop) icon.
  • For Maven users: type in mvn jetty:run in the main directory of the basex-api project, and press Ctrl+c to shut down the process.
  • You may also want to deploy BaseX as a Web Application.

Changelog

Version 7.0

  • Updated: the BaseXJAXRX has been replaced with BaseXHTTP