Bootstrap

Oracle视频基础1.3.4练习

1.3.4
检查数据库实例启动情况,进程以及进程间通信

ps -ef | grep oracle
ipcs

启动数据库实例, 用缺省spfilewilson

ls -l 
env | grep ORACLE
sqlplus /nolog
conn / as sysdba
startup
shutdown immediate
exit
clear

新创建pfile和spfile指定pfile数据库启动,

ls
mkdir old
mv spfilewilson.ora old
ls -l
rm -f initwilson.ora
cp old/spfilewilson.ora ./spfileabc.ora
ls -l
vi abc123.ora
# 写入spfile=$ORACLE_HOME/dbs/spfileabc.ora
ls
clear

sqlplus /nolog
conn / as sysdba
startup pfile=$ORACLE_HOME/dbs/abc123.ora

恢复现场

ls -l
rm  -f abc123.ora spfileabc.ora
mv old/spfilewilson.ora spfilewilson.ora

演示oracle用户不需要口令就能启动数据库

id
sqlplus /nolog
conn / as sysdba
startup

连接SQL plus看启动的连接进程,以及进程间通信

ps -ef | grep oracle
sqlplus /nolog
conn /as sysdba
!
ps -ef | grep oracle
ipcs
exit

nomount状态启动数据库实例,然后查看进程以及进程间通信情况,还有db_name,db_block_size参数

startup nomount
!
clear
ps -ef | grep oracle
ipcs
exit
show parameter db_name
show parameter db_block_size

看spfile里指定的control file

strings spfilewilson.ora | more
exit

数据库改成挂载状态

alter database mount;

数据库改成打开状态

alter database open;

请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

如何启动和管理 Oracle 数据库实例:逐步指南

在 Oracle 数据库管理中,启动和管理实例是基础却至关重要的技能。本文将通过具体需求和操作指令,介绍如何启动、检查、以及管理数据库实例的不同状态。


1. 检查数据库实例启动情况

首先,需要检查 Oracle 数据库实例是否已经启动,可以使用以下命令查看 Oracle 相关进程:

ps -ef | grep oracle
ipcs

ps -ef 列出当前所有运行的 Oracle 进程,ipcs 用于查看进程间通信资源的使用情况。


2. 启动数据库实例并使用默认 spfilewilson

通过以下步骤启动数据库实例:

ls -l 
env | grep ORACLE
sqlplus /nolog
conn / as sysdba
startup
shutdown immediate
exit
clear

以上命令确保数据库实例按默认的 spfilewilson 文件启动。


3. 创建新的 PFILESPFILE 并指定启动

如果需要使用特定的 pfile 启动数据库,可以新建 pfilespfile,并使用指定的 pfile 启动:

ls
mkdir old
mv spfilewilson.ora old
ls -l
rm -f initwilson.ora
cp old/spfilewilson.ora ./spfileabc.ora
vi abc123.ora
# 写入: spfile=$ORACLE_HOME/dbs/spfileabc.ora

然后启动数据库:

sqlplus /nolog
conn / as sysdba
startup pfile=$ORACLE_HOME/dbs/abc123.ora

4. 恢复原始设置

在测试完特定配置后,可以恢复现场设置,将文件和路径调整为原始状态:

ls -l
rm -f abc123.ora spfileabc.ora
mv old/spfilewilson.ora spfilewilson.ora

5. 演示 Oracle 用户无需密码启动数据库

在某些情况下,使用 SYSDBA 权限的 Oracle 用户可以无需密码启动数据库,方法如下:

id
sqlplus /nolog
conn / as sysdba
startup

6. 查看启动的连接进程及进程间通信

可以通过以下步骤在连接 SQL*Plus 后,检查 Oracle 数据库的连接进程及其通信情况:

ps -ef | grep oracle
sqlplus /nolog
conn / as sysdba
!
ps -ef | grep oracle
ipcs
exit

7. 启动数据库至 nomount 状态并查看参数

nomount 状态下,实例未连接到数据库文件,但已分配内存和启动后台进程,可以查看进程和通信情况,以及一些关键参数:

startup nomount
clear
ps -ef | grep oracle
ipcs
exit
show parameter db_name
show parameter db_block_size

8. 查看 SPFILE 中指定的控制文件

要检查 SPFILE 中定义的控制文件,可以使用以下命令:

strings spfilewilson.ora | more
exit

9. 将数据库改为挂载状态

在挂载状态下,数据库实例会读取控制文件,但数据文件仍未打开。可以通过以下命令将数据库切换到挂载状态:

alter database mount;

10. 将数据库改为打开状态

最后,执行以下命令将数据库改为完全打开状态,以供用户正常访问和操作:

alter database open;

总结

通过以上操作,Oracle 数据库管理员可以灵活控制数据库实例的启动、关闭和状态切换。这些步骤适用于测试环境下的实例调试,也为生产环境下的管理维护提供了必要的基础。掌握这些操作有助于数据库管理员快速定位问题,确保数据库的高效运行。

;