powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / подсчет одновременых подключений к БД
3 сообщений из 3, страница 1 из 1
подсчет одновременых подключений к БД
    #39671678
ЕНЯ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
я сделал таким способом:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
SELECT CONVERT(VARCHAR, GETDATE(), 120) Time,
       d.name DbName,
       s.program_name ProgramName,
       COUNT(DISTINCT s.spid) CountSpid
FROM sys.sysprocesses s
JOIN sys.databases d ON d.database_id = s.dbid
  AND s.dbid > 4
GROUP BY d.name,
         s.program_name


но может есть более корректные способы?
...
Рейтинг: 0 / 0
подсчет одновременых подключений к БД
    #39671679
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЕНЯ,

ну я бы выбрасывал сессию запроса @@SPID, DB_NAME() есть и так, ну и тд
http://www.itprotoday.com/microsoft-sql-server/4-methods-identifying-connections-count-sql-server
...
Рейтинг: 0 / 0
подсчет одновременых подключений к БД
    #39671695
Фотография komrad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЕНЯя сделал таким способом:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
SELECT CONVERT(VARCHAR, GETDATE(), 120) Time,
       d.name DbName,
       s.program_name ProgramName,
       COUNT(DISTINCT s.spid) CountSpid
FROM sys.sysprocesses s
JOIN sys.databases d ON d.database_id = s.dbid
  AND s.dbid > 4
GROUP BY d.name,
         s.program_name


но может есть более корректные способы?

на вскидку:
1) надо отсеивать системные сессии (spid<50)
2) program_name опциональный параметр, может отсутствовать (NULL)
3) отсекая master (db_id=1), Вы теряете все коннекты, у которых default database = master
4) незачем джойнить с sys.databases, если есть системная функция db_name()

однако, системные сессии могут быть и со spid-ами большими 50 (REDO queue в случае с AlwaysOn, например)

поэтому, вариант реализации подсчета зависит от точной постановки задачи
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / подсчет одновременых подключений к БД
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]