# OrientDB

OrientDB es una base de datos NoSQL que soporta documentos y grafos y esta desarrollada en Java.

**Sitio Oficial:**

<http://www.orientdb.com>

## Instalación

**Pasos:**

* Realizar la descarga desde

[**http://www.orientechnologies.com/download/**](http://www.orientechnologies.com/download/)

Seleccionar la distribución para su sistema operativo

![](/files/-Lc1WuHE7UKReNUeL9Y9)

Se descarga el archivo de la versión community descomprimirlo y renombrarlo como orientdb

**Darle permiso de ejecución**

cd orientdb

sudo chmod 755 bin/\*.sh

sudo chmod -R 777 config

**Darle permisos de escritura al directorio log**

sudo chmod 777 log

**Establecer el Usuario y Password**

sudo gedit /orientdb/config/orientdb-server-config.xml

**ahora en \<users>**

\<user name="avbravo" password="mypassword" resources="\*"/>

![](/files/-Lc1WuHGlzW6Yr6Z6Pi4)

**Ejecutar el server**

cd /opt/orientdb/bin

./server.sh

Dependiendo de la configuración se necesitaría permisos de super usuario

sudo ./server.sh

![](/files/-Lc1WuHIMhjuAdz2rduj)

**Se habilita el puerto 2424 para conexiones binarias el puerto 2480 para http.**

Para detenerlo presionar CTRL + C

**Si editamos el archivo orientdb-server-config.xml**

sudo gedit /orientdb/config/orientdb-server-config.xml

**observamos que se crearon dos usuarios adicionales:**

usuario: root y guest

![](/files/-Lc1WuHKGk5ZOobEsMPG)

**Entrar al navegador en el puerto 2480**

<http://localhost:2480/>

![](/files/-Lc1WuHMhre4NqjnU_-3)

**Cuando se crea una base de datos por defecto se crean tres usuarios**

| **Usuario** | **Password** | **Acceso**                            |
| ----------- | ------------ | ------------------------------------- |
| **admin**   | **admin**    | **ilimitado**                         |
| **reader**  | **reader**   | **solo lectura**                      |
| **writer**  | **writer**   | **creacion , actualizacion, lectura** |

**Entramos en la sección**&#x20;

Database access, con nuestro usuario y password y presionamos el botón Connect

![](/files/-Lc1WuHOp9fhv160JS6z)

**se muestra el panel**

![](/files/-Lc1WuHQV0NG4XYbDkuM)

**Dar clic en Schema**

![](/files/-Lc1WuHSm3GlYs99uj09)

**Ubicarse en OUser y dar clic en Query All**

![](/files/-Lc1WuHUIgdZ6KM0GLNS)

**Muestra los registros**

Incluso podemos especificar nuestra propia sintaxis sql para las operaciones

![](/files/-Lc1WuHWqQ9CaocqptJw)

## Consola OrientDB

\
**Ejecutar:**&#x20;

sudo ./console.sh

o ejecutarlo

./console.sh

![](/files/-Lc1WuHYzBeaTg17ujdR)

## **Conectarse el server**

sintaxis: connect remote: servidor usuario password

\
**Ejecutar**

orientdb>connect remote:localhost avbravo mypassword

**Se envía el mensaje en consola**

![](/files/-Lc1WuH_Xq7De9EGRXuk)

## **Listar Bases Datos**

Listamos las bases de datos mediante el comando list databases

![](/files/-Lc1WuHbMrYDGkMCF0Yk)

## **Abrir una base de datos**

Por defecto se tiene un usuario admin con password admin para cada base de datos

orientdb > connect remote:localhost/GratefulDeadConcerts admin admin

![](/files/-Lc1WuHdOrzj8M41wsiB)

Un documento está compuesto por atributos y pueden pertenecer a una clase.

## **Ejecutar comando: classes**

Muestra todas las clases de la base de datos, con información

![](/files/-Lc1WuHfTfl7aQ66ABxl)

## **Crear una clase nueva**

create class Student

![](/files/-Lc1WuHhJxbtGty9jCap)

### **Crear los atributos**

orientdb> create property Student.name string

Property created successfully with id=1

orientdb> create property Student.surname string

Property created successfully with id=2

orientdb> create property Student.birthDate date

Property created successfully with id=3

**Para mostrar la estructura ejecutar el comando info class**

info class Student

![](/files/-Lc1WuHjVr2WKVXHZ1GB)

## **Crear restricciones a nivel de campo**

**Ejecutar alter property**

**alter property Student.name min 3**

## **Ver todos los registros en una clase**

**Se utiliza el comando browse Class**

**Ejecutar:**

browse class OUser

![](/files/-Lc1WuHlN0qtKM33AaPr)

**Si observamos hay un número de identificación del registro en la primera columna.**

## **Mostrar un registro**

**Usar el comando display record número registro**

**Ejecutar**

display record 0

![](/files/-Lc1WuHne4IQWTCYFowC)

Enlaces

{% embed url="<http://orientdb.com/docs/3.0.x/>" %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://avbravo-2.gitbook.io/jmoordb/capitulo-1/introduccion/orientdb.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
