Changes

Jump to navigation Jump to search
3,040 bytes removed ,  15:00, 12 November 2019
This article is part of the [[Getting Started]] Guide. It tells you how to get BaseX running.
=Getting StartedIntroduction=
First of all, [http://basex.org/download download] BaseX from our homepageis very light-weight.The following distributions are availableIt can be run and used in lots of different ways:
* the '''Core Package''' is # BaseX comes with a JAR file[[GUI|Graphical User Interface]] that offers you marvellous tools for managing, which contains the database code, the query processor querying and visualizing your data and the GUI frontendwrite complex applications in XQuery. It runs completely without additional libraries# You can start BaseX as [[Command-Line Client]] if you prefer to work on command-line line and want to do batch processing.* # The [[Database Server]] is the '''ZIP Archive''' right choice if you have multiple users or clients, if you don’t require HTTP services, and the '''Windows Installer''' contain libraries for web applications if you tend to communicate with BaseX on a technical level.# The [[Web Application|HTTP Server]] provides [[REST]] and advanced features, [[Start ScriptsWebDAV]] services. With [[RESTXQ]], complex web applications can be built, and some additional optional files.* the '''WAR Archive''' can be embedded [[DBA]] application allows you to work with BaseX in existing Java web serversthe browser.
Some additional distributions are available from the download page,most of which contain only the core package and, optionally, scripts for starting BaseXcan also be embedded as library in your own applications.
BaseX is very light-weight. It can be run and used in various ways:==Concurrent Operations==
* as standalone applicationIf you want to perform parallel (concurrent) read and write operations on your databases, using you must use the [[#Standalone|Standalone]] mode client/server architecture or the [[#Graphical User Interface|Graphical User Interface]],* run BaseX as [[#Client/Server|Client/Server]] web application. You can safely open a database in different JVMs (Java virtual machines) for read-only access, or* as [[#Web Application|Web Application]]and you will not encounter any problems when reading from and writing to different databases, called but update operations from a web serverdifferent JVMs to the same database will be rejected or may even lead to corrupt databases.
It For example, if you only read data, you can also be embedded as easily run several clients (standalone, GUI, database clients) at the same time. If you update your data, however, you shouldn’t use the GUI or a library in your own applicationstandalone instance at the same time.
===Requirements===More details on concurrency can be found on the [[Transaction Management]] page.
BaseX is platform-independent and runs on any system that provides an implementation of [http://www.java.com Java] (JRE).Since <b>Version 8.0</b> of BaseX, Java 7 is mandatory, because it provides better file handling support,and because Oracle stopped public support for older versions.=Startup=
BaseX has been tested on several platforms, including Windows (2000, XP, Vista, 7)First of all, Max OS X (10[http://basex.x),Linux (SuSE xxx, Debian, Ubuntu) and OpenBSD (4.x)org/download get a fresh copy of BaseX] from our homepage.
===Concurrent Operations===BaseX is platform-independent and runs on any system that provides an implementation of the [http://www.java.com Java Runtime Environment (JRE)]:* Since <b>Version 9</b> of BaseX, Java 8 is required.* Since <b>Version 8</b>, Java 7 is required.* Older versions are based on Java 6.
If you plan to perform concurrent read and write operations BaseX has been tested on a single databaseseveral platforms, including Windows (2000, XP, youshould use the client/server architecutre or deploy it as web applicationVista, 7), Mac OS X (10.x),You may safely open the same database in different JVMs Linux (Java virtual machinesSuSE xxx, Debian, Ubuntu) forread-only access, and you won’t encounter any problems when reading from or writingto different databases, but your update operations will be rejected if the databaseto be written to is currently opened by another virtual machineOpenBSD (4.x).
=Standalone= The [[Standalone Mode]] can be used to execute XQuery expressions or run database commands on command line. It can also be used both for scripting and batch processing your XML data. It can be started as follows (get more information on all [[Command-Line Options#Standalone|Startup Options]]): * Run one of the {{Code|[[Start_Scripts#Linux.2FMac:_basex|basex]]}} or {{Code|[[Start Scripts#Windows: basex.bat|basex.bat]]}} scripts.* Execute the following command: {{Code|java -cp BaseX.jar org.basex.BaseX}}* On ''Windows'': Double click on the '''BaseX''' icon. It is important to remember that the standalone mode does ''not'' interact with the [[#Client/Server|Client/Server]] architecture. =Graphical User Interface= The [[GUI]] is the visual interface to the features of BaseX.It can be used to create new databases, perform queries or interactivelyexplore your XML data. It can be started as follows (get more information on all [[Command-Line Options#GUI|Startup Options]]): * Double click on the {{Code|BaseX.jar}} file.* Run one of the {{Code|[[Start_Scripts#Linux.2FMac:_basex|basexgui]]}} or {{Code|[[Start Scripts#Windows: basex.bat|basexgui.bat]]}} scripts.* Execute the following command: {{Code|java -cp BaseX.jar org.basex.BaseXGUI}}* On ''Windows'': Double click on the '''BaseX GUI''' icon.* For [[Maven]] users: type in {{Code|mvn exec:java}} in the main directory of the {{Code|basex}} project. Note that the GUI does ''not'' interact with the client/server architecture. =Client/Server= ==Server== The [[Database Server]] comes into play if BaseX is to be used bymore than one user (client). It handles concurrent [[Transaction_Management|read and write transactions]],provides [[User Management|user management]] and [[Logging|logs all user interactions]]. By default, the server listens to the port {{Code|1984}}.There distributions are several ways of starting and stopping the server(get more information on all [[Command-Line Options#Server|Startup Options]]): * Run one of the {{Code|[[Start_Scripts#Linux.2FMac:_basex|basexserver]]}} or {{Code|[[Start Scripts#Windows: basex.bat|basexserver.bat]]}} scripts. Add the {{Code|stop}} keyword to gracefully shut down the server.* Execute the following command: {{Code|java -cp BaseX.jar org.basex.BaseXServer}}. Again, the {{Code|stop}} keyword will ensure a graceful shutdown.* On ''Windows''available: Double click on the '''BaseX Server''' icon, which will also start the [[#HTTP Server|HTTP Server]], or the '''BaseX Server (stop)''' icon. Pressing {{Code|Ctrl+c}} will close all connections and databases and shut down the server process. ==Client==
The [[Database Server|BaseX Client]] interface can be used to sendcommands and queries to the server instance on command line.==Core Package==
The '''Core Package''' is a very compact JAR file. It can be started as follows(get more information on all [[Command-Line Options#Client|Startup Options]]):contains the BaseX database management system, the XQuery processor, the client/server architecture, and the graphical user interface. It runs without additional libraries.
* Run one of the {{Code|[[Start_Scripts#Linux.2FMac:_basex|basexclient]]}} or {{Code|[[Start Scripts#Windows: basex.bat|basexclient.bat]]}} scripts.* Execute the following command: {{Code|java -cp BaseX.jar org.basex.BaseXClient}}* On ''Windows'': Double click on the '''BaseX Client''' icon.==Full Distributions==
The default {{Code|admin}} user can be used to connect to In addition, the server: <br/>* <b>Username:</b> {{Code|admin}}* <b>Password:</b> {{Code|admin}}The password should be changed with '''ZIP Package''' and the {{Code|'''Windows Installer''' contain extra libraries for RESTXQ web applications and other advanced features, [[Commands#PASSWORD|PASSWORDStart Scripts]]}} command after the first login, and BaseX's browser-based database administration interface ([[DBA]]).<br/>
We provide additional clients in various [[Clients|programming languages]].After BaseX has been unzipped or installed, the following directories will be available:
=HTTP Server=* {{Code|bin/}}: Start scripts (Windows, Linux).* {{Code|data/}}: Database directory. See [[Configuration]] for more details.* {{Code|etc/}}: Example data: XML sample, [[Catalog Resolver|catalog and DTD files]].* {{Code|lib/}}: Extra libraries (Jetty, Tagsoup, …).* {{Code|lib/custom/}}: Directory, in which additional JAR files can be placed (such as the Saxon library).* {{Code|repo/}}: [[Repository]] for external XQuery modules (the [http://www.xqueryfunctions.com FunctX] library is included as example).* {{Code|src/}}: Directory for your XQuery scripts and other source data.* {{Code|webapp/}}: [[Web Application]] directory: home of the RESTXQ web application, REST scripts, and [[DBA]].
With the HTTP Server, If BaseX can be used as [[Web Application]].It provides access to is started via the [[REST]], [[RESTXQ]] and [[WebDAV]] services.An instance of start scripts or the [http://jetty.codehaus.org/jetty/ Jetty Web Server] will be createdWindows icons,which by default listens to all JAR files in the port {{Code|8984lib}}. Additionally, the BaseX Server directory and its descendant directories willbe started, which is accessible on port {{Code|1984}}added to the classpath.
It If you work with the ZIP distribution, and if you want to make BaseX globally available, you can be started as follows (get more information on all [[Command-Line Options#HTTP Serveradd the {{Code|Startup Options]]):bin}} directory to your PATH environment variable.
* Run one of the {{Code|[[Start_Scripts#Linux.2FMac:_basexhttp|basexhttp]]}} or {{Code|[[Start Scripts#Windows: basexhttp.bat|basexhttp.bat]]}} scripts. Call the script with the {{Code|stop}} keyword to gracefully shut down the server.* On ''Windows'': Double click on the '''BaseX Server''' or '''BaseX Server (stop)''' icon.* BaseX can also be deployed as [[==Web Application#Servlet Container|web servlet]].Archive==
In the first two cases, the command-line output will look similar to the following lines (the JSP warning message [http://stackoverflow.com/questions/3521654/missing-jsp-support-in-jetty-or-confusing-log-message The '''WAR Archive''' can be ignored]):embedded in existing Java web servers.
<pre class="brush:xml">[main] INFO org.eclipse.jetty.server.Server - jetty-8.1.18.v20150929[main] INFO org.eclipse.jetty.webapp.StandardDescriptorProcessor - NO JSP Support for /, did not find org.apache.jasper.servlet.JspServlet[main] INFO org.eclipse.jetty.server.AbstractConnector - Started SelectChannelConnector@0.0.0.0:8984HTTP Server was started (port: 8984).</pre>=Other Distributions==
After thatVarious other distributions are available from the download page, you can e. g. open your browser most of which contain only the core package and navigate to the RESTXQ start page http://localhost:8984, optionally, scripts for starting BaseX.
=Changelog=
Bureaucrats, editor, reviewer, Administrators
13,550

edits

Navigation menu