Создание отдельной таблицы для каждого пользователя. Правильно ли?
Попытаюсь народным языком передать суть реляционок. Каждая таблица должна представлять некую модель данных. Каждая запись - объект, каждый столбец - его свойство определенного типа. Юзер - это одна модель и объектов юзеров может быть множество. Комментарий - другая модель и тоже множество её объектов. Пост форума, товар и тд - другие модели. А выборка данных из других таблиц для какой-то записи в текущей потом делается через связывание, там несколько вариантов, например, JOIN для объединения результатов в одну модель или связывание самих таблиц, или хранение связок в спомогательных таблицах, вариантов масса, выбор нужного зависит от специфики задачи и требований к оптимизации запросов.
Нет, не правильно. Правильно создать таблицу Users, наделать там нужных полей (типа mail, name, phone, city и тд)