Other than you naming the field the same as the table, you're almost there. Use a table alias so you don't get confused.
SELECT DISTINCT r.cover_picture, r.artist, r.albums, r.review
FROM review r
WHERE r.live=1
AND r.review IS NOT NULL
ORDER BY r.review_id
LIMIT 9
Also, be sure that your review field actually contains NULL values, and not empty strings (''). It's a common source of results being returned that you didn't expect to.
Check the application code that is inserting your review records to ensure that a NULL value is manually being inserted into the review field if there is no review. If you've set the review field up to allow NULL values, but have a default value set to '', then the fields will be filled with empty strings, not NULL values, if you didn't specifically tell MySQL to store a NULL value in the review field.
Jay Pipes
Community Relations Manager, North America, MySQL Inc.
Got Cluster?
http://www.mysql.com/cluster
Personal:
http://jpipes.com