1. 环境
CentOS 7.9
Oracle 19C
使用oracle安装用户登录或者使用root用户登录后切换到oracle安装用户;
–切换到oracle用户
su - oracle
–切换到oracle用户目录
cd /home/oracle
–运行oracle的环境变量,以便输入相关命令
source .bash_profile
–启动监听
lsnrctl start
–查看监听状态
lsnrctl status
–停止监听
lsnrctl stop
–以DBA身份进入oracle控制台
sqlplus / as sysdba
注意:只有具备sysdba和sysoper系统特权的用户才能启动和关闭数据库。
2. 启动Oracle数据库
2.1. startup nomount
启动Oracle实例,而不挂载数据库。在这种模式下,Oracle实例启动了,但是并没有加载数据库,也没有打开任何数据文件。这种模式常用于只需要访问数据库元数据(如数据字典信息),或者进行创建数据库或数据库恢复的操作。
用途:
(1)创建新数据库;
(2)重建控制文件;
2.2. startup mount
用于启动实例并装载数据库,但不打开数据库,让用户可以访问数据库的控制文件,但不能访问数据文件。
这种方式启动下可执行:数据库日志归档、数据库介质恢复、使数据文件联机或脱机,重新定位数据文件、重做日志文件。
2.3. startup open
先执行“nomount”,然后执行“mount”,再打开包括Redo log文件在内的所有数据库文件,这种方式下可访问数据库中的数据。如果需要指定数据库名称,可以在启动实例时使用DB_NAME初始化参数。但是,在Oracle中通常不需要指定数据库名称,因为数据库名称是从控制文件中获取的。如果你需要指定数据库名称,可以在initSID.ora文件中设置DB_NAME参数,或者在启动实例时通过命令行指定:
STARTUP MOUNT DB_NAME='dbname';
STARTUP MOUNT 命令是用来挂载数据库,并允许DBA或管理员在数据库打开之前进行一些管理任务。在STARTUP MOUNT之后,你可以使用ALTER DATABASE命令来打开数据库:
ALTER DATABASE OPEN;
2.4. startup等于以下三个命令:
startup nomount;
alter database mount;
alter database open;
这是常规的打开数据库的方式。
2.5. startup restrict
约束方式启动 ,主要用于限制访问数据库,以防止未经授权的用户连接到数据库。在这种模式下,只有具有RESTRICTED SESSION权限的用户才能连接到数据库。
2.6. startup force强制启动方式,是shutdown abort + startup的组合,即强制关闭数据库+ 正常启动数据库;
当不能关闭数据库时,可以用startup force; 先关闭数据库,再执行正常启动数据库命令。
3. 停止Oracle数据库
3.1. shutdown normal
这是正常方式关闭数据库,所需时间较长。当没有时间限制时,通常会选择这种方式来关闭数据库;
3.2. shutdown immediate
这种方式为立即关闭数据库,尽可能在最近的时间里关闭数据库;在这种关闭方式下,Oracle不但会立即中断当前用户的连接,而会强行终止用户的当前活动事物,将未完成的事物回退,以立即关闭方式关闭数据库。
3.3. shutdown transactional
这种方式称作为事物关闭方式,首要任务是要能保证当前所有的活动事物都可以被提交并在最短的时间内关闭数据库;
3.4. shutdown abort
直接关闭数据库,正在访问数据库的会话会被突然终止,使用这种方式会强制中断任何数据库操作,这样可能会丢失一部分数据信息,影响到数据库的完整性。不建议使用。