Changes

Jump to navigation Jump to search
2,933 bytes removed ,  12:15, 15 February 2021
no edit summary
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.
=Startup=Requirements==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]. We assume that you are familiar with a shell at a basic level.
==Server=Download===Download the [http://www.inf.uni-konstanz.de/dbis/basex/download basex.jar]. In scope of this tutorial we assume that the basex.jar file is located in ''/basex''.
===Starting the Server===*Navigate to the location of basex.jar (<code>> cd /basex</code>).*You can either start the The database server in interaction mode if you add the -i flag. This allows you to further interact with the server during runtime (add databases or usershandles concurrent [[Transaction_Management|read and write transactions]], [[User Management|manages user permissions]] and [[Logging|logs user interactions]]...).It can be started as follows:
<code>:> java -cp BaseX* Run one of the {{Code|basexserver}} or {{Code|basexserver.jar orgbat}} scripts.basexAdd the {{Code|stop}} keyword to gracefully shut down the server.BaseXServer -i</code> :Or * If you have installed BaseX on ''Windows'', click on the '''BaseX HTTP Server (Start)''' icon, which will start both the HTTP Server used for [[#Web Application|Web Applications]] and the database server can be started alternatively without the -i flag. NoteWith '''BaseX HTTP Server (Stop)''', that you have to restart can shut down the server to execute further commands from this shellprocess.<code>: > java -cp BaseX.jar org.basex.BaseXServer</code>
*A By default admin user is created (you can change , the password with server listens to the [[Commandsport {{Code|1984}}. Pressing {{Code|PASSWORD]] command)::Username: admin:Password: admin *Once Ctrl+c}} will close all connections and databases and gracefully shut down the server has successfully started you see the following lines:<pre>BaseXServer [Server]Server was startedprocess.</pre>
===Starting the Client===*Open a new terminal window, make sure you Various [[Command-Line_Options#Server|command-line options]] are in the right directory (/basex)available to simplify batch processing.*Execute the following to The [[Start_Scripts|start the client:<code>:> java -cp BaseXscript]] can be adjusted for individual purposes (e.jar orgg.basexif the default memory limit is too restrictive).BaseXClient</code>
*If you haven't changed the password with the server, you can login as default user (admin/admin).==Client==
==First Operations==To get familiar with BaseX we suggest to execute the following basic operations.Database clients are started similarly:
===Create a database===* To create a database you need an XML document, eRun one of the {{Code|basexclient}} or {{Code|basexclient.gbat}} scripts. [http* Execute the following command://www.w3{{Code|java -cp BaseX.jar org/XML/Binary/2005/03/test-data/Over100/factbook.xml factbook.xml].* Save this document to the /basex directory.BaseXClient}}* On If you have installed BaseX on ''Windows'', click on the client terminal run: <code>: > create db factbook factbook'''BaseX Client''' icon.xml</code>
: ''factbook'' - is the name At startup, you need to enter your credentials. The initial passwort of the database <br/>: ''factbook.xml'' - {{Code|admin}} user is {{Code|admin}}; it can be changed with the xml file, which is used to create the database<br/> {{Code|[[Commands#PASSWORD|PASSWORD]]}} command.
If everything works you see the following lines:<pre>Database 'factbook' created in 1950.83 ms.</pre> ;Where is the database stored?Databases are stored in the BaseXData directory which is located in your home folder. Depending on your operating system the location of your home folder varies. For examplefurther details, on have a mac it's /Users/John, if your name is Johnlook at the [[Command-Line_Options#Client|command-line options]] and the [[Start_Scripts|start script]].
=Introduction==Execute a query===The [[Commands|xquery]] command lets you run a query.* For example, this query returns all country nodes in the currently opened database.<code>: > xquery //country</code>
* You can also run queries in files:<code>: > run 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 consequence, paths/Users/John/queryURIs to resources need to be resolvable by the server (file contents will not be transfered to the server).xq</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