大数据量下安全停止Oracle数据库的步骤
近期拿到大数据量的测试数据经过实验发现,正常情况下,大家只要shutdown immediate就可以停下数据库,但是对于生产系统,跑的数据量又比较大,redolog又有几百兆,此时shutdown数据库时一定要倍加小心。
下面,根据此种情况介绍一下解决方法:
停listener监听
lsnrctl stop LISTENER_NAME 停监听
lsnrctl status LISTENER_NAME 确认监听是否正常停止
过大概20分钟后查看ps -ef |grep LOCAL=NO 检查是否还有进程连在数据库上没有释放。 如果没有释放,执行kill -9 `ps -ef|grep LOCAL=NO |awk ‘{print $2}’`
停instance实例、job和aq
alter system set job_queue_processes=0 scope=memory;
alter system set aq_tm_processes=0 scope=memory;
alter system switch logfile;这个地方查过资料需要执行三次才可以。
alter system checkpoint;这个地方查过资料需要执行三次才可以。
shutdown immediate;正常关闭数据库。
注意点:若数据库在1小时内还无法正常关闭,执行shutdown abort;再startup; startup后尝试再次正常关闭数据库shutdown immediate。若数据库在1小时内还是不能正常关闭,算本次重启失败,执行shutdown abort;再startup;将数据库启动,不再进行其他的操作)
最后,检查数据库进程是否还存在 ps -ef |grep -i ora
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341