Since the _form_ of the connect() looks good to me (but not a DBD::CSV user) could there be a problem with the referenced directory? Does it exist? Do you have write/create privileges therein, while running from mod_perl? Something to look for until the Coder Super Valiant's arrive.