> ## Documentation Index
> Fetch the complete documentation index at: https://docs.abbyy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Crear una base de datos manualmente

> Cree una base de datos de FlexiCapture manualmente: cree una base de datos vacía, ejecute los scripts Description y DBInitFill, asigne un GUID y agregue el primer administrador.

Puede crear una base de datos de FlexiCapture manualmente en lugar de hacerlo desde la Consola de administración y supervisión. Primero cree una base de datos vacía y luego inicialícela y configúrela.

<div id="create-a-blank-database">
  ## Crear una base de datos vacía
</div>

Para Microsoft SQL Server u Oracle, cree una base de datos vacía con sus herramientas habituales de administración de bases de datos y luego continúe con [Inicializar y configurar la base de datos](#initialize-and-configure-the-database).

Para PostgreSQL, cree la base de datos desde el cliente `psql`:

1. Conéctese al servidor PostgreSQL con una cuenta que tenga privilegios `CREATEDB`+`CREATEROLE` o `SUPERUSER`:

   ```bash theme={null}
   psql -h srvname -U postgres
   ```

2. Cree una cuenta de usuario con una contraseña predefinida y permiso para iniciar sesión en el servidor (aquí y en los pasos siguientes, `rolename` es su nombre de usuario):

   ```sql theme={null}
   CREATE ROLE rolename WITH ENCRYPTED PASSWORD 'rolepwd' LOGIN;
   ```

3. Cree una nueva base de datos (aquí y en los pasos siguientes, `dbname` es el nombre de la base de datos):

   ```sql theme={null}
   CREATE DATABASE dbname;
   ```

4. Conceda al usuario permisos para conectarse a la base de datos y crear tablas temporales:

   ```sql theme={null}
   GRANT CONNECT, TEMPORARY ON DATABASE dbname TO rolename;
   ```

5. Dé prioridad al esquema fc sobre el esquema public:

   ```sql theme={null}
   ALTER DATABASE dbname SET search_path = "$user", fc, public;
   ```

6. Conéctese a la base de datos recién creada:

   ```sql theme={null}
   \c dbname
   ```

7. Cree un esquema fc y especifique como propietario al usuario que creó:

   ```sql theme={null}
   CREATE SCHEMA fc AUTHORIZATION rolename;
   ```

8. Cree una extensión ltree en la base de datos:

   ```sql theme={null}
   CREATE EXTENSION IF NOT EXISTS ltree;
   ```

9. Desconéctese del servidor PostgreSQL.

<Warning>
  Realice todas las operaciones posteriores en la base de datos PostgreSQL con esta cuenta de usuario.
</Warning>

<div id="initialize-and-configure-the-database">
  ## Inicialice y configure la base de datos
</div>

Una vez creada la base de datos vacía, complete los pasos siguientes. Si hay diferencias entre los motores de base de datos, ejecute la variante correspondiente a su base de datos.

1. Ejecute el script de descripción del esquema para su base de datos:

   * Microsoft SQL Server: `Description.sql`
   * Oracle: `Description_Oracle.sql`
   * PostgreSQL: `Description_PostgreSQL.sql`

   De forma predeterminada, estos scripts se encuentran en la carpeta `C:\inetpub\wwwroot\FlexiCapture12\Server` del equipo donde está instalado el Servidor de aplicaciones.

2. Ejecute el script de inicialización de datos para su base de datos:

   * Microsoft SQL Server: `DBInitFill.sql`
   * Oracle: `DBInitFill_Oracle.sql`
   * PostgreSQL: `DBInitFill_PostgreSQL.sql`

3. Proporcione un identificador único para la base de datos.

   Microsoft SQL Server:

   ```sql theme={null}
   INSERT INTO dbo.Settings( Name, Value, ProjectId, BatchTypeId, UserId, Workstation, RoleId, ProcessingStage) VALUES ('DatabaseGUID', NEWID(), NULL, NULL, NULL, NULL, NULL, NULL )
   ```

   PostgreSQL:

   ```sql theme={null}
   INSERT INTO Settings (Name, Value)
   VALUES ('DatabaseGUID', upper(md5(clock_timestamp()::text)::uuid::text));
   ```

4. Agregue el primer usuario.

   Microsoft SQL Server:

   ```sql theme={null}
   INSERT INTO principal (Name, FullName, EMail, PasswordHash, PasswordReset) values (N'Login', N'FullName', N'email', '', 0)
   ```

   PostgreSQL:

   ```sql theme={null}
   INSERT INTO Principal (Name, FullName, Email, PasswordHash, PasswordReset) values ('Login', 'FullName', 'email', '', false);
   ```

   Donde:

   * **Login** — El nombre de inicio de sesión que usará el usuario. Especifique el nombre de inicio de sesión del usuario de Windows que abrirá la Consola de administración y supervisión para conectarse a la base de datos.
   * **FullName** — El nombre completo del usuario, tal como aparece en su perfil.
   * **Email** — La dirección de correo electrónico del usuario.

5. Especifique los roles de Administrador del sistema para el nuevo usuario.

   Microsoft SQL Server:

   ```sql theme={null}
   INSERT INTO principalpermission (PrincipalId, RoleType, IsAllowed) values (1, 10, 1);
   ```

   PostgreSQL:

   ```sql theme={null}
   INSERT INTO principalpermission (PrincipalId, RoleType, IsAllowed) values (1, 10, true);
   ```

6. Conéctese a la base de datos recién creada mediante la Consola de administración y supervisión.

Para obtener más información sobre los permisos que necesita una cuenta para crear y configurar una base de datos, consulte [Crear una base de datos](/es/flexi-capture/admin-guide/create-database).
