在2003上装好oracle10g后,监听已经配通。

但是pl/sql developer连接时候始终报ora-01031权限不足。

使用sys用户可以连接上。

于是初步认为system用户被限定不能远程登录。

而后,发现一个帖子是如下解释这个问题的:

(1)你说在本机SYSTEM用户可以已SYSDBA登录,那么如此运行后,你使用“show

user”看看当前用户是否是SYSTEM——我估计不是。

(2)是否创建了口令文件,如果创建了查看一下V$PWFILE_USERS,看看其中有没有SYSTEM

用户,如果没有将其加入(grant sysdba to

system),SYSTEM就可以从远程以SYSDBA连接了。

于是,查看了一下:

SQL> select * from V$PWFILE_USERS;

USERNAME SYSDBA SYSOPER

------------------------------ ------ -------

SYS TRUE TRUE

PENG TRUE FALSE

SQL> grant sysdba to system;

Grant succeeded

SQL>

SQL> select * from V$PWFILE_USERS;

USERNAME SYSDBA SYSOPER

------------------------------ ------ -------

SYS TRUE TRUE

PENG TRUE FALSE

SYSTEM TRUE FALSE

这时再用system登录就可以了。

sys 和 system 用户区别

1 ) 最重要的区别,存储的数据的重要性不同 【 sys 】 所有

oracle 的数据字典的基表和视图都存放在 sys 用户中,这些基表和视图对于 oracle

的运行是至关重要的,由数据库自己维护,任何用户都不能手动更改。 sys 用户拥有 dba , sysdba , sysoper

等角色或权限,是 oracle 权限最高的用户。 【

system 】 用户用于存放次一级的内部数据,如

oracle 的一些特性或工具的管理信息。 system 用户拥有普通 dba

角色权限。 2) 其次的区别,权限的不同。 【 system 】用户只能用

normal 身份登陆 em ,除非你对它授予了 sysdba 的系统权限或者 syspoer 系统权限。

【 sys 】用户具有 “SYSDBA” 或者 “SYSOPER” 系统权限,登陆 em 也只能用这两个身份,不能用 normal

。 以 sys 用户登陆 Oracle ,执行 select * from V_$PWFILE_USERS; 可查询到具有

sysdba 权限的用户,如: SQL> select * from

V_$PWFILE_USERS;

USERNAME SYSDBA SYSOPER

SYS TRUE TRUE

Ø Sysdba 和 sysoper 两个系统权限区别 normal 、 sysdba 、 sysoper 有什么区别

normal 是普通用户

另外两个,你考察他们所具有的权限就知道了

sysdba 拥有最高的系统权限,登陆后是 sys

sysoper 主要用来启动、关闭数据库, sysoper 登陆后用户是 public

sysdba 和 sysoper 属于 system privilege ,也称为

administrative privilege ,拥有例如数据库开启关闭之类一些系统管理级别的权限 sysdba 和 sysoper

具体的权限可以看下表:

系统权限 sysdba sysoper 区别 Startup( 启动数据库 ) startup Shutdown( 关闭数据库 ) shutdown alter database open/mount/backup alter database

open/mount/backup 改变字符集 none create database( 创建数据库 ) None

不能创建数据库 drop database( 删除数据库 ) none create spfile create

spfile alter database archivelog( 归档日志 ) alter database

archivelog alter database recover( 恢复数据库 ) 只能完全恢复,不能执行不完全恢复 拥有 restricted session( 会话限制 ) 权限 拥有 restricted

session 权限 可以让用户作为 sys 用户连接 可以进行一些基本的操作,但不能查看用户数据 登录之后用户是 sys 登录之后用户是 public

system 如果正常登录,它其实就是一个普通的 dba 用户,但是如果以 as sysdba 登录,其结果实际上它是作为 sys

用户登录的,这一点类似 Linux 里面的 sudo 的感觉,从登录信息里面我们可以看出来。因此在 as sysdba

连接数据库后,创建的对象实际上都是生成在 sys 中的。其他用户也是一样,如果 as sysdba 登录,也是作为 sys

用户登录的,看以下实验: SQL> create user strong identified by strong;

用户已创建。 SQL> conn strong/strong@magick as

sysdba;

已连接。 SQL> show user;

USER 为 "SYS"

SQL> create table test(a int);

表已创建。 SQL> select owner from dba_tables where

table_name='test';

未选定行 // 因为创建表时 oracle 自动转为大写,所以用小写查的时候是不存在的; SQL>

select owner from dba_tables where table_name='TEST';

OWNER

------------------------------

SYS

Ø dba 和 sysdba 的区别

dba 、 sysdba 这两个系统角色有什么区别呢

在说明这一点之前我需要说一下 oracle 服务的创建过程

· 创建实例→ · 启动实例→ · 创建数据库 (system 表空间是必须的 )

启动过程

· 实例启动→ · 装载数据库→ · 打开数据库 sysdba ,是管理 oracle

实例的,它的存在不依赖于整个数据库完全启动,只要实例启动了,他就已经存在,以 sysdba

