Je laat ons nog steeds niet het grote plaatje zien, maar de "syntaxisfout" lijkt erop te wijzen dat je dat uitvoert vanuit een SQL-clienttool (psql, pgAdmin, ...)
pg_dump
en psql
zijn opdrachtregel programma's, geen SQL-instructies.
Je moet ze uitvoeren vanaf de opdrachtprompt (ook wel shell genoemd)
Daarnaast is de (oude db) parameter klopt helemaal niet. De database staat niet tussen haakjes voor pg_dump, bijvoorbeeld:
pg_dump -U user1 dbname_old_db | psql -U user2 dbname_new_db
Nogmaals:u moet dit uitvoeren vanaf de opdrachtprompt, niet vanuit een SQL-tool