Oracle DBA 入门作业十问十答
本文为 Oracle DBA 入门作业整理,涵盖工具使用、配置管理及权限控制等核心知识点,适合新手快速上手。
如有疑问或补充,欢迎评论区交流!
1. DBA 常用工具有哪些?
- Oracle Universal Installer (OUI)
- 用途:安装、升级或删除软件组件。
- Oracle Database Configuration Assistant (DBCA)
- 用途:通过图形界面创建、删除或修改数据库,可与OUI配合使用或独立运行。
- Password File Utility (orapwd)
- 用途:创建和管理数据库口令文件。
- SQL*Plus
- 用途:访问和操作数据库的核心命令行工具,支持启动/关闭数据库、执行查询、数据修改及生成报告。
- Oracle Enterprise Manager (OEM) Console
- 用途:集中式的图形化管理平台,提供以下功能:
- 实例管理(Instance Manager)
- 安全管理(Security Manager)
- 存储管理(Storage Manager)
- Schema 管理(Schema Manager)
- 用途:集中式的图形化管理平台,提供以下功能:
2. 创建数据库与修改数据库配置用什么工具?
1. 创建数据库工具:
- DBCA (Database Configuration Assistant)
- 图形化工具,提供数据库模板快速创建数据库
- 支持选择预定义模板(如通用数据库、数据仓库等)或自定义模板
- 可配置存储结构、初始化参数、安全设置等
2. 修改数据库配置工具:
- SQL*Plus
- 使用
ALTER SYSTEM
命令动态修改参数 - 支持
SCOPE
参数控制生效范围(内存/ SPFILE /永久生效)
- 使用
- Oracle Enterprise Manager (EM)
- 图形化界面集中管理数据库配置
- NET Manager
- 配置监听器和服务命名
3. sqlnet 文件的路径是什么?
老师教学参考:\oracle\product\10.2.0\db_1\NETWORK\ADMIN\sqlnet.ora
我自己的:E:\OracleDatabase\dbhomeFree\NETWORK\ADMIN\sqlnet.ora
4. OS 身份认证的开关是什么?
在 Oracle 数据库中,OS 身份认证的开关由参数 SQLNET.AUTHENTICATION_SERVICES
控制,具体设置在 sqlnet.ora
文件中。
文件原文:SQLNET.AUTHENTICATION_SERVICES= (NTS)
参数作用:
- 当
SQLNET.AUTHENTICATION_SERVICES
设置为(NTS)
(Windows系统)或包含其他特定认证方式时,启用操作系统身份认证。 - 若设置为
NONE
,则禁用操作系统身份认证,仅通过口令文件或数据库内用户验证。
5. 拥有什么角色的用户可以启停 Oracle Server?
启停 Oracle Server 需要具有 SYSDBA 或 SYSOPER 系统权限的用户
6. 创建口令文件的命令是什么?orapwd 在哪里运行?创建哪个用户的口令?
- 创建口令文件的命令:
orapwd
示例:orapwd file=<路径>/orapw<SID>.ora password=<密码> entries=<最大用户数> force=y
- 运行环境:在操作系统命令行中执行(如 UNIX/Linux 的 Shell 或 Windows 的 CMD)
若环境变量
ORACLE_HOME
已正确配置,可直接在命令行调用orapwd
。若未配置环境变量,需使用绝对路径运行,例如:
/opt/oracle/product/10/bin/orapwd file=...
- 创建的用户:口令文件默认存储 SYS 用户的口令,同时记录所有被授予
SYSDBA
或SYSOPER
权限的用户信息。
7. 如何查看口令文件中的用户名?
登录数据库(需具有相应权限,如SYSDBA):
以SYS用户或其他具有权限的用户身份连接:sqlplus / as sysdba
执行查询:
运行以下SQL语句:SELECT USERNAME, SYSDBA, SYSOPER FROM v$pwfile_users;
结果解析:
USERNAME
列显示口令文件中记录的用户名。SYSDBA
列显示用户是否具有SYSDBA
权限(TRUE/FALSE)。SYSOPER
列显示用户是否具有SYSOPER
权限(TRUE/FALSE)。
示例输出:
USERNAME SYSDBA SYSOPER
---------------------------
SYS TRUE TRUE
8. 口令文件认证的开关是什么?如何配置?
口令文件认证的开关由初始化参数 REMOTE_LOGIN_PASSWORDFILE
控制。
参数说明:
NONE
:禁用口令文件认证,仅允许操作系统本地认证(OS认证)。EXCLUSIVE
:启用口令文件认证,并允许通过口令文件为多个用户分配权限(如 SYSDBA/SYSOPER)。SHARED
:允许多个数据库共享同一口令文件,但仅支持 SYS 用户(不可添加其他用户)。
配置步骤:
修改初始化参数:
SQL> ALTER SYSTEM SET REMOTE_LOGIN_PASSWORDFILE = EXCLUSIVE SCOPE=SPFILE;
重启数据库实例:
SQL> STARTUP FORCE; SQL> STARTUP;
9. 启停 Oracle 服务实例的命令是什么?
- 通过 SQL*Plus 启停实例:
启动实例:
SQL> startup; -- 默认方式:启动实例 → 挂载数据库 → 打开数据库 SQL> startup nomount; -- 启动到NOMOUNT状态(仅启动实例) SQL> startup mount; -- 启动到MOUNT状态(加载控制文件) SQL> startup open; -- 启动实例、挂载并打开数据库
关闭实例:
SQL> shutdown immediate; -- 立即关闭(未提交事务回滚) SQL> shutdown normal; -- 正常关闭(等待会话结束) SQL> shutdown abort; -- 强制关闭(需手动恢复)
- 指定参数文件启动:
SQL> STARTUP PFILE='/u01/oracle/init.ora';
10. 何时需要使用 orapwd?
orapwd
是管理 Oracle 特权用户认证的核心工具,适用于创建、修复或调整口令文件的所有场景。
- 创建新的口令文件:在首次为 Oracle 实例创建口令文件时使用。例如,初始化数据库实例或指定 SYS 用户的口令(通过
oradim
命令的-intpwd
参数会自动创建)时。 - 口令文件丢失或损坏:当口令文件(如
orapw<sid>.ora
)遗失、被意外删除或损坏,需要重新生成新文件时。 - 修改 SYS 用户的口令:若需更改 SYS 用户的密码且通过口令文件验证(如远程登录场景),需使用
orapwd
强制覆盖原有文件并指定新口令。 - 调整最大用户条目数:当需要扩展口令文件可记录的最大用户数量(通过
entries
参数),例如更多用户需被授予 SYSDBA/SYSOPER 权限时。 - 迁移或变更口令文件路径:若需将口令文件移动到新位置或更名,也需通过
orapwd
重新生成。
11. pwfile 中 sys 以外用户的口令如何创建?
创建用户:
CREATE USER 用户名 IDENTIFIED BY "口令";
授予 SYSDBA/SYSOPER 权限:
GRANT SYSDBA TO 用户名; -- 或 GRANT SYSOPER TO 用户名;
验证用户添加至口令文件:
SELECT * FROM v$pwfile_users;
总结
本文梳理了 Oracle DBA 日常操作的关键工具与配置方法,建议结合实践加深理解。
你的支持是我更新的动力!点赞收藏不迷路~