ICQCorp
Навигатор О проекте Новости Ссылки Установка ФАКи Скриншоты Благодарности Документы PostgreSQL Скачать Об авторе Гостевая книга Russian English Проект IServerd
Назначение документа:

   Для разработки различных утилит для работы с базой данных IServerd продвинутым пользователям требуется описание ее структуры. Описание состоит из двух частей: первая (данный документ) содержит список и описания таблиц, необходимых для нормальной работы сервера.

Разметка базы данных:

   Разметка базы данных производится либо самим сервером автоматически, либо вручную самим пользователем с помощью монитора IControl или утилиты db_check. Почти все таблицы необходимы для запуска сервера, некоторые нужны лишь иногда (например таблица register_requests). Все определения, используемые при разметке находятся в файле database\init_db.h

Список таблиц:

  • online_contacts - таблица, содержащая контакт-листы всех пользователей (типы записей: normal, visible, invisible)
  • users_deps - таблица со списком департаментов для V3 клиентов (в V5 таблица не используется).
  • fragment_storage - таблица, используемая для сборки фрагментированных пакетов (хранит LO OID фрагментов)
  • users_lock - таблица с текстами блокировочных надписей для заблокированных учетных записей (смотри поле ulock в таблице users_info_ext)
  • users_messages - таблица, для хранения отложенных сообщений (сообщений для неподключенных пользователей)
  • online_users - таблица, содержащая текущую информацию на всех подключенных к серверу пользователей (IP адрес, порты серверный и клиентский, время на линии, параметры соединения.
  • users_info_ext - таблица, содержащая полную информацию о всех зарегистрированных пользователях и их пароли.
  • users_info - вид таблицы users_info_ext содержащий лишь часть ее полей. Используется для совместимости с предыдущими версиями IServerd.
  • users - вид, с ограниченным числом полей, необходим для удобства ручного поиска в базе (сервером не используется)
  • register_requests - таблица, создаваемая на основе users_info_ext и предназначенная для хранения регистрационных запросов в ручном режиме регистрации. Появляется при получении нового регистрациионного запроса.
  • login_cookies - таблица предназначенная для хранения авторизационных и шифровальных ключей используемых в протоколах V7/V8.
  • users_perms - таблица предназначенная для хранения авторизационных и разрешений пользователей всех протоколов.
  • users_ssi_data - таблица предназначенная для хранения серверных контакт-листов и другой пользовательской SSI (Server Stored Information).
Расширение функциональности:

   Пользователи часто просят добавить те или иные поля в таблицу users_info_ext для различных приложений. Но к счастью в этом нет необходимости так как целесообразнее создать еще одну таблицу, в которой одним из полей будет "uin". Для обеспечения целостности данных можно воспользоваться триггерами (подробнее о триггерах написано в документации к постгрессу).

Описание  ] Установка  ] Спасибо(а)  ] Скрины  ] Постгрес  ] Скачать  ]
Новости  ] ФАКи  ] Автор  ] Ссылки  ] Документы  ] Отзывы  ]
Webmaster
А.В.Шутко