mirror of https://gitee.com/bigwinds/arangodb
124 lines
5.2 KiB
Plaintext
124 lines
5.2 KiB
Plaintext
!CHAPTER Getting started
|
|
|
|
!SECTION Overview
|
|
|
|
This beginner's guide will make you familiar with ArangoDB.
|
|
We will cover how to
|
|
|
|
- install and run a local ArangoDB server
|
|
- use the web interface to interact with it
|
|
- store example data in the database
|
|
- query the database to retrieve the data again
|
|
- edit and remove existing data
|
|
|
|
!SUBSECTION Installation
|
|
|
|
Head to [arangodb.com/download](https://www.arangodb.com/download/),
|
|
select your operating system and download ArangoDB. You may also follow
|
|
the instructions on how to install with a package manager, if available.
|
|
|
|
If you installed a binary package under Linux, the server is
|
|
automatically started.
|
|
|
|
If you installed ArangoDB using homebrew under MacOS X, start the
|
|
server by running `/usr/local/sbin/arangod`.
|
|
|
|
If you installed ArangoDB under Windows as a service, the server is
|
|
automatically started. Otherwise, run the `arangod.exe` located in the
|
|
installation folder's `bin` directory. You may have to run it as administrator
|
|
to grant it write permissions to `C:\Program Files`.
|
|
|
|
For more in-depth information on how to install ArangoDB, as well as available
|
|
startup parameters, installation in a cluster and so on, see
|
|
[Installing](Installing/README.md).
|
|
|
|
!SUBSECTION Securing the installation
|
|
|
|
The default installation contains one database *_system* and a user
|
|
named *root*.
|
|
|
|
Debian based packages and the Windows installer will ask for a
|
|
password during the installation process. For all other installation
|
|
packages you need to execute
|
|
|
|
```
|
|
shell> arango-secure-installation
|
|
```
|
|
|
|
This will asked for a root password and sets this password.
|
|
|
|
!SUBSECTION Web interface
|
|
|
|
The server itself (*arangod*) speaks HTTP / REST, but you can use the
|
|
graphical web interface to keep it simple. There's also
|
|
[arangosh](../Administration/Arangosh/README.md), a synchronous shell
|
|
for interaction with the server. If you're a developer, you might
|
|
prefer the shell over the GUI. It does not provide features like
|
|
syntax highlighting however.
|
|
|
|
When you start using ArangoDB in your project, you will likely use an official
|
|
or community-made driver written in the same language as your project. Drivers
|
|
implement a programming interface that should feel natural for that programming
|
|
language, and do all the talking to the server. Therefore, you can most certainly
|
|
ignore the HTTP API unless you want to write a driver yourself or explicitly
|
|
want to use the raw interface.
|
|
|
|
To get familiar with the database system you can even put drivers aside and
|
|
use the web interface (code name *Aardvark*) for basic interaction.
|
|
The web interface will become available shortly after you started `arangod`.
|
|
You can access it in your browser at http://localhost:8529 - if not, please
|
|
see [Troubleshooting](../Troubleshooting/README.md).
|
|
|
|
By default, authentication is enabled. The default user is
|
|
`root`. Depending on the installation method used, the installation
|
|
process either prompted for the root password or the default root
|
|
password is empty (see [above](#securing-the-installation)).
|
|
|
|

|
|
|
|
Next you will be asked which database to use. Every server instance comes with
|
|
a `_system` database. Select this database to continue.
|
|
|
|
You should then be presented the dashboard with server statistics like this:
|
|
|
|

|
|
|
|
For a more detailed description of the interface, see [Web Interface](WebInterface/README.md).
|
|
|
|
!SUBSECTION Databases, collections and documents
|
|
|
|
Databases are sets of collections. Collections store records, which are referred
|
|
to as documents. Collections are the equivalent of tables in RDBMS, and
|
|
documents can be thought of as rows in a table. The difference is that you don't
|
|
define what columns (or rather attribures) there will be in advance. Every
|
|
document in any collection can have arbitrary attribute keys and
|
|
values. Documents in a single collection will likely have a similar structure in
|
|
practice however, but the database system itself does not require it and will
|
|
operate stable and fast no matter how your data looks like.
|
|
|
|
!SECTION ArangoDB programs
|
|
|
|
The ArangoDB package comes with the following programs:
|
|
- `arangod`: The [ArangoDB database daemon](../Administration/Configuration/Arangod.md).
|
|
This server program is intended to run as a daemon process and to serve the
|
|
various clients connection to the server via TCP / HTTP.
|
|
|
|
- `arangosh`: The [ArangoDB shell](../Administration/Arangosh/README.md).
|
|
A client that implements a read-eval-print loop (REPL) and provides functions
|
|
to access and administrate the ArangoDB server.
|
|
|
|
- `arangoimp`: A [bulk importer](../Administration/Arangoimp.md) for the
|
|
ArangoDB server. It supports JSON and CSV.
|
|
|
|
- `arangodump`: A tool to [create backups](../Administration/Arangodump.md)
|
|
of an ArangoDB database in JSON format.
|
|
|
|
- `arangorestore`: A tool to [load data of a backup](../Administration/Arangorestore.md)
|
|
back into an ArangoDB database.
|
|
|
|
- `arango-dfdb`: A [datafile debugger](../Troubleshooting/DatafileDebugger.md) for
|
|
ArangoDB. It is primarily intended to be used during development of ArangoDB.
|
|
|
|
- `arangobench`: A [benchmark and test tool](../Troubleshooting/Arangobench.md).
|
|
It can be used for performance and server function testing.
|