I'm not sure if you're talking about a child portal or if you've got multiple portals using on codebase but I had to do something similar a while ago because one of the sites I hosted was getting big enough that I wanted to give it it's own installation.
I'm going on memory here so I'd suggest doing this first on a test box to make sure everything works properly.
1. Set up your new DNN install and the new db.
2. Do an SQL backup of the original database and install (better safe than sorry :) )
3. Using Enterprise manager copy the original database into the new database.
4. Log into the new DNN install with the host account and remove any of the extra child portals that you don't need (if the portal you duping is/was a child portal you won't be able to delete the default(0) portal).
5. I never bothered to look into this as most of the overall users used the portal I duped but I'm sure there's a way of cleaning out the database of all the extraneous users.
If it's just a single (portal 0) DNN install then it's just steps 1 to 3.
GMSS DNN