oar-database(1)

database - manage OAR database.

Section 1 oar-server bookworm source

Description

oar-database

NAME

oar-database - manage OAR database.

SYNOPSIS

oar-database --create [ OPTIONS ]

oar-database --drop [ OPTIONS ]

oar-database --upgrade [ OPTIONS ]

oar-database --reset [ OPTIONS ]

oar-database --check [ OPTIONS ]

DESCRIPTION

OAR uses a database for it’s persitent data either using the MySQL or PostgreSQL backend (see oar.conf). oar-database is provided to manage that database.

ACTIONS

--create

Create an OAR database: inject schema and default data and create users/roles.

--drop

Drop an existing OAR database and associated users/roles.

--upgrade

Upgrade an existing OAR database.

--reset

Reset an existing OAR database to the state of the fresh new one.

--check

Check that OAR database is accessible and up to date (schema version).

OPTIONS

General parameters

--conf= OAR_CONF_FILE

Define the OAR configuration file to use. By default /etc/oar/oar.conf is used. If this file doesn’t exist, the default parameters for each value are used.

--update-conf

The database parameters given in the command line are written to the OAR_CONF_FILE

-f,--force-sql

Force to continue the execution even if a SQL command fails

-y,--force-yes

Force oar-database to continue without prompt even if it could be harmful.

Database backend parameters

These parameters are only required by the --create and --drop actions.
--db-is-local

PostgreSQL: use local admin account to execute admin commands. MySQL: use the unix socket connection to execute admin commands.

--db-admin-user= DB_ADMIN_USER

Set database backend admin username.

--db-admin-pass= DB_ADMIN_PASS

Set database backend admin password.

OAR database parameters

If not specified, OAR database parameters are taken from OAR_CONF_FILE . Please prefer setting the configurations in that file instead of using these options.
--db-type
= DB_TYPE

Database backend to use, mysql or Pg (for PostgreSQL).

--db-user= DB_USER

Set OAR username to access the database. Override the one set in OAR_CONF_FILE.

--db-pass= DB_PASS

Set OAR user password to access the database. Override the one set in OAR_CONF_FILE.

--db-host= DB_HOST

Set the database backend hostname. Override the one set in OAR_CONF_FILE.

--db-port= DB_PORT

Set the database backend TCP port. Override the one set in OAR_CONF_FILE.

--db-name= DB_NAME

Set OAR database name. Override the one set in OAR_CONF_FILE.

--db-ro-user= DB_RO_USER

Set OAR username for read-only access the database. Override the one set in OAR_CONF_FILE.

--db-ro-pass= DB_RO_PASS

Set OAR user password for read-only access the database. Override the one set in OAR_CONF_FILE.

-d,--debug

Activate the display of debugging information.

-h,--help

Display this help.

EXAMPLES

MySQL

First you need to specify the database parameters in /etc/oar/oar.conf. These parameters will be used by oar-database.

To create a new database (assuming that the MySQL root password is PASS ):

oar-database --create --db-admin-user root --db-admin-pass PASS

Or if the MySQL server is local and accessible using the unix socket:

oar-database --create --db-is-local

To upgrade an existing database:

oar-database --upgrade

PostgreSQL

First you need to specify the database parameters in /etc/oar/oar.conf. These parameters will be used by oar-database. If your PostgreSQL database is on the local system, you can use the --db-is-local option which will use PostgreSQL unix account (needs root privileges).

To create a new database:

oar-database --create --db-is-local

To upgrade an existing database:

oar-database --upgrade

Advanced usages

To make some tests or to administrate several databases, you can also specify the sql parameters on the command line. For example:

oar-database --create --db-type=Pg --db-host=HOST \
--db-user=oar --db-pass=PASS \
--db-admin-user=ADMIN_USER --db-admin-pass=ADMIN_PASS

will create the oar database and the oar user on the postgresql system hosted by HOST . The user ADMIN_USER must have the right to create new databases and new roles on this system.

FILES

/usr/lib/oar/database/mysql_structure.sql,
/usr/lib/oar/database/pg_structure.sql

SQL instructions for creating the structure of the oar database.

/usr/lib/oar/database/mysql_default_admission_rules.sql,
/usr/lib/oar/database/pg_default_admission_rules.sql

SQL instructions for inserting the default admission rules in the oar database.

/usr/lib/oar/database/default_data.sql

SQL instructions for inserting the default data in the oar database.

/usr/lib/oar/database/mysql_reset_structure.sql,
/usr/lib/oar/database/pg_reset_structure.sql

SQL instruction for emptying an existing oar database.

/usr/lib/oar/database/mysql_structure_upgrade_*.sql,
/usr/lib/oar/database/pg_structure_upgrade_*.sql

SQL instructions for upgrading an existing database.

COPYRIGHTS

Copyright 2003-2018 Laboratoire d'Informatique de Grenoble (http://www.liglab.fr). This software is licensed under the GNU General Public License Version 2 or above. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.