Changes

Jump to navigation Jump to search
1,898 bytes removed ,  15:00, 25 July 2022
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 administration of BaseX. Visit the [[Commands|commands section]] for a complete list of database commandscommand-line.
The server/client environment of BaseX offers the following features:* ACID safe transactions, with multiple readers and single writers * User management with global and local permissions * Password authentication via cram-md5 * Logging of server activity=Startup=
This is a step by step tutorial to get BaseX running in client-server mode via terminals. You can copy & paste the commands to get it running on your machine.After the completion of this quick tutorial, you will be familiar with the basic BaseX commands.==Server==
==Startup==See {{Announce|With Version 10, the [[Startup Overview]]default admin password has been removed.}}
==First Operations==To get familiar with BaseX we suggest to execute the following basic operationsThe database server handles concurrent [[Transaction_Management|read and write transactions]], [[User Management|manages user permissions]] and [[Logging|logs user interactions]].It can be started as follows:
===Create a database===* To create a database you need an XML document, eRun one of the {{Code|basexserver}} or {{Code|basexserver.gbat}} scripts. [http://wwwUse {{Code|basexserverstop}} or {{Code|basexserverstop.w3.org/XML/Binary/2005/03/test-data/Over100/factbook.xml factbook.xml]bat}} to gracefully shut down the server.* Save this document to 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 /basex directorydatabase server.* On With '''BaseX HTTP Server (Stop)''', you can shut down the client terminal run: <code>: > create db factbook factbookserver process.xml</code>
: ''factbook'' - is the name of the database <br/>: ''factbookUnless you have already chosen an admin password yet (e.g.xml'' - is , via the xml fileWindows installer or a previous installation), which is used to create you can do so by invoking the database<br/> {{Command|PASSWORD}} command on your terminal:
If everything works you see the following lines:<pre>Database 'factbook' created in 1950.83 msbasexserver -c PASSWORDBaseX [Server]Server was started (port: 1984).Password: _
</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 example, on a mac it's /Users/John, if your name is John.
 
===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 /Users/John/queryBy default, the server listens to the port {{Code|1984}}. Pressing {{Code|Ctrl+c}} will close all connections and databases and gracefully shut down the server process.xq</code>
===Create a new database===Now we will create another databaseVarious [[Command-Line_Options#Server|command-line options]] are available to simplify batch processing. You The [[Start_Scripts|start script]] can find the example document here: [http://phobos101be adjusted for individual purposes (e.infg.uni-konstanz.de/basex/demo]if the default memory limit is too restrictive).
* Create the new database, named 'xmark'.<code>: > create db xmark xmark.xml</code>==Client==
* Set the new database xmark as the contextDatabase clients are started similarly:<code>: > open xmark</code>
* Now you can easily execute queries on your new database:<code>Run one of the {{Code|basexclient}} or {{Code|basexclient.bat}} scripts.* Execute the following command: > xquery //people/person/name{{Code|java -cp BaseX.jar org.basex.BaseXClient}}</code>* If you have installed BaseX on ''Windows'', click on the '''BaseX Client''' icon.
===Switch the database===* You can explicitly query the factbook database with the doc()-funtionAt startup, no matter what the current context isyou need to enter your credentials.<code>: > xquery doc("factbook")//country</code>
* OtherwiseFor further details, to set factbook as have a look at the current context, execute [[Command-Line_Options#Client|command-line options]] and the following:<code>: > open factbook</code>[[Start_Scripts|start script]].
* To list the current context, type:<code>: > show databases</code>=Introduction=
That yields The BaseX command-line client provides similar features to the following lines:[[Command-Line Client|standalone client]]. The major difference is that all commands will be executed by the BaseX server instance. As a consequence, paths/URIs to resources need to be resolvable by the server (file contents will not be transfered to the server).
Username and password can also be specified as command-line option. To evaluate commands without entering the console mode, you can use the <code>-c</code> option on the command line:
<pre>
1 opened database(s):basexclient - factbook (1x)V -Uadmin -P... -c "CREATE DB input <example/pre>; XQUERY /"
===Close or delete a database===* To [[Commands|close]] the current context database type: Database 'input' created in 13.85 ms.<codeexample/>Query: > close</code>
* Use the [[Commands|drop]] command to delete the xmark databaseParsing:0.18 ms<code>Compiling: 0.04 msEvaluating: 0.12 msPrinting: > drop db xmark0.07 ms</code>Total Time: 0.41 ms
===Create a collection===Hit(s): 1 Item'''What is a collection?'''Updated: 0 ItemsWith BaseX you can group documents into one logical collection. A collection is a database that contains two or more documents. Collections accept any type of XML documents, regardless of their structure.Printed: 10 BytesRead Locking: local [input]Write Locking: none
Let's add the xmark.xml document to the factbook database to create a collection. The name of the original factbook database remains. * 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:<code>: > delete xmark.xml</code> Make sure the collection which contains the xmark.xml document is opened. ===Delete a collection===Deleting a collection is the same as deleting a database. * To delete the collection factbook, type:<code>: > drop factbook</code> ===Get information about the server===Several commands help to explore the state of a serverQuery "user" executed in 0. For a complete list visit the [[Commands|commands section]]41 ms* To see all databases on the server, type:<code>: > list</code> * To see which database is currently opened:<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</codepre>
To restore your database, type::<code>> restore factbook</code>=Language Bindings=
'''Where is If you want to communicate with the backup-file stored?'''database server programmatically, we provide clients for various [[Clients|programming languages]].
The backup-file is stored in the database directory.The file is named <code>factbook-timestamp.zip</code> (<code>db_name-timestamp.zip</code>).To restore the database the file with the newest timestamp is taken.=Changelog=
==See also ==;Version 10.0[[Standalone Tutorial]], [[GUI Tutorial]], [[Getting Started]], [[Advanced User Portal]][[Category:Beginner]][[Category* Updated:Server]]The default admin password has been removed.
Bureaucrats, editor, reviewer, Administrators
13,550

edits

Navigation menu