一、启动数据库的语法
结论放前头:
startup nomount/mount/open/force/restrict pfile=filename
参数释义:
nomount/mount/open/force/restrict是5种启动方式
pfile=filename是指定初始化参数文件,通常是不需要的。
1.startup nomount pfile=filename
启动实例但不挂载数据库。通常用于创建新的控制文件或修改初始化参数文件。
2.startup mount pfile=filename
启动实例并挂载数据库,但不打开数据库。适用于执行某些维护操作,如重命名数据文件或添加新数据文件。
3.startup open pfile=filename
启动实例并挂载并打开数据库。这是默认的 startup
行为
4.startup force pfile=filename
强制启动数据库,先关闭现有实例(使用 shutdown abort
),然后重新启动。用于解决无法正常关闭数据库的情况。
5.startup restrict pfile=filename
启动数据库并限制用户访问,只有具有 RESTRICTED SESSION
权限的用户才能连接。用于维护期间防止普通用户访问数据库。
二、关闭数据库的语法
结论放前头:
shutdown normal/transactional/immediate/abort
优先选择 SHUTDOWN TRANSACTIONAL
或 SHUTDOWN IMMEDIATE,
避免使用 SHUTDOWN ABORT。
关闭数据库需要具有 SYSDBA
或 SYSOPER
权限。
1.shutdown normal
正常关闭,也称为优雅关闭。等待所有当前连接的用户主动断开连接后,再关闭数据库。
特点:
- 最安全,确保所有事务都已完成,不会丢失任何数据。
- 耗时最长,因为需要等待所有用户主动退出。
适用场景:
- 在低峰时段进行数据库关闭,确保所有用户有足够时间完成工作。
- 不紧急的日常维护操作。
2.shutdown transactional
事务性关闭。等待所有当前事务完成(提交或回滚)后,再关闭数据库。
特点:
- 安全,确保所有事务都被正确处理,不会导致数据不一致。
- 较快,不需要等待所有用户主动断开连接,只需等待当前事务完成。
适用场景:
- 需要确保所有事务都被正确处理,同时希望尽快关闭数据库。
- 日常维护或备份操作。
3.shutdown immediate
立即关闭。尽快终止所有活动事务,回滚未提交的事务,并关闭数据库。
特点:
- 较快,比
NORMAL
和TRANSACTIONAL
更迅速地关闭数据库。 - 可能丢失未提交的数据,因为未提交的事务会被回滚。
适用场景:
- 需要快速关闭数据库,且可以接受回滚未提交事务的损失。
- 紧急维护或紧急停机。
4.shutdown abrot
强制关闭。立即终止所有数据库进程,不等待事务完成或回滚。
特点:
适用场景: