Oracle数据库操作详解:从基础到进阶

需积分: 10 2 下载量 51 浏览量 更新于2024-07-20 1 收藏 1.44MB DOC 举报
"这篇文档是Oracle的全面总结,包含了Oracle的常见操作,适合初学者学习。文档来源于魔乐学院的Oracle教学资料。" 在Oracle数据库系统中,`sys` 和 `system` 是两个非常重要的内置用户。`sys` 用户是一个超级用户,拥有最高的权限,它具有 `sysDBA` 角色,这使得`sys`用户能够创建数据库。默认的密码在安装时设置,通常为 `change_on_install`,但这个密码在实际环境中应该立即更改以增强安全性。 `system` 用户则拥有管理操作员的权限,它具有 `sysoper` 角色,虽然权限较大,但不包含创建数据库的权限。`system` 用户的默认密码是 `manager`,同样也需要在生产环境中进行修改。 在使用 `sqlplus` 客户端连接Oracle数据库时,语法通常为 `sqlplus 用户名/密码@实例名`。例如,`sqlplus scott/tiger@zhulin` 就是在尝试连接名为 `zhulin` 的数据库实例,使用 `scott` 用户和 `tiger` 密码。 遇到 `TNS:协议适配器错误` 的问题,可能有三个原因:首先,检查监听服务(如 `OracleHOME92TNSListener`)是否已经启动;其次,确认数据库实例(如 `oralceserviceXXX`,其中 `XXX` 是 SID,例如 `zhulin`)是否已启动;最后,如果问题仍然存在,可能是注册表中的 `ORACLE_SID` 设置不正确,需要在 `HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_OraDb11g_home1` 下修改 `ORACLE_SID` 值为正确的全局数据库名和SID。 当提示 `ORA-01017: invalid username/password; logon denied` 错误时,这意味着用户名或密码输入错误。如果你在安装过程中修改了默认的 `sys` 或 `system` 密码,但忘记了新密码,可以通过以 `sys` 用户以 `sysdba` 角色登录,执行 `alter user system identified by manager;` 和 `alter user sys identified by manager;` 来重置密码。 对于 `scott` 用户,如果账户被锁定,可以使用 `system` 用户登录后,执行 `alter user scott account unlock;` 解锁该账户。需要注意的是,所有的SQL语句应以分号(;)结束,以确保命令的正确执行。 在Oracle开发中,`sqlplus` 是一个基础的命令行工具,而 `sqldeveloper` 或 `sqlplusw` 提供了图形化的用户界面,使得数据库操作更为便捷。这些工具能够帮助用户编写、运行SQL查询,管理数据库对象,以及执行各种数据库维护任务。 这份文档涵盖了Oracle的基础知识,包括用户管理、连接数据库、错误排查和解锁用户等操作,对于初学者了解和掌握Oracle数据库的使用非常有帮助。