0
votes

I tried to connect the database using ormconfig.js and create .env but I get an error:

Error: connect ECONNREFUSED 127.0.0.1:3000 at TCPConnectWrap.afterConnect [as oncomplete] (net.js: 1141: 16) ORMCONFIG.JS

errno: 'ECONNREFUSED', code: 'ECONNREFUSED', syscall: 'connect', address: '127.0.0.1', port: 3000, fatal: true }

module.exports = {
"type": process.env.TYPEORM_CONNECTION,
"url" : process.env.DATABASE_URL,
"host": process.env.TYPEORM_HOST,
"port": process.env.TYPEORM_PORT,
"username": process.env.TYPEORM_USERNAME,
"password": process.env.TYPEORM_PASSWORD,
"database": process.env.TYPEORM_DATABASE,
"synchronize": process.env.TYPEORM_SYNCHRONIZE,
"logging": process.env.TYPEORM_LOGGING,
"entities": [
   "dist/entity/**/*.ts"
],
"migrations": [
   "dist/migration/**/*.ts"
],
"subscribers": [
   "dist/subscriber/**/*.ts"
],
"cli": {
   "entitiesDir": "src/entity",
   "migrationsDir": "src/migration",
   "subscribersDir": "src/subscriber"
}}

.env

DATABASE_URL= http://root:@localhost:3000
TYPEORM_CONNECTION = mysql
TYPEORM_HOST = localhost
TYPEORM_USERNAME = root
TYPEORM_PASSWORD = 
TYPEORM_DATABASE = login_controlaccess
TYPEORM_PORT = 3000
TYPEORM_SYNCHRONIZE = true
TYPEORM_LOGGING = true

index.js

import "reflect-metadata";
import * as dotenv from 'dotenv';
import {createConnection} from "typeorm";
import * as express from "express";
import {Request, Response} from "express";
import * as cors from 'cors';
import * as helmet from  'helmet';
import routes from './routers';
dotenv.config();
const PORT= process.env.TYPEORM_PORT || 3000;


createConnection().then(async () => {

    // create express app
       const app = express();
    //middleware
      app.use(cors());
      app.use(helmet());
      app.use(express.json());
     //ROuter
      app.use('/', routes); 
    // start express server
    app.listen(PORT, ()=> console.log(`server running in port ${PORT}`));


    })
    .catch(error => console.log(error));
1

1 Answers

0
votes

You are calling dotenv.config() after you import from typeorm, you probably need to do that first.

Also, note that you need to configure those environment variables in either the .env or the ormconfig.js, you have included them in both.