`
qqdwll
  • 浏览: 131617 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

dba 与 sysdba

阅读更多
在日常的数据库维护过程中,有很多朋友为了权限赋予的方便,一般都会直接赋予新建用户dba角色。dba这个角色是数据库中权限非常大的,这里我们来看看如何通过一个dba角色来获得sysdba权限。

在dba角色的权限列表中有一项:alter user权限,这个权限可以允许我们修改数据库所有用户账户信息,包括sys用户的。

>alter user sys identified by mypassword;

这样修改之后你会发现,你可以使用修改后的密码来登入sys,这样你就获得了sys的权限。有时候由于sys密码频繁修改,或者长时间不用,导致密码丢失可以用这种方法很好的解决。 当然,如果觉得直接去修改原先的sys密码会很不安全,因为这会引起管理员的注意,只是需要使用之后再还回去,但又不知道原先的密码,不能通过上面的语句 修改回去,这个时候,可以用alter user 的另一个语句来实现

>alter user sys identified by values 's1213asdwe';

下面是个修改过程的例子。

SQL*Plus: Release 10.1.0.3.0 - Production on Wed Jun 30 19:41:28 2010 Copyright (c) 1982, 2004, Oracle. All rights reserved.
SQL> conn Enter user-name: justay
Enter password:
Connected.
SQL> select username,password from dba_users where username='SYS'; USERNAME PASSWORD -----------------
SYS 4001B8AE29A7B401
SQL> alter user sys identified by oracle;
User altered.
SQL> disconn
Disconnected from Oracle Database 10g Enterprise Edition Release 10.1.0.3.0 - Production With the Partitioning, OLAP and Data Mining options
SQL> conn
Enter user-name: sys as sysdba
Enter password:
Connected.
SQL> create user hideac identified by oracle;
User created.
SQL> grant sysdba to hideac;
Grant succeeded.
SQL> disconn
Disconnected from Oracle Database 10g Enterprise Edition Release 10.1.0.3.0 - Production With the Partitioning, OLAP and Data Mining options
SQL> conn
Enter user-name: justay
Enter password: Connected.
SQL> alter user sys identified by values '4001B8AE29A7B401'; --将sys用户密码还原 User altered.

从上面可以看出在拥有dba权限的情况下,新建了一个拥有sysdba权限的用户hideac。 这个现象告诉我们
1.不要轻易给一个用户dba权限。
2.如果非要给dba权限,请修改sys为OS验证,并确保数据库服务器操作系统口令的安全

3.当然,也可以revoke掉dba的grant权限和alter user权限

SQL>revoke alter user from dba
SQL>revoke grant any role from dba
SQL>revoke grant any privilege from dba
SQL>revoke grant any object privilege from dba


分享到:
评论

相关推荐

    dba和sysdba的区别

    关于SYS和DBASYS权限的区别介绍,可以帮助大家很好的了解这两种权限

    Sys和system用户、sysdba 和sysoper系统权限、dba角色的区别

    【sys】 所有oracle的数据字典的基表和视图都存放在sys用户中,这些基表和视图对于oracle的运行是至关重要的,由数据库自己维护,任何用户都...sys用户拥有dba,sysdba,sysoper等角色或权限,是oracle权限最高的用户。

    sys用户与system用户.txt

    sys 用户拥有 dba , sysdba , sysoper 等角色或权限,是 oracle 权限最高的用户。 【 system 】 用户用于存放次一级的内部数据,如 oracle 的一些特性或工具的管理信息。 system 用户拥有普通 dba 角色权限。 ...

    Oracle数据库的启动和关闭

    对于大多数Oracle DBA来说,启动和关闭Oracle数据库最常用的方式就是在命令行方式下的Server Manager。...Oracle数据库的新版本将逐步淘汰INTERNAL这个内部用户,所以我们最好还是设置DBA用户具有 SYSDBA权限。

    解决Oracle iSQL*Plus DBA 无法登陆

    自己写了一个批处理,直接运行BAT就行了,自己看着修改,这样 Oracle数据库的DBA WEB就可以管理了,老鸟绕过吧~ 我是编程新手~QQ:540117918 希望大家多支持!

    DBA常用命令

    2.sql>conn / as sysdba 3.sql>select open_mode from v$database; . . . . 二、导入: 导入表: #导入到hr impdp hr/hr directory=dump_dir dumpfile=tab.dmp tables=jobs #将hr导出的表导入到system ...

    Oracle中sys和system用户、系统权限和角色的区别

    sys用户拥有dba,sysdba,sysoper等角色或权限,是oracle权限最高的用户。 【system】 用户用于存放次一级的内部数据,如oracle的一些特性或工具的管理信息。system用户拥有普通dba角色权限。 2)其次的区别,权限的...

    Centos7.0下安装oracle12cR2-v6.0全流程

    4.$sqlplus / as sysdba 以 DBA 身份进入 sqlplus 5.SQL>startup 启动 db 2.停止 1.#su - oracle 切换到 oracle 用户且切换到它的环境 2.$lsnrctl stop 停止监听 3.$sqlplus / as sysdba 以 DBA 身份进入 sqlplus 4....

    oracle 常用命令大全

    oracle dba 常用命令 1 运行 SQLPLUS 工具 sqlplus 2 以 OS 的默认身份连接 / as sysdba 3 显示当前用户名 show user 4 直接进入 SQLPLUS 命令提示符 sqlplus /nolog 5 在命令提示符以 OS 身份连接 connect / as ...

    oracle dba 应该熟悉的命令

    1 运行SQLPLUS工具 sqlplus 2 以OS的默认身份连接 / as sysdba 3 显示当前用户名 show user 4 直接进入SQLPLUS命令提示符 sqlplus /nolog 5 在命令提示符以OS身份连接 connect / as sysdba 6 以SYSTEM的身份连接 ...

    Oracle通过sqlplus连接数据库的方式

    通过sqlplus可以连接数据库根据用户权限进行数据或者设定操作,这篇文章介绍一下常用的连接方式。 环境准备 使用Oracle的精简版创建docker方式的demo...uid=1000(oracle) gid=1000(dba) groups=1000(dba) oracle@e87

    oracle用户权限

    解决PL-sql里面system只能以sysdba身份登录,不能以normal身份登录

    Oracle中sys和system的区别小结

    (1)sys — sysdba system –sysoper (2)startup/shutdown/dba管理两个都能做 (3)sys拥有数据字典(dictionay),或者说dictionay属于sys schema (4)sysdba比sysoper多了一个create database的权限 3. SYSDBA ...

    Oracle 教程 Oracle Server

    每个 Oracle数据库对应唯一的一个实例名SID,Oracle数据库服务器启动后,一般至少有以下几个用户:Internal,它不是一个真实的用户名,而是具有SYSDBA优先级的Sys用户的别名,它由DBA用户使用来完成数据库的管理任务...

    Oracle大型数据库技术详解

    每个 Oracle数据库对应唯一的一个实例名SID,Oracle数据库服务器启动后,一般至少有以下几个用户:Internal,它不是一个真实的用户名,而是具有SYSDBA优先级的Sys用户的别名,它由DBA用户使用来完成数据库的管理任务...

    Rman备份与恢复

    SQL> conn / as sysdba (以DBA身份连接数据库) SQL> shutdown immediate; (立即关闭数据库) SQL> startup mount (启动实例并加载数据库,但不打开) SQL> alter database archivelog; (更改数据库为归档模式) SQL> ...

    Oracle DBA workshop1 (中文版)

    为了以SYSDBA 和SYSOPER 身份进行访问而设置iSQL*Plus 4-10 使用SQL*Plus 4-12 从Shell 脚本调用SQL*Plus 4-13 从SQL*Plus 调用SQL 脚本4-14 初始化参数文件4-15 简化初始化参数4-16 查看和修改初始化参数4-18 ...

    Oracle重建WMSYS用户及WMSYS.WM_CONCAT函数

    同时用户要有dba的权限(如通过system用户给新用户分配权限:grant connect, resource, dba to scott) 语法:@+文件路径 SQL>@$ORACLE_HOME\RDBMS\ADMIN\owmctab.plb; SQL>@$ORACLE_HOME\RDBMS\ADMIN\owmaggrs....

    oracle11g密码敏感取消

    conn sys /sunshine@mis as sysdba -- select * from dba_profiles -- SELECT * FROM V$PARAMETER; --去掉字符大小写敏感设置:禁止密码大小写敏感 show parameter sec_case_sensitive_logon alter system set sec_...

    DOS下启动oracle监听

    Sys和system用户、sysdba 和sysoper系统权限、dba角色的区别

Global site tag (gtag.js) - Google Analytics