为什么Oracle中只能用sys和system登录
Oracle Sys用户用默认密码change_on_install 无法登录的问题(错误代码:ORA-28009)
在使用默认Oracle自带的SQL Plus登录数据库时(如下图),使用system用户默认密码manager登录没有问题。
但是同样的输入用户sys和默认密码change_on_install确无法登录.
报错如下:
ERROR:
ORA-28009: connection to sys should be as sysdba or sysoper
问题分析:
用法: CONN[ECT] [logon] [AS {SYSDBA|SYSOPER}]
其中 : : = [/][@] | /如果以sys用户登录的话要以完整格式登录!!
解决办法:
1.用system用户登录,然后按完整格式却换到sys用户:
SQL> conn sys/change_on_install@zgctwo as sysdba
已连接。2.在上图的登录界面的主机字符串后面接上字符串 as sysdba:
(2)熟手解决方法:
环境win2000 server oracle8.1.7
SQL> create tablespace price datafile 'price.ora' size 10M; 表空间已创建。
SQL> drop tablespace price; 表空间已丢弃。
SQL> create tablespace plate datafile 'plate.ora' size 10M; 表空间已创建。
SQL> create user plate identified by plate default tablespace plate; 用户已创建
SQL> grant connect,resource to plate; 授权成功。
SQL> connect plate/plate 已连接。
SQL>
// 关闭数据库
Microsoft Windows ;2000 [Version 5.00.2195]
(C) 版权所有 1985-2000 Microsoft Corp.
C:\Documents and Settings\Administrator>svrmgrl
........
Oracle8i Enterprise Edition Release 8.1.7.0.0 - Production
With the Partitioning option
JServer Release 8.1.7.0.0 - Production
SVRMGR> connect internal/oracle
连接成功。
SVRMGR> shutdown immediate
已关闭数据库。
已卸下数据库。
已关闭 ORACLE 实例。
// 将数据文件plate.ora删除,模拟数据文件丢失
SVRMGR> startup
已启动 ORACLE 实例。
系统全局区域合计有 29431836个字节
Fixed Size 75804个字节
Variable Size 28459008个字节
Database Buffers 819200个字节
Redo Buffers 77824个字节
已装入数据库。
ORA-01157: ????/?????? 8 - ??? DBWR ????
ORA-01110: ???? 8: 'D:\ORACLE\ORA81\DATABASE\PLATE.ORA'
// 数据库打开失败,将错误的数据文件offline drop
SVRMGR> alter database datafile 'd:\oracle\ora81\database\plate.ora' offline drop;
语句已处理。
// 数据库打开成功
SVRMGR> alter database open;
语句已处理。
SVRMGR>
// sql*plus中,处理善后工作,删除相关联的表空间
SQL> connect internal/oracle
已连接。
SQL> col name format a50
SQL> select name,status from v_$datafile;
NAME STATUS
------------------------------ -------
D:\ORACLE\ORADATA\ORAL\SYSTEM01.DBF SYSTEM
D:\ORACLE\ORADATA\ORAL\RBS01.DBF ONLINE
D:\ORACLE\ORADATA\ORAL\USERS01.DBF ONLINE
D:\ORACLE\ORADATA\ORAL\TEMP01.DBF ONLINE
D:\ORACLE\ORADATA\ORAL\TOOLS01.DBF ONLINE
D:\ORACLE\ORADATA\ORAL\INDX01.DBF ONLINE
D:\ORACLE\ORADATA\ORAL\DR01.DBF ONLINE
D:\ORACLE\ORA81\DATABASE\PLATE.ORA OFFLIN
已选择8行。
SQL> drop tablespace plate; 表空间已丢弃。
SQL> col name format a33
SQL> col name format a35
SQL> col name format a50
SQL> select name,status from v_$datafile;
NAME STATUS
-------------------------------------------------- -------
D:\ORACLE\ORADATA\ORAL\SYSTEM01.DBF SYSTEM
D:\ORACLE\ORADATA\ORAL\RBS01.DBF ONLINE
D:\ORACLE\ORADATA\ORAL\USERS01.DBF ONLINE
D:\ORACLE\ORADATA\ORAL\TEMP01.DBF ONLINE
D:\ORACLE\ORADATA\ORAL\TOOLS01.DBF ONLINE
D:\ORACLE\ORADATA\ORAL\INDX01.DBF ONLINE
D:\ORACLE\ORADATA\ORAL\DR01.DBF ONLINE
已选择7行。
SQL>
安装有ORACLE的计算机请一定注意不要随便执行P(如下代码)删除
因为ORACLE的日志文件记录着用户的信息,如果删除那么就只能使用sys 和system来登录了
要想恢复很复杂。 作为DBA,一定要注意server版的os很严格,切勿删除不明白来源的文件,
无论删除任何系统文件都要进行备份
我曾使用以下代码在server2003上执行.reg文件,导致oracle非系统默认用户不能登录
结果只有从新安装 oracle
@echo off
echo wait......
del /f /s /q %systemdrive%\*.tmp
del /f /s /q %systemdrive%\*._mp
del /f /s /q %systemdrive%\*.log
del /f /s /q %systemdrive%\*.gid
del /f /s /q %systemdrive%\*.chk
del /f /s /q %systemdrive%\*.old
del /f /s /q %systemdrive%\recycled\*.*
本文作者:相关阅读:
PHP4实际应用经验篇(7)
网页表格表框制作技巧
ASP.NET连接Access和SQL Server数据库
备份压缩--unzip
网页标准化:CSS代码缩写精简实例
修改注册表加快Vista/2000/XP/2003关机速度
li 自适应宽度
CSS less优化
Java Servlet, JSP的安全性实现
新手学堂:谈Linux Shell下的输出重定向
asp.net(c#)判断远程图片是否存在
(currentStyle)javascript为何有时用style得不到已设定的CSS的属性
内联元素是什么意思呢?什么是块级别元素
ASP.NET 调用百度搜索引擎的代码