Presumibilmente, dal momento che non stai fornendo un valore per il DB_ID colonna, quel valore viene popolato da un livello di riga prima del trigger di inserimento definito nella tabella. Quel trigger, presumibilmente, sta selezionando il valore da una sequenza.
Poiché i dati sono stati spostati (presumibilmente di recente) dal database di produzione, la mia scommessa sarebbe che quando i dati sono stati copiati, anche la sequenza non è stata modificata. Immagino che la sequenza stia generando valori molto inferiori al più grande DB_ID che è attualmente nella tabella che porta all'errore.
Puoi confermare questo sospetto osservando il trigger per determinare quale sequenza viene utilizzata ed eseguendo un
SELECT <<sequence name>>.nextval
FROM dual
e confrontandolo con
SELECT MAX(db_id)
FROM cmdb_db
Se, come sospetto, la sequenza sta generando valori che già esistono nel database, è possibile incrementare la sequenza fino a generare valori inutilizzati oppure è possibile modificarla per impostare INCREMENT su qualcosa di molto grande, prendi nextval una volta e imposta INCREMENT torna a 1.