shell脚本之定期杀非活session连接
!/bin/bash
ORACLE_SID="testdb"
ORACLE_HOME="/u01/app/oracle/product/11gR2/db"
INACTIVE_TIMEOUT=60 # 非活动超时时间(秒)
设置Oracle环境变量
export ORACLE_SID
export ORACLE_HOME
连接到Oracle数据库
sqlplus -S /nolog >> /home/oracle/kill_session_output.log<<EOF
CONNECT / AS SYSDBA
-- 查询非活动会话并杀死超时的会话
SET SERVEROUTPUT ON
DECLARE
v_sid V$SESSION.SID%TYPE;
v_serial V$SESSION.SERIAL#%TYPE;
CURSOR c_sessions IS SELECT SID, SERIAL# FROM V\$SESSION WHERE STATUS = 'INACTIVE';
BEGIN
FOR session IN c_sessions LOOP
v_sid := session.SID;
v_serial := session.SERIAL#;
EXECUTE IMMEDIATE 'ALTER SYSTEM KILL SESSION ''' || v_sid || ',' || v_serial || ''''; DBMS_OUTPUT.PUT_LINE('Killed session: SID=' || v_sid || ', SERIAL#=' || v_serial); END LOOP;
END;
/
EXIT;
EOF
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek “源神”启动!「GitHub 热点速览」
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
· DeepSeek R1 简明指南:架构、训练、本地部署及硬件要求
· 2 本地部署DeepSeek模型构建本地知识库+联网搜索详细步骤