Во первых вам нужнно научиться задавать вопросы а вернее их форматировать, в вашем вопросе нечитабельна структура таблиц.
Во вторых литературы полно в сети выбирай самую свежую и вперед. Техническую литературу не нужно читать последовательно если вы с главой знакомы читайте следующую. Индивидуальную книгу под ваш проект не найти в ней всегда будет что-то "лишнее".
В третьих вам нужно определиться с приоритетом поставленной задачи скорость выполнения или интерес/самообразование. Для новичка и не только это два противоположных друг другу приоритета и план выполнения будет разный. Если это заказ и нужно быстрее сделать, то берите готовый движок и настраиваете для себя. Если вам интересен сам процесс проектировки БД, то делайте все сами. Готовый проект также брать не стоит т.к. в нем нужно разбираться и он покажется вам очень сложный.
По вашему вопросу:
В вашей структуре есть ошибка, в каждой таблице есть поле логин а должно быть id ссылка на таблицу логин. Структура БД в вашем случае будет примерно такой:
-- Пользователи
CREATE TABLE user AS(
id int identity,
name varchar(128),
pass varchar(128)
)
-- Авторизация / сессия
CREATE TABLE user_session AS(
id int identity,
user__id int,
timestamp datetime
)
-- Сообщения
CREATE TABLE message AS(
id int identity,
post__id int,
user_session__id int,
subject varchar(255),
text varchar(max)
)
-- лайк / дизлайк
CREATE TABLE message_like AS(
id int identity,
user_session__id int, -- пользователь кто плюсанул
message__id int,
value int -- плюс 1 / минус 1
)