D'après les informations fournies, il semble que vous utilisiez le pilote mongodb 2.0. La méthode db.collectionNames a été abandonnée. Consultez la section "Objet Db" de cette page - https://github.com/mongodb/node-mongodb-native/blob/0642f18fd85037522acf2e7560148a8bc5429a8a/docs/content/tutorials/changes-from-1.0.md#L38
Ils l'ont remplacé par listCollections. Vous devriez obtenir le même effet avec :
mongoose.connection.db.listCollections().toArray(function(err, names) {
if (err) {
console.log(err);
}
else {
names.forEach(function(e,i,a) {
mongoose.connection.db.dropCollection(e.name);
console.log("--->>", e.name);
});
}
});