Как правильно подойти к созданию БД для веб-проекта?
Прочитайте ПОЖАЛУЙСТА про нормализации БД и уже отталкиваясь от этого создавайте.
Самому не раз приходилось переделывать ужасную структуру БД
Добрый день. 
К сожалению я не знаю вашего уровня знания Mysql на данном этапе, но могу предложить следующий план по покорению данной стязи :)
Самый простой способ найти простой самоучитель. Могу предложить вот этот ну и не забудьте установить себе phpmyadmin
Разберите пару примеров, напишите телефонный справочник или, что-то подобное.
Попробуйте написать систему, которая взаимодействует сразу с 3 или 4 таблицами.
Предположим в таблице users у каждоко пользователя указан в одном из полей(city_id) - id города в котором он проживает - все эти города храняться в таблице cities, в свуою очередь каждый город имеет такую же привязку к стране типа country_id, а страны лежат в табличке countries.
Попробуйте вывести всех пользователей упорядоченно по  странам и городам.
Пробуйте усложнять себе задачи и прокачивать себя. Успехов!