|
Тема
|
Брой конекции към Firebird база
|
|
Автор |
Mixy (@#$%^) |
Публикувано | 07.09.10 16:59 |
|
Как мога да разбера броя на конекциите към база данни? Сървъра е Firebird 1.5, а компонентите за връзка са IBX под Delphi5. Компонентът IBDatabaseInfo има property UserNames, но то не ми върши особенна работа.
И следващото питане е как например могат да се ограничат броя конекции? Има някакъв компонент IBConnectionBroker, обаче не можах да разбера какво точно прави.
Mixy
| |
Тема
|
Re: Брой конекции към Firebird база
[re: Mixy]
|
|
Автор |
ИвKo (особняк) |
Публикувано | 08.09.10 07:23 |
|
| |
Тема
|
Re: Брой конекции към Firebird база
[re: Mixy]
|
|
Автор | GJGeorgiev (Нерегистриран) |
Публикувано | 08.09.10 09:34 |
|
Аз съм с Firebird 2.1.3
Ето по-долу куерито, преписано от IbExpert - Services/Databse monitoring/Atachment.
Ако ти трябва някаква защита - примерно максимален допустим брой потребители в мрежата аз разписах модул в Делфи с Indy който по UDP контролира активни потребители, изпраща съобшение екрани и т.н.
SELECT a.mon$attachment_id as "Attachment ID",
a.mon$server_pid as "Server PID",
a.mon$state as "State",
a.mon$attachment_name as "Attachment Name",
a.mon$user as "User",
a.mon$role as "Role",
a.mon$remote_protocol as "Remote Protocol",
a.mon$remote_address as "Remote Address",
a.mon$remote_pid as "Remote PID",
cs.rdb$character_set_name as "Character Set",
a.mon$timestamp as "Established At",
a.mon$garbage_collection as "Garbage Collection",
a.mon$remote_process as "Remote Process",
a.mon$stat_id as "Statistics ID",
r.mon$record_seq_reads as "Non-indexed Reads",
r.mon$record_idx_reads as "Indexed Reads",
r.mon$record_inserts as "Records Inserted",
r.mon$record_updates as "Records Updated",
r.mon$record_deletes as "Records Deleted",
r.mon$record_backouts as "Records Backed Out",
r.mon$record_purges as "Records Purged",
r.mon$record_expunges as "Records Expunged",
io.mon$page_reads as "Page Reads",
io.mon$page_writes as "Page Writes",
io.mon$page_fetches as "Page Fetches",
io.mon$page_marks as "Page Marks"
FROM mon$attachments a, rdb$character_sets cs
left join mon$record_stats r on (a.mon$stat_id = r.mon$stat_id)
left join mon$io_stats io on (a.mon$stat_id = io.mon$stat_id)
WHERE (a.mon$character_set_id = cs.rdb$character_set_id)
| |
Тема
|
Re: Брой конекции към Firebird база
[re: ИвKo]
|
|
Автор |
Mixy (@#$%^) |
Публикувано | 08.09.10 11:09 |
|
"If you want to find the number of active users, you can use the services API, or the relevant option in your favorite administration tool (Database -> Advanced -> Show Connected Users in Flamerobin). Please note that this only works on SuperServer, Classic would only return one user - yourself." - ей това ми беше убягнало.
10х.
Mixy
| |
Тема
|
Re: Брой конекции към Firebird база
[re: GJGeorgiev]
|
|
Автор |
Mixy (@#$%^) |
Публикувано | 08.09.10 11:11 |
|
Мерси за примера, но засега съм на 1.5, а там тея таблици ги няма.
Mixy
| |
Тема
|
Re: Брой конекции към Firebird база
[re: Mixy]
|
|
Автор | GJGeorgiev (Нерегистриран) |
Публикувано | 08.09.10 11:58 |
|
Mixy,
ако си с една или малко като брои бази на ФБ1.5 горещо препоръчвам ФБ 2.1.3.
Освен наблюдение на конекции, има и куп други "благинки" - примерно използване на домейни в параметри в stored procedures, update or insert SQL .
Смяната на SQL-a на сървъра при 1,5 ГБ база с архивиране на базата, смяна на версията на firebird и възстановяване на базата при мен минава някаде за 20 минути - правя го обикновено през VPN от къщи когато реша да минем на по- нова версия.
Клиентските библиотеки можеш да ги смениш и по - нататък.
Доколкото разбрах работите ни са сходни - поддръжка и развитие на информационни системи :) .
Поздрави Г.Георгиев
Индекс-6 Пловдив
| |
Тема
|
Re: Брой конекции към Firebird база
[re: GJGeorgiev]
|
|
Автор |
Mixy (@#$%^) |
Публикувано | 08.09.10 13:41 |
|
Минаването към 2.1 го обмислям от известно време, но при мен само с Backup/Restore няма да мине, трябва да се пипнат и някои заявки. Може би догодина.
Mixy
| |
|
|
|
|