select username,password from dba_users; --查看用户信息
select username,account_status from dba_users; --查看用户是否解锁
alter user scott account unlock; --解锁scott用户
alter user scott account lock;--锁scott用户
alter user scott identified by tiger; --为scott用户修改密码为tiger
### Oracle 11g 关键知识点解析
#### 一、Oracle 11g 在 Windows 下的安全关闭步骤
在 Windows 操作系统中,正确地关闭 Oracle 11g 数据库是非常重要的,这可以确保数据的一致性和完整性。以下是具体的步骤:
1. **停止 SQL*Plus 进程**
- 打开命令提示符窗口。
- 导航至 Oracle 安装目录下的 BIN 文件夹(例如 `C:\Oracle\product\11.2.0\dbhome_1\bin`)。
- 输入 `isqlplusctl stop` 命令来停止 SQL*Plus 进程。
2. **停止企业管理器 (EM) 控制台进程**
- 在同一 BIN 目录下,执行 `emctl stop dbconsole` 命令,以停止 EM 控制台进程。
3. **停止监听器 (Listener) 进程**
- 继续在 BIN 目录下,使用 `lsnrctl stop` 命令来停止监听器进程。
4. **安全关闭数据库实例**
- 在命令提示符窗口中输入 `sqlplus /nolog` 来启动 SQL*Plus。
- 使用 `conn / as sysdba` 命令连接到数据库。
- 输入 `shutdown immediate` 命令以立即关闭数据库实例。这种方式会等待所有当前的事务完成,并且不会允许新的连接。
#### 二、Oracle 用户管理和权限授予
1. **查看用户信息**
- 使用以下 SQL 语句可以查看用户的用户名和密码:
```sql
select username, password from dba_users;
```
- 若要查看用户的解锁状态,则使用:
```sql
select username, account_status from dba_users;
```
2. **解锁和锁定用户**
- 要解锁名为 `scott` 的用户,可以执行:
```sql
alter user scott account unlock;
```
- 若需锁定该用户,则执行:
```sql
alter user scott account lock;
```
3. **修改用户密码**
- 修改 `scott` 用户的密码为 `tiger` 可以这样操作:
```sql
alter user scott identified by tiger;
```
4. **创建用户和授予权限**
- 创建新用户并设置密码:
```sql
create user user_name identified by password;
```
- 授予用户 DBA 权限:
```sql
grant dba to user_name;
```
- 如果需要向用户授予特定表的 SELECT 权限,则使用:
```sql
grant select on gecs_law to user_name;
```
#### 三、Oracle 数据文件、控制文件和重做日志文件路径查询
1. **查询数据文件路径**
- 使用此 SQL 语句来查看所有数据文件的路径:
```sql
select file_name from dba_data_files;
```
2. **查询控制文件路径**
- 查看所有控制文件的路径,可以执行:
```sql
select name from v$controlfile;
```
3. **查询重做日志文件路径**
- 若要获取所有重做日志文件的位置信息,则使用:
```sql
select member from v$logfile;
```
#### 四、Oracle 启动与关闭的不同选项
1. **shutdown 参数详解**
- **normal**:正常关闭,等待所有会话结束,等待事务完成,进行检查点后关闭数据文件。
- **transactional**:事务性关闭,不等待会话结束,等待事务完成,进行检查点后关闭数据文件。
- **immediate**:立即关闭,不等待会话结束,不等待事务完成,自动回滚未完成的事务,进行检查点后关闭数据文件。
- **abort**:强制关闭,不等待会话结束,不等待事务完成,不做检查点,数据文件未关闭。
2. **startup 参数详解**
- **open**:默认参数,打开数据库,允许数据库访问。
- **mount**:仅允许 DBA 进行管理操作,不允许用户访问数据库。
- **nomount**:仅启动数据库,不打开控制文件或数据文件,用于进行配置更改等操作。
这些知识点涵盖了 Oracle 11g 在 Windows 平台上进行安全关闭、用户管理、文件路径查询以及数据库启动和关闭的不同方式。掌握这些操作对于 DBA 和开发人员来说非常重要,可以帮助他们更有效地管理和维护 Oracle 数据库。