--时间:2020年8月24日

--作者:飞翔的小胖猪

一、启动关闭数据库

10g,11g数据库只需要进入到不同的实例中执行一个命令即可。对于创建有容器数据库的12c及以上的版本需要启动容器数据库。

1.1      启动10g、11g、12c非容器数据库。

在windos下数据库安装过后,oracle数据库会跟随系统自启动。在linux下需要手动设置oracle启动。在6下可以使用自定义脚本的模式也可以使用oracle自带的dbstart命令执行。

1.1.1  手动启动数据

[root@12c ~]# su - oracle                 #切换到oracle用户下

[oracle@12c ~]$ rlwrap sqlplus / as sysdba               #进入到sqlplus控制台

SQL> startup                               #启动数据库

SQL> select name,open_mode from v$database;                #查看数据库状态

oracle日常操作命令手册(启停篇)_oracle

 

1.1.2  rhel6自动启动数据库

在rhel6的操作系统中可以把数据库启动脚本做成服务加入到开启启动项中,设置随主机启动。

1.复制开机启动脚本

[root@wyzc ~]# cp /etc/init.d/network  oracle                 //拷贝一个模板用来定义oracle开机启动

定义系统启动脚本:

[root@wyzc ~]# vim /etc/init.d/oracle

#! /bin/bash

#

# ORACLE        up/down ORACLE

#

# chkconfig: 2345  90 1

# description: Activates/Deactivates all network interfaces configured to \

# Source function library.

. /etc/init.d/functions

case "$1" in

  start)

        su - oracle -c "/home/oracle/start11g"

        ;;

  stop)

        su - oracle -c "/home/oracle/shutdown11g"

        ;;

  *)

        echo $"Usage: $0 {start|stop}"

        exit 2

esac

exit $rc

2.关闭数据库脚本

[oracle@wyzc ~]$ cat shutdown11g              //11g关闭数据库,同时停止监听端口

#!/bin/bash

sqlplus / as sysdba <<EOF

shutdown immediate

EOF

lsnrctl stop;

3.启动数据库脚本

[oracle@wyzc ~]$ cat start11g               //打开数据监听端口,启动数据库

#!/bin/bash

lsnrctl start;

sqlplus / as sysdba <<EOF

startup

EOF

 

1.2  启动容器数据库

默认情况下在12C的CDB中执行SQL>startup;并不能把PDB启动至OPEN状态,只到MOUNT状态

[root@12c ~]# su - oracle                  #切换到oracle用户下

[oracle@12c ~]$ rlwrap sqlplus / as sysdba                #进入到sqlplus控制台

SQL> startup                       #启动数据库实例

SQL> select name,open_mode from v$database;                #查看数据库实例状态

SQL> col name for a20                        #设置name列的显示长度为20个字符

SQL> select con_id,name,open_mode from v$pdbs;          #查看确认pdbs状态

oracle日常操作命令手册(启停篇)_oracle_02

 发现CDB状态正常,PDB处于mountd状态。

 

SQL> select con_id,name,open_mode from v$pdbs;          #查看确认pdb状态

SQL> alter pluggable database LVANPDB open;                #启动插入式数据库

SQL> select con_id,name,open_mode from v$pdbs;          #查看确认pdb状态

oracle日常操作命令手册(启停篇)_oracle_03

 

1.2.1  切换PDB

在安装有容器数据库的12C及以上版本的数据库管理时时常需要切换到CDB和PDB中进行操作。

1.CDB切换到PDB中,sys用户

[root@12c ~]# su - oracle                            #切换到oracle用户

[oracle@12c ~]$ rlwrap sqlplus / as sysdba                #进入到sqlplus控制台

SQL> show pdbs;                      &n.........