Connecting to a Remote Database
This guide show you how to set up a PostgreSQL database and connect your Chainlink node to it. Alternatively, you can follow the guides below:
Obtain information about your database
In order to connect to a remote database, you must obtain information about the database and the server. Note the following database details so you can use them to configure your Chainlink node later:
- Server hostname or IP
- Port
- Username
- Password
- Database name
The user must be the owner of the desired database. On first run, the migrations will create the tables necessary for the Chainlink node.
Set Your DATABASE_URL environment variable
Below is an example for setting the DATABASE_URL environment variable for your Chainlink Node's .env configuration file:
DATABASE_URL=postgresql://[USERNAME]:[PASSWORD]@[SERVER]:[PORT]/[DATABASE]?sslmode=[SSL_MODE]
Change the following placeholders to their real values:
[USERNAME]: The username for the database owner account.[PASSWORD]: The password for the database owner account.[SERVER]: The hostname or IP address of the database server.[PORT]: The port that the database is listening on. The default port for PostgreSQL is5432.[DATABASE]: The name of the database to use for the Chainlink node.[SSL_MODE]: If you are testing on a database that does not have SSL enabled, you can specifydisableso that you don't need to go through the process of configuring SSL on your database. On a production node, set this value torequireorverify-full. This requires an encrypted connection between your Chainlink node and the database. See the PostgreSQL documentation to learn about the available SSL modes.