db2 connect to [dbname] db2 "select min(a) from b" >t.txtdb2 terminatedate=`cat t.txt | tail -2 | head -1` echo $date
Mysql数据库的登录人数,需要查询Mysql系统表information_schema.processlist,里面有多少个记录,说明有多少个在线用户。我给一个可行的思路,直接在服务器crontab一个定时任务,任务可以用php cli写,也可以用python之类的脚本写,查询information_schema.processlist表,看看有多少个在线用户,如果大于100,则报警@echo off&clscolor 03
@echo ***********************************************************************
@echo *Oracle表空间使用查看 *
@echo ***********************************************************************
@echo.
set /p databasename=数据库名:
set /p databaseusername=数据库用户名:
set /p databasepasswords=数据库密码:
set /p backupFilePath=结果文件存放路径(相对或绝对路径、可空):
@echo off&cls
@echo ***********************************************************************
@echo *Oracle表空间使用查看 *
@echo ***********************************************************************
if exist %temp%\CheckTablespaces_Sobey.sql del /f /q %temp%\CheckTablespaces_Sobey.sql
if "%backupFilePath%"=="" set backupFilePath=AutoCreateLookTablespacesFolder
if not exist %backupFilePath% md %backupFilePath%
set dataFilePath=%backupFilePath%\%databasename%
if exist %dataFilePath%.sql set dataFilePath=%backupFilePath%\%databasename%%DATE:~0,4%%DATE:~5,2%%DATE:~8,2%%TIME:~0,2%%TIME:~3,2%%TIME:~6,2%
@echo spool %dataFilePath%.sql>>%temp%\CheckTablespaces_Sobey.sql
@echo set termout off>>%temp%\CheckTablespaces_Sobey.sql
@echo set linesize 200>>%temp%\CheckTablespaces_Sobey.sql
@echo set pagesize 200>>%temp%\CheckTablespaces_Sobey.sql
@echo SELECT UPPER(F.TABLESPACE_NAME) "表空间名",D.TOT_GROOTTE_MB "大小(MB)",D.TOT_GROOTTE_MB - F.TOTAL_BYTES "已使用",TO_CHAR(ROUND((D.TOT_GROOTTE_MB - F.TOTAL_BYTES) / D.TOT_GROOTTE_MB * 100,2),'990.99') ^|^| '%' "使用比" FROM (SELECT TABLESPACE_NAME,ROUND(SUM(BYTES) / (1024 * 1024), 2) TOTAL_BYTES,ROUND(MAX(BYTES) / (1024 * 1024), 2) MAX_BYTES FROM SYS.DBA_FREE_SPACE GROUP BY TABLESPACE_NAME) F,(SELECT DD.TABLESPACE_NAME, ROUND(SUM(DD.BYTES) / (1024 * 1024), 2) TOT_GROOTTE_MB FROM SYS.DBA_DATA_FILES DD GROUP BY DD.TABLESPACE_NAME) D WHERE D.TABLESPACE_NAME = F.TABLESPACE_NAME ORDER BY 1>>%temp%\CheckTablespaces_Sobey.sql
@echo spool off>>%temp%\CheckTablespaces_Sobey.sql
@echo exit>>%temp%\CheckTablespaces_Sobey.sql
sqlplus %databaseusername%/%databasepasswords%@%databasename% @%temp%\CheckTablespaces_Sobey.sql
if exist %temp%\CheckTablespaces_Sobey.sql del /f /q %temp%\CheckTablespaces_Sobey.sql
color 0a
@echo.
@echo ***********************************************************************
@echo * 执行完毕,请先检查是否有错误发生。
@echo * 请在:%dataFilePath%.sql中查看详细,谢谢!
@echo ***********************************************************************
@echo.
@echo 批处理中止
pause
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)