# xSQL Configuration Samples

> As explained in the xSQL Startup Options page, xSQL can be configured to run in a variety of modes using an external configuration file loaded at startup with a command like the following:

>         xsql -c xsql.cfg

> The xSQL SDK samples demonstrate a variety of different possibilities. Please use the links in the table below to view instructions for running individual samples:

> im | Demonstrates the simplest possible configuration involving an in-memory (IM) database with a static dictionary defined in the `xsql.cfg` file
> disk | Demonstrates a simple persistent database server
> raid | Demonstrates a persistent database server using a `RAID-0` disk system for storage. The database is stored in files, which may be located on different physical devices
> multifile | Demonstrates a persistent database server using several disk files. The server will insert data in the first file until its limit is reached, then to a second file
> HA | Demonstrates a High Availability configuration. It includes master and replica nodes, both using an in-memory database. A static schema is declared in the config files
> cluster | Demonstrates a simple cluster configuration with 3 nodes using in-memory databases. The static schema is defined in the config files
> TL | Demonstrates an in-memory database with eXtremeDB Transaction Logging (TL) enabled. The log is written to a file; it is possible to make snapshots of the current database state
> perfmon | Demonstrates a simple persistent database with the performance monitor enabled
> shards | Demonstrates a simple distributed in-memory database working with 2 shards; each shard holds only part of the database