like si también te asustaste con el sonido del minuto 1:08 jajaja
Introducción
¿Ya terminaste el Curso de NestJS: Programación Modular?
Platzi Store: presentación del proyecto e instalación
Database
Cómo instalar Docker para este proyecto
Configuración de PostgresSQL en Docker
Explorando postgres con interfaces gráficas y terminal
Integración de node-postgres con NestJS
Conexión como inyectable y ejecutando un SELECT
Usando variables de ambiente
TypeORM
¿Qué es un ORM? Instalando y configurando TypeORM Module
Creando tu primera entidad
TypeORM: active record vs. repositories
Crear, actualizar y eliminar
Cambiar a Mysql demo (opcional)
Migraciones
Sync Mode vs. Migraciones en TypeORM
Configurando migraciones y npm scripts
Corriendo migraciones
Modificando una entidad
Relaciones
Relaciones uno a uno
Resolviendo la relación uno a uno en el controlador
Relaciones uno a muchos
Resolviendo la relación uno a muchos en el controlador
Relaciones muchos a muchos
Resolviendo la relación muchos a muchos en el controlador
Manipulación de arreglos en relaciones muchos a muchos
Relaciones muchos a muchos personalizadas
Resolviendo la relación muchos a muchos personalizada en el controlador
Consultas
Paginación
Filtrando precios con operadores
Agregando indexadores
Modificando el naming
Serializar
Próximos pasos
Cómo solucionar una referencia circular entre módulos
Continúa con el Curso de NestJS: Autenticación con Passport y JWT
npm i pg
npm i @types/pg -D
// src/app.module.ts
import { Client } from 'pg';
const client = new Client({
user: 'root',
host: 'localhost',
database: 'my_db',
password: '123456',
port: 5432,
});
client.connect();
client.query('SELECT * FROM tasks', (err, res) => {
console.error(err);
console.log(res.rows);
});
Aportes 8
Preguntas 7
like si también te asustaste con el sonido del minuto 1:08 jajaja
Si al momento de ejecutar el sistema les aparece un error como este error: la autentificaci�n password fall� para el usuario �root�
una de las razones es que antes ya usamos postgres y tenemos el servicio corriendo en nuestro PC, para evitar ese conflicto podemos modificar el puerto que exponemos del contenedor docker, por ejemplo:
postgres:
image: postgres:13
environment:
- POSTGRES_DB=my_db
- POSTGRES_USER=root
- POSTGRES_PASSWORD=123456
ports:
- '5433:5432' # 👈🏻Acá le decimos que dentro del contenedor el puerto que usará es el 5432 y para que nosotros usemos fuera del contenedor le decimo que exponga el puerto 5433
volumes:
- ./postgres_data:/var/lib/postgresql/data
Ahora debemos modificar nuestra conexión a la bd de la siguiente manera
// app.module.ts
const client = new Client({
user: 'root',
host: 'localhost',
database: 'my_db',
password: '123456',
port: 5433, // 👈🏻 acá colocamos el puerto que estamos exponiendo del contenedor
});
De esta manera podemos seguir trabajando con nuestro contenedor, sin afectar al servicio postgres que teníamos anteriormente en nuestra PC.
en mi caso sale este error
(node:18280) UnhandledPromiseRejectionWarning: error: password authentication failed for user "root"
no se cual sea el error ya que tengo todo igual
ahí dice sobre el password pero como dije tengo el mismo 123456 lo mismo el el archivo .yml
Quiza a alguien le haya pasado lo mismo
Top ediciones de video mas zarpadas 😎🔥
En mi caso me aparecía el siguiente error:
Error: connect ECONNREFUSED 127.0.0.1:5432
at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1161:16) {
errno: -111, code: 'ECONNREFUSED',
syscall: 'connect',
address: '127.0.0.1',
port: 5432
Para solucionarlo, tuve que cambiar el puerto de la configuracion de Postgres y agregar la red a la cual iba a estar:
version: '3.3'
services:
postgres:
container_name: postgres
image: postgres:13
environment:
- POSTGRES_DB=my_db
- POSTGRES_USER=root
- POSTGRES_PASSWORD=123456
ports:
- "5432:5432"
volumes:
- ./postgres_data2:/var/lib/postgresql/data
networks:
- postgres
pgadmin:
image: dpage/pgadmin4
environment:
- [email protected]
- PGADMIN_DEFAULT_PASSWORD=root
ports:
- "5050:80"
networks:
- postgres
networks:
postgres:
driver: bridge
en mi app.module.ts
const client = new Client({
user: 'root',
host:'localhost',
password: '123456',
database: 'my_db',
port: 5432,
});
Si alguien tiene el siguiente error cuando intenta conectar con la base de datos:
(node:18280) UnhandledPromiseRejectionWarning: error: password authentication failed foruser “root”
La solución en Windows es ir a los servicios, buscar el servicio con el nombre “postgresql-x64-13 - PostgreSQL Server 13” dar click derecho y parar (stop).
Estaba teniendo un error a la hora de conectar a Postgres y revisando me di cuenta que ya lo tenóa instalado localmente. Recomiendo revisar si les aparece el mismo error. No vaya a ser que ya tengan Postgres localmente y no conecte a Docker.
👏
¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.