设为首页 收藏本站
查看: 1251|回复: 0

[经验分享] oracle 使用(一)Oracle 启动和关闭

[复制链接]

尚未签到

发表于 2018-9-25 13:15:29 | 显示全部楼层 |阅读模式
  当你把oracle安装完毕后,首先你要会连接和启动还要查看oracl运行状态,然后才能去考虑怎么去操作。
  第一、oracle 连接:oracle 安装在linux系统下你可以在本地机子上去操作,你打开终端要切换到oracle用户下(su - oracle);你也可以用linux远程去连接软件到linux机上操作同样也要切换到oracle用户;在window下你的启动就会装简单很多,一般默认安装就会自动添加到服务启动项里,大部分的是自动启动。所以一般情况下你只需更改里面的选项就可以。注:在这里面的启动只讲在linux下的操作,系统版本redhat 和centos
  第二、启动数据库
  首先是启去监听程序:
  [oracle@oracle ~]$ lsnrctl start
  其次在在打开em程序:
  [oracle@oracle ~]$ emctl start dbconsole
  注:这一项不是必须,是否开启主要是跟据DBA的 需要。
  最后才是真正的启动数据库:
  [oracle@oracle ~]$ sqlplus /nolog                   #登录sqlplus
  SQL> connect /as sysdba;                    #用sys连接你也可以这样敲conn /as sysdba;
  SQL>startup;                                        #启动数据库实例
  第三查看状态
  查看监听程序状态:
  [oracle@oracle ~]$ lsnrctl status
  查看em运行状态
  [oracle@oracle ~]$ emctl status dbconsole
  数据库实例运行状态分为nomount,mount,open三种:nomount状态下oracle会打开参数文件,分配SGA并启动后台进程;mount状态下,oracle会在nomount的基础上按照初始化参数control_files的设置打开控制文件;open状态下,oracle会在mount的基础上按照控制文件的记录打开所有数据文件和重做日志。可能使用startup [ nomount | mount | open ]来启动实例,如果只使用startup后面没有跟option
  默认是按open 状态来启动实例的。其实startup open其过程也是先进入nomount ,然后再进入到mount,最后再到open 。
  因为在维护数据库时,我们会跟据我们的操作切换到不同的实例状态。在早期的版本中可以使用alter 命令来切换。这里建议在切换时最好先把实例shutdown然后再去startup [ nomount | mount | open ]切换在你所需要的状态下。
  其他打开数据库的方式:
  除了前面介绍的三种数据库打开方式选项外,还有另外其他的一些选项。
  1> startup restrict     #这种方式下,数据库将被成功打开,但仅仅允许一些特权用户(具备DBA角色的用户)才能够使用数据库。这种方式常用来对数据库进行维护,如数据的导入/导出操作时不希望有其他用户连接到数据库操作数据。
  2> startup force        #该命令其实是强行关闭数据库(shutdown abort)和启动数据库(startup)两条命令的一个综合。该命令仅在关闭数据库碰到问题不能关闭数据库时采用。
  3>>
  第四、关闭oracle
  首先是关闭实例:
  1、SQL> shutdown normal;        #发出该命令后,任何新的连接都将再不允许连接到数据库。在数据库关闭之前,Oracle将等待现在连接的任何用户都从数据库中退出后才开始关闭数据库。采用这种方式关闭数据库,在下一次启动时无需进行任何的实例恢复。但需要注意一点的是,采用这种方式,也许关闭一个数据库需要几天时间,也许更长。
  2、SQL> shutdown immediate;        #这是我们常用的一种关闭数据库的方式,想很快地关闭数据库,但又想让数据库干净的关闭,常采用这种方式。当前正在被Oracle处理的SQL语句立即中断,系统中任何没有提交的事务全部回滚。假如系统中存在一个很长的未提交的事务,采用这种方式关闭数据库也需要一段时间(该事务回滚时间)。系统不等待连接到数据库的任何用户退出系统,强行回滚当前任何的活动事务,然后断开任何的连接用户。
  3、SQL> shutdown transactional; #该选项仅在Oracle 8i后才能够使用。该命令常用来计划关闭数据库,他使当前连接到系统且正在活动的事务执行完毕,运行该命令后,任何新的连接和事务都是不允许的。在任何活动的事务完成后,数据库将和SHUTDOWN IMMEDIATE同样的方式关闭数据库。
  4、SQL> shutdown abort;       #这是关闭数据库的最后一招,也是在没有任何办法关闭数据库的情况下才不得不采用的方式,一般不要采用。假如下列情况出现时能够考虑采用这种方式关闭数据库。1、 数据库处于一种非正常工作状态,不能用shutdown normal或shutdown immediate这样的命令关闭数据库;2、 需要立即关闭数据库;3、 在启动数据库实例时碰到问题;任何正在运行的SQL语句都将立即中止。任何未提交的事务将不回滚。Oracle也不等待现在连接到数据库的用户退出系统。下一次启动数据库时需要实例恢复,因此,下一次启动可能比平时需要更多的时间。
  再次关闭em:
  [oracle@oracle ~]$ emctl stop dbconsole
  最后关闭监听程序
  [oracle@oracle ~]$ lsntctl stop
这然就全部把oracle给关闭了



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-601931-1-1.html 上篇帖子: oracle技术之Oracle 常用dump命令(一) 下篇帖子: Oracle 缺失INITORCL及ORACLE启动过程
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表