.. _rhodecode-database-ref: Supported Databases =================== .. important:: We do not recommend using SQLite in a production environment of more than 5 people. It is not suited for higher usage and mayb cause problems. |RCE| supports the following databases. The recommended encoding is UTF-8. .. only:: latex * :ref:`install-sqlite-database` * :ref:`install-mysql-database` * :ref:`install-postgresql-database` .. toctree:: using-mysql using-postgresql using-sqllite Database Overview ----------------- Prior to installing |RCE| you should install and set up your database. This means carrying out the following tasks: 1. Install the database software of your choice. 2. Using the relevant instructions, create a user on that database to use with |RCE|. 3. Create a database, granting that user read/write access. 4. During |RCE| installation you will be prompted for these user credentials, enter them where appropriate. These credentials will be what |RCE| uses to read/write from the database tables. Version Differences ------------------- |RCE| releases 2(Major).x(Minor).x(Bug Fix) and 3.x.x use different database schemas. Therefore, if you wish to run multiple instances using one database, you can only do so using the same Minor Release numbered versions. Though Bug Fix updates rarely have a database change, it is recommended to use identical |RCE| version numbers for multi-instance setups. You can use the same database server to run multiple databases for differing version numbers, but you will need separate databases for each |RCE| version on that server. You can specify the database during installation, use the following example to configure the correct one. .. code-block:: bash Database type - [s]qlite, [m]ysql, [p]ostresql: PostgreSQL selected Database host [127.0.0.1]: Database port [5432]: Database username: rhodecode Database password: somepassword # Specify the database you with to use on that server # for the RCE instance you are installing Database name: example-db-name-for-2xx # The 2xx version database Database name: example-db-name-for-3xx # The 3xx version database