2 years ago
I am using the unit:php8.2 docker image to deploy a Laravel application. I used MYSQL_PRIVATE_URL variable to connect to the database but I get the error "SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo for mysql.railway.internal failed: nodename nor servname provided, or not known"
24 Replies
2 years ago
is that an alpine based image?
2 years ago
please add a 3 second sleep / delay before you connect to the database
I tried it but it still has the same problem, in fact, minutes after the deployment I tried to execute:
railway run sh -c "ping mysql.railway.internal"
but I get:
"ping: cannot resolve mysql.railway.internal: Unknown host"
2 years ago
railway run runs the given command locally
2 years ago
please show me how you are implementing the sleep
2 years ago
looks good
I don't have the host resolution issue, but apparently there is a restriction for a query in the migration:
SQLSTATE[HY000] [2002] Connection refused (Connection: mysql, SQL: select table_name as name, (data_length + index_length) as size, table_commentas comment, engine as engine, table_collation as collation from information_schema.tables where table_schema = 'forge' and table_type in ('BASETABLE', 'SYSTEM VERSIONED') order by table_name)
2 years ago
is your database in the same project as this app?
2 years ago
railway does not place any such restrictions on the databases besides the amount of resources it can use (cpu / mem /disk based on your plan type)
2 years ago
are these logs coming from the build or deploy logs
2 years ago
yes but the private network is not
It just worked, I moved the "php artisan optimize" command which caches the configuration (includes the DB credentials) and maybe it was pointing to a non-existent database at the execution stage.
2 years ago
awsome
2 years ago
already have



