Come eliminare migliaia di Messaggi Personali?

Bene, penso che questo farà ciò che hai chiesto. Eliminerà tutti i messaggi privati che non sono stati creati da un utente di sistema o da discobot. Eliminerà comunque qualsiasi altro messaggio privato, inclusi quelli degli amministratori.

Non è stato testato. Non sto dicendo che sia una buona idea. Non posso garantire che non provochi danni.

cd /var/discourse
discourse backup
./launcher enter app
rails s
Topic.where(archetype: 'private_message').where("user_id > 0").destroy_all
exit
discourse enable_restore
discourse restore

Se non succede nulla di grave, puoi omettere gli ultimi due passaggi. Se invece succede qualcosa di negativo, dovrai copiare/incollare il backup più recente visualizzato dal comando discourse restore per ripristinare il backup.