There are some tools built just for this. I’ve used http://www.generatedata.com/ before to generate data for MySql databases. RedGate has a nice tool to fill your SQL Server database with test data called SQL Data Generator. The RedGate tool costs about $300, but there is a free trial.
UPDATE:
Faker.js is now available. It is a project built on node.js, and looks pretty comprehensive.
ANOTHER UPDATE: Mockaroo is great!
If you’d like an HTTP API of fake user data, check out Random User Generator