Currently, MODX fully supports two database engines, MySQL and its forks and clones, and the Microsoft SQL Server. Thanks to the MODX being designed using xPDO, a comprehensive ORB system based on PHP's PDO database abstraction library, more can and will be added as time goes on.
There are a few things you need to know about your database before installing MODX.
- What is the hostname for your database? Usually, the database engine is on the same server (or linked to the same server) as your web server, so the default "localhost" will work. There are platforms where the databases are served from servers external to the web servers, though, and in these cases you'll need to know the URL, IP address, or whatever address your web server is configured to use to connect to the database server.
- You need a username and password for connecting to this database server. Your hosting may provide you with a database user, or you may need to create one using your hosting control panel.
- The character set and collation for the database is probably going to be latin-1 by default. You'll most likely want to change this to utf8, especially if you will be using more than one language. The character set determines what characters will be used to represent the letters in your text, and the collation determines how text is ordered and searched.
- Do you already have a database provided for you to use? If not, does your database user have permissions to create a new database? If not, then you'll need to create a database, and make sure the database user is connected to the database.
- You need to know the name of your database, or give it a name if you are able to let MODX create it.
- Each table in the MODX database is by default given a prefix of modx_. This allows you to use the same database for other applications, without running the risk of having tables with the same name. It's even possible to have more than one instance of MODX installed using the same database, as long as you specify different table prefixes when installing, for example you could have evo_ and revo_ as prefixes if you wanted to install both versions of MODX.