Гибкая схема базы данных MySQL для хранения логов - PullRequest
1 голос
/ 03 августа 2011

Я ищу гибкую схему базы данных MySQL для сохранения журналов.

В настоящее время я использую эту схему (упрощенно для примера).

Loggin

Большая версия: http://i.stack.imgur.com/b6NC9.png

Я могу сделать select * from log, получить log_type и прочитать конкретную таблицу.Если тег log_type: user, определенная таблица будет называться log_user.

Чтобы добавить журналы для приложения, я добавлю тег приложения в log_type и создам новую таблицу log_application.

Чтобы прочитать все журналы для пользователя, я делаю выбор SELECT * FROM log_user INNER JOIN log ON log_user.logid=log.id WHERE userid=123.

Это на самом деле работает очень хорошо и гибко. Тем не менее, мне было бы интересно, если у кого-то есть лучшая идея для такой схемы базы данных.

1 Ответ

0 голосов
/ 12 октября 2011

вам не нужно 3 таблицы для хранения логов.Просто используйте один плоский стол для достижения той же цели.Это избавит вас от ненужного кодирования.

...