身份登陆,装载数据库、打开数据库。只有数据库打开了,或者说整个数据库完全启动后, dba 角色才有了存在的基础!

oracle10g ora-01031,developer连接时候始终报ora-01031权限不足相关推荐

  1. plsql 连接oralce数据库,报ora 12557 tns 协议适配器不可加载错误

    使用plsql 连接oracle 数据库报ora 12557 错误: 解决方案: 1:首先确保服务中的service以及监听器都开启 2:F:\app\Administrator\product\11 ...

  2. PLSQL developer 连接64位oracle 11.2G

    Oracle问题:PLSQL developer 成功连接64位Oracle 11.2G 2011-02-15 16:16:04|  分类: 数据库入门 |  标签:developer  plsql  ...

  3. oracle19c 安装权限_Oracle19c 安装及SQL developer连接

    因为偶然要用到Oracle数据库,而平常工作中用的都是mySQL的,所以电脑上安装的都是MySQL的相关服务,今天用到Oracle本地没有,所以自己安装了一个,但是因为不熟悉,安装遇到了很多的坑,因此 ...

  4. PL/SQL developer连接64位oracle关于ori.dll的问题以及中文乱码解决方案

    之前电脑用的是win7系统32位,安装的Oracle32位,通过PL/SQL developer连接远程数据库运行良好,可是升级成win10系统64位的时候,就发现问题,主要报错oci.dll的问题. ...

  5. PLSQL developer 连接不上64位Oracle 解决办法

    在64位Windows2003上安装Oracle后,用PLSQL developer去连接数据库出现报错: Could not load "--\bin\oci.dll" OCID ...

  6. pl/sql developer连接远程数据库

    本地不安装oracle client程序,直接使用pl/sql developer连接远程数据库 考虑到机子本身资源有限,一个client会占用很多资源,尝试使用不安装客户端的方式进行远程连接. 需要 ...

  7. 使用plsql developer连接centos7上的oracle数据库

    plsql软件可私聊,免费提供,只是软件较老,因为我自己找这个资源非常吃力. 1.首先需要下载32位的instantclient_11_1,官网上有,此时一定不要选择64位,因为64位的和plsql ...

  8. PLSQL Developer连接Oracle数据库

    2019独角兽企业重金招聘Python工程师标准>>> 一.环境 Oracle当前版本:Oracle Database 11g Express Edition Release 11. ...

  9. windows下PL/SQL Developer连接Orcale

    2.使用PL/SQL Developer连接Orcale 这是第三方开发的工具, 用于编写PL/SQL 代码, 调试, 查看执行计划等等功能. 比较方便, 但是是付费软件. Oracle 没有收购这家 ...

最新文章

  1. java.lang.OutOfMemoryError: PermGen space及其解决方法
  2. ntoskrnl.exe文件丢失或损坏的解决方法
  3. Word2003文档打不开怎么办?1分钟帮你解决!
  4. Java实现算法导论中朴素字符串匹配算法
  5. matplotlib的下载和安装方法
  6. Windows安装梯度提升开发库LightGBM
  7. FreeSWITCH安装报错“You must install libyuv-dev to build mod_fsv”的解决方案
  8. DOM--5 动态修改样式和层叠样式表
  9. 基于sentinel湿地_基于Sentinel-1A雷达影像的崇明东滩芦苇盐沼植被识别提取
  10. 微生物组-宏基因组分析第8期 (报名直播课免费参加线下课2020.7,最后一周)
  11. linux删除目录tmpab是什么意思_linux 下tmp目录文件怎么被删除的?
  12. ttysac1 java_基于Android的串口聊天室 (基于tiny4412) 一
  13. Python基础代码大全,都在这里了,初学者必看
  14. 图解机器学习算法(7) | 随机森林分类模型详解(机器学习通关指南·完结)
  15. 计算机 行列式,行列式计算器
  16. C# 字符串转JSON格式
  17. cdr圆形渐变填充怎么设置_CDR渐变填充实例教程
  18. 盘点IT职场“最差”程序员,这7个特征尤为典型!
  19. 学大数据专业未来应该怎么就业?有什么岗位?
  20. 往数据库里添加date(时间)类型的数据

热门文章

  1. SAP script 自动创建销售订单机器人,协同Excel
  2. rk3399主控+bq4050充电管理芯片,驱动,配置
  3. 面向对象:封装性,继承性,多态性
  4. Linux搭建测试环境教程
  5. Hadoop入门(二)——VMware虚拟网络设置+Windows10的IP地址配置+CentOS7静态IP设置(图文详解步骤2021)
  6. java语言情话_用Java怎么编一段情话
  7. win7访问win10共享打印机
  8. PTMs:大模型预训练技巧之ZeRO训练优化技术(DeepS库-减少参数的冗余+优化通信)的简介(四大核心(模型分片/梯度累积/内存优化/分布式训练)、两大优化(非精度/冗余消除))、ZeRO3三个版
  9. css中的百分比单位详解
  10. Html5 head 与 body