Changes

Jump to navigation Jump to search
3,024 bytes removed ,  12:15, 15 February 2021
no edit summary
<p>This step by step tutorial shows article belongs to the [[Getting Started]] Guide. It tells you how to run BaseX in client-server mode from a terminal. You can copy & paste the commands to get it running on your machine.After you finished this tutorial, you will be familiar with the basic BaseX commandscommand-line.</p>
=Startup=
==RequirementsServer==Java 1.6 is required to run newer versions of BaseX. If you need help installing Java please visit[http://www.java.com/en/download/help/download_options.xml java.com]. <br/>We assume that you are familiar with a shell at a basic level.
===Download===Download the The database server handles concurrent [http://www.inf.uni-konstanz.de/dbis/basex/download basex.jar[Transaction_Management|read and write transactions]], [[User Management|manages user permissions]] and [[Logging|logs user interactions]]. <br/>We assume that the basex.jar file is located in ''/basex''.It can be started as follows:
===Starting * Run one of the {{Code|basexserver}} or {{Code|basexserver.bat}} scripts. Add the Server==={{Code|stop}} keyword to gracefully shut down the server.*Navigate to If you have installed BaseX on ''Windows'', click on the location of basex.jar '''BaseX HTTP Server (<code>> cd /basex</code>Start).*You can either ''' icon, which will start both the HTTP Server used for [[#Web Application|Web Applications]] and the database server in interaction mode if you add the -i flag. This allows With '''BaseX HTTP Server (Stop)''', you to further interact with can shut down the server during runtime (add databases or users, ...)process.
<code>:> java -cp BaseX.jar org.basex.BaseXServer -i</code> Alternatively By default, the server can be started without listens to the -i flagport {{Code|1984}}. No further administration is possible.<code>: > java -cp BaseX.jar org.basexPressing {{Code|Ctrl+c}} will close all connections and databases and gracefully shut down the server process.BaseXServer</code>
*A Various [[Command-Line_Options#Server|command-line options]] are available to simplify batch processing. The [[Start_Scripts|start script]] can be adjusted for individual purposes (e.g. if the default admin user memory limit is created: <br/>:Username: admin<br/>:Password: admin<br/>too restrictive).
:You can change the password with the [[Commands|PASSWORD]] command. *Alternatively adding the <code>-i</code> flag lets you interact (execute commands, add databases or users) with the server during runtime.<code>:> java -cp BaseX.jar org.basex.BaseXServer -i</code> *Once the server has successfully started you see the following lines:<pre>BaseXServer [Server]Server was started.</pre>==Client==
===Starting the Client===*Open a new terminal window, make sure you Database clients are in the right directory.*Executestarted similarly::<code>> java -cp BaseX.jar org.basex.BaseXClient</code><br/>*If you haven't changed the password with the server, you can login as default user (admin/admin).
==First Operations==* Run one of the {{Code|basexclient}} or {{Code|basexclient.bat}} scripts.To get familiar with * Execute the following command: {{Code|java -cp BaseX we suggest to execute .jar org.basex.BaseXClient}}* If you have installed BaseX on ''Windows'', click on the following basic operations'''BaseX Client''' icon.
===Create a database===To create a database At startup, you need an XML document, e.g. [http://www.w3.org/XML/Binary/2005/03/test-data/Over100K/factbook.xml factbook.xml].<br/>Save this document to the /basex directoryenter your credentials.On The initial passwort of the client terminal run: :<code>> create db factbook factbook.xml</code><br/>''factbook'' - {{Code|admin}} user is {{Code|admin}}; it can be changed with the name of the database <br/>''factbook{{Code|[[Commands#PASSWORD|PASSWORD]]}} command.xml'' - is the xml file, which is used to create the database<br/>
If everything works you see For further details, have a look at the following lines:<pre>Database 'factbook' created in 1950.83 ms.</pre> ;Where is [[Command-Line_Options#Client|command-line options]] and the database stored?It is stored in the BaseXData directory in your home directory.In my case it's in /Users/JohnDoe/BaseXData/factbook[[Start_Scripts|start script]].
=Introduction==Execute a query===To run a query the xquery command is used. After '''xquery''' you can insertany valid xquery you like. <br/>This query returns all the countries in the database.:<code> > xquery //country</code><br/>
If you wish, you can also save your query in The BaseX command-line client provides similar features to the [[Command-Line Client|standalone client]]. The major difference is that all commands will be executed by the BaseX server instance. As a fileconsequence, and run it on basex.:<code>> run paths/pathToQuery/queryURIs to resources need to be resolvable by the server (file contents will not be transfered to the server).txt</code>
===Create an another database / switch between databases===Now we will create an another databaseUsername and password can also be specified as command-line option. You To evaluate commands without entering the console mode, you can get use the xml document from here [http://phobos101.inf.uni<code>-konstanz.dec</basex/demo].:<code>option on the command line: <pre> create db xmark xmark.xmlbasexclient -V -Uadmin -Padmin -c "CREATE DB input <example/code>; XQUERY /"
To set the new database xmark as the context (the active, opened database), use:Database 'input' created in 13.85 ms.:<codeexample/>> open xmarkQuery:</code>
Now you can simply type your xqueryParsing:0.18 msCompiling:<code>0.04 ms> xquery //people/person/nameEvaluating: 0.12 msPrinting: 0.07 ms</code>Total Time: 0.41 ms
If you want to query the factbook database you can access it by explicitly naming it with the docHit(s)-function.: 1 ItemUpdated: 0 ItemsPrinted:<code>10 Bytes > xquery doc("factbook")//countryRead Locking: local [input]</code>Write Locking: none
If you want to set the factbook database as the context, you can use::<code>> open factbook</code> To see which database is opened, use::<code>> show databases</code> ===Close or delete a database===If you want to close the opened database, simply type::<code>> close</code> If you want to delete the xmark database, use::<code>> drop db xmark</code> ===Create a collection==='''What is a collection?'''With BaseX you can group documents into one logical collection.A collection is a database that contains two or more documents.You can put any type of XML documents into the collection, regardlessof their structure. Now we will add the xmark.xml document to the factbook database,and thus create a collection. The collection will keep the name factbook. First make sure factbook is opened::<code>> open factbook</code> Now add the xmark.xml document: :<code>> add xmark.xml</code> ===Delete a document from a collection===Deleting a document from a collection is very easy, just type::<code>> delete xmark.xml</code> N.B. The collection has to be the context i.eQuery "user" executed in 0. the database whichcontains the document has to be opened41 ms===Delete a collection===Deleting a collection is the same as deleting a database.If you want to delete the collection factbook, type::<code>> drop factbook</code> ===Getting information about the server===To see all databases on the server, type::<code>> list</code> To see which database is currently opened, type::<code>> show databases</code> To see the general information of the opened database, type::<code>> info</code> To see the users in BaseX, type::<code>> show users</code> ===Backup and Restore===To backup your database, type::<code>> backup factbook</codepreTo restore your database, type::<code>> restore factbook</code> '''Where is the backup-file stored?'''
The backup-file is stored in the BaseXData directory, which is in your home directory.The file is named factbook-timestamp.zip (db_name-timestamp.zip).To restore the database the file with the newest timestamp is taken.=Language Bindings=
==See also ==[[BaseX Standalone]], [[BaseX GUI]], [[Getting Started Guide]]If you want to communicate with the database server programmatically, we provide clients for various [[Advanced User Portal]][[Category:Beginner]][[Category:ServerClients|programming languages]].
Bureaucrats, editor, reviewer, Administrators
13,550

edits

Navigation menu