Использование SQLite

Здесь обсуждаются общие вопросы, связанные с программой.
Killer
Сообщения: 165
Зарегистрирован: 02:40, 09.11.2007

Использование SQLite

Сообщение Killer »

Yaroslav писал(а):Я тоже за использование БД.

Пожелание использовать SQLite. Я уже писал как-то об этом. Использование только MySQL усложнит излишне. Так как те, кто хочет поставить только чат будут вынуждены ставить ещё и не совсем нужный и не очень понятный MySQL.
В то же время было бы замечательным опциональное использование MySQL. По сути разница только в библиотеке. При реализации модели MVC это должно быть достаточно просто. И тем, у кого сервер чата ставится на какой-то контент сервер, скорее всего там уже есть MySQL. Но собственно из PHP и с SQLite работать просто. Функции практически такие же за исключением архитектурных различий.

По паролям поддерживаю – должен храниться в MD5 или SHA1 (в общем что-то общеизвестное). А для защиты слишком простых паролей принято использовать salt, который может храниться в ini файле.

По данным ограничений – так их нужно читать из базы при попытке пользователя подключиться. Тогда и записывать у кого какие права. А вычитывать всю базу при старте, имхо, не нужно.
Если реализовать перечитывание по времени, тогда будет резонным добавить в базе колонку modified чтобы вычитывать только записи изменённые с момента старта или последнего перечитывания.

Надеюсь информация окажется полезной.
Хм, это то понятно, а что ты хочешь сказать если использовать SQLite то ее ставить не придется? Опять же Сервер чата ставится как правило на серверную машину (отдельный комп) если так то нет смысла грузить комп двумя базами... не забываем что есть еще и вэбклиент чата, а если ставит вэб сервер, то не только для одного лишь чата естестно туда зальется как минимум еще и форум...

А с другой стороны, почему бы при установке не выбрать какую базу использовать, всеже это не так и много, добавить в архив еще одну DLL-ку. или к примеру не добовлять библиотеку а дать возможность использования библиотеки из PHP в принципе удобно, если у тя стоит чат то в нем уже все есть, если ты будешь ставить его на машину с вэбсервером то у тебя полюбому будет уже стоять как минимум пхп и мускл, а значит и библиотека у тя уже будет лежать на компе, далее в случае использования базы MySQL сервер запросит путь к библиотеке. На мой взгляд довольно удобно выглядит, учитывая твоюже фразу:
Yaroslav писал(а): По сути разница только в библиотеке.
Я так понимаю что и язык ничем не отличается..
Проблем в подобной реализации быть не должно...
dinosaur12 писал(а):Ребята а меня все на этом форуме устраивает ...
Хм ты читаешь форум или просто написать решил? тут про форум ничего и не говорилось...
Аватара пользователя
Yaroslav
Сообщения: 846
Зарегистрирован: 03:45, 15.12.2007
Контактная информация:

Re: Пожелание по базам данным чата

Сообщение Yaroslav »

Killer писал(а): Хм, это то понятно, а что ты хочешь сказать если использовать SQLite то ее ставить не придется? Опять же Сервер чата ставится как правило на серверную машину (отдельный комп) если так то нет смысла грузить комп двумя базами... не забываем что есть еще и вэбклиент чата, а если ставит вэб сервер, то не только для одного лишь чата естестно туда зальется как минимум еще и форум...
Я понимаю так, прежде, чем вступать в полемику, нужно изучить вопрос.

Если ввести в Google кейворд SQLite, то первыми двумя ссылками будут ссылки на русскую и английскую википедию, длее две на официальный сайт SQLite.
Там, при желании, можно найти как это всё работает.

А теперь по сути:

1) «её ставить не прийдётся» потому, что SQLite не является клиент-серверным приложением. Библиотека работает напрямую с хранилищем, т.е. файлом. Многие продукты используют SQLite для хранения структурированных данных, а пользователи об этом даже не подозревают. К примеру FireFox хранит в SQLite историю посещённых сайтов. Пользуешься файрфоксом? Приходилось «её [SQLite] ставить»? Подробнее тут можно почитать.

2) Если «машина серверная» из этого не следует, что на ней установлена хоть какая-то СУБД. Серверная «машина» это всего навсего название. И назвать так можно что угодно. Даже дрова, под управлением доса. Главное чтобы оно справлялось со своими обязанностями по обслуживанию (Сервер (от англ. server, обслуживающий)). Даже если мы будем говорить о серверной операционной системе, это тоже ничего не решает. Это так обычно получается, что на каком-то сферическом сервере в вакууме стоит СУБД. Но это, отнюдь, не стандарт и не обязательство.

3) Вэб сервер у некоторых может стоять на другом физическом компьютере.

4) Синтаксис, хоть и незначительно, но отличается. И это непременно нужно иметь ввиду.

5) Dll от php не подойдёт, потому, что это dll для PHP. Для других приложений есть набор специальных клиентских библиотек, называемых коннекторами. Для С такой коннектор широко известен как libmysql.

PS рекомендую почитать о SQLite. Для таких задач отличная штука.
Web-интерфейс серверных логов ——> http://commfort.com/ru/forum/viewtopic.php?t=6618
Web-статистика посещаемости чата —> http://commfort.com/ru/forum/viewtopic.php?t=6546
Благодарности —> R753244967524 Z664725275810 U806184306803 ЯД:41001743355185
Ответить