oracle创建用户及权限说明文档
oracle 创建用户 及dmp文件导入
连接sha用户connect sha/admin可以创建别的用户5、查看用户权限进入sha用户connect sha/adminSelect * from user_sys_privs;可以查看到一个列表,列代表用户名权限是否可以给别的用户附加权限(N 、Y)行代表权限都有那些6、撤销用户授予的权限必须连接connect system/admin撤销权限revoke是系统撤销权限的关键词Revoke execute any procedure from sha;7、更改用户密码进入sha用户connect sha/adminPassword 输入旧密码输入新密码俩边OK或者用alter user sha identified by xinmima8、删除用户Connect system/adminDrop user sha;9、为用户授予角色Grant dba to sha;Grant connect to sha;Linux下的plsql 创建用户create user sha identified by adminDefault tablespace userTemporary tablespace temp;Granr unlimited tablespace to sha;//权限Grant dba to sha;//角色Grant connect to sha;准备工作(导出dmp文件)1.使用PL/SQL 工具--》导出用户对象,导出用户所有表,视图,存储过程等的定义2.使用PL/SQL 工具--> 导出表,导出所有表的数据这就是那个dmp文件保存好导出的sql脚本和dmp文件准备导入好了,开始导入1.删除用户drop user test cascade;2.删除全部表空间drop tablespace testdb INCLUDING CONTENTS;drop tablespace testdb_index INCLUDING CONTENTS;drop tablespace testdb_temp INCLUDING CONTENTS;3.重新创建表空间和用户并给用户授权CREATE TABLESPACE "DB_QQTB"LOGGINGDATAFILE 'D:\oracle\OraData\DB_QQTB01.ora' SIZE 2000M,'D:\oracle\OraData\DB_QQTB02.ora' SIZE 2000M, 'D:\oracle\OraData\DB_QQTB03.ora' SIZE 2000M EXTENT MANAGEMENT LOCALSEGMENT SPACE MANAGEMENT AUTO/CREATE TABLESPACE "DB_QQTB_INDEX"LOGGINGDATAFILE 'D:\oracle\OraData\DB_QQTB_INDEX.ora' SIZE 500M EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO/CREATETEMPORARY TABLESPACE "DB_QQTB_TEMP" TEMPFILE'D:\oracle\OraData\DB_QQTB_TEMP.ora' SIZE 200M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 1M/create user FZCXidentified by "FZCX"default tablespace DB_QQTBtemporary tablespace DB_QQTB_TEMPprofile DEFAULTquota unlimited on DB_QQTB。
Oracle安装及用户、角色和系统权限的配置(图文版)
Oracle安装及用户、角色和系统权限的配置一、Oracle的安装:1.找到Oracle安装目录,选择setup.exe,双击打开:2.在弹出的界面上输入数据库口令,然后点击【下一步】:3.弹出准备安装界面:4.当产品特定的先决条件检测都验证通过后,点击【下一步】:5.弹出如下界面:6.检测通过后,点击【安装】:7.弹出安装进度界面:8.安装完成后,点击【确定】:9.弹出安装结束界面,点击【退出】:10.在退出界面,点击【是】,即完成安装。
二、创建表空间:1、打开IE,在地址栏输入:http://localhost:1158/em/console/logon/logon,弹出如下界面:2、弹出如下界面,点击【我同意】:3、弹出如下界面,选择“管理”选项卡:4、在管理选项卡界面,点击存储->表空间:5、在表空间界面,点击【创建】:然后点击右下角的【添加】:“500MB”,点击【继续】:8、在弹出的页面,点击【确定】,完成对表空间的创建。
三、创建临时表空间:1、回到表空间界面,选择“TRAINDA TA”,点击【创建】:2、输入名称“traintemp”,在类型下面选择“临时”,点击【添加】:3、在文件名处输入“traintempfile”,文件大小选择“100MB”,增量选择“500MB”,点击【继续】:4、弹出如下界面,点击【确定】:5、完成对临时表空间的创建,如下所示:四、创建用户、角色和系统权限:一、创建用户和角色:1、在管理选项卡界面,点击方案->用户和权限->用户:2、弹出的界面,点击【创建】:临时表空间:“TRAINTEMP”:择,如下图:4、输入如上信息后,选择“角色”选项卡,点击【编辑列表】:击【确定】:6、弹出如下界面:二、创建系统权限:1、选择“系统权限”选项卡,点击【编辑列表】:2、将左侧“可用系统权限”中的“UNLIMITED TABLESPACE”移动到右侧的“所选系统权限”中,然后点击【确定】:3、弹出如下界面:4、点击【确定】按钮后,train用户就创建好了。
oracle数据库管理人员权限设置及分配表
一、概述Oracle数据库是当前企业中常用的数据库管理系统之一,而数据库管理人员在企业中扮演着至关重要的角色,他们负责数据库的管理与维护,包括权限设置与分配。
本文将探讨Oracle数据库管理人员权限设置及分配表的相关内容。
二、数据库管理员的权限1. 数据库管理员(DBA)是Oracle数据库中最高权限的用户,具有对数据库进行全面控制的特权。
他们可以创建、修改、删除数据库对象,分配SQL权限,管理数据库用户和角色等。
2. DBA用户的权限通常由系统管理员在安装数据库时创建,或是通过GRANT命令授予。
3. DBA用户可以通过GRANT和REVOKE命令控制其他用户的权限,以及管理数据库对象的安全性。
三、数据库操作员的权限1. 数据库操作员(DBO)是在数据库中具有一定权限的用户,通常负责对数据库进行日常操作。
2. DBO用户可以执行SELECT、INSERT、UPDATE、DELETE等操作,并且可以创建临时表和视图。
3. DBO用户的权限通常由DBA用户通过GRANT命令分配,可以根据需要灵活控制其权限范围。
四、权限设置的最佳实践1. 了解业务需求:在设置数据库用户的权限之前,需要充分了解企业的业务需求,确保每个用户都能够在权限范围内完成工作。
2. 分配最小权限原则:根据最小权限原则,应该仅分配用户所需的最低权限,以降低数据泄露和操作错误的风险。
3. 定期审计权限:定期对数据库用户的权限进行审计,及时发现和修复不合理的权限设置,保障数据库的安全性。
五、权限分配表的编制数据库管理人员需要编制一份权限分配表,清晰地记录每个用户的权限范围,确保权限设置的合理性与一致性。
权限分配表通常包括以下内容:1. 用户名称:列出数据库中所有的用户名称。
2. 权限说明:对用户的权限进行详细说明,包括SELECT、INSERT、UPDATE、DELETE等操作的权限范围。
3. 是否受限:记录是否对用户的权限进行了限制,比如是否禁止用户执行DROP TABLE等危险操作。
Oracle 创建用户
Oracle 创建用户创建一个新的数据库用户是使用CREATE USER 语句完成的,该语句一般是由DBA 用户来执行;如果要以其他用户身份创建用户,则要求用户必须具有CREATE USDER 系统权限。
每个用户在连接到数据库时,都需要进行身份验证。
身份验证可以通过操作系统进行,也可以通过数据库进行,或者通过独立的网络服务器进行。
数据库验证是指使用数据库来检查用户、密码以及连接用户的身份,该方式也是最常用的用户验证方式,因此本书重点介绍数据库验证方式。
采用数据库验证具有如下优点:● 用户账号及其身份验证全部由数据库控制,不需要借助数据库外的任何控制。
● 当使用数据库验证时,Oracle 提供了严格的密码管理机制,加强了密码的安全性。
如果使用数据库验证,则创建用户时必须提供连接密码,并且密码必须是单字节字符。
例如,下面的语句创建了一个用户ATG ,并为该用户指定了登录密码、默认表空间、临时表空间:SQL> connect system/password已连接。
SQL> create user developer2 identified by developer3 default tablespace user014 quota 10m on user015 temporary tablespace temp;用户已创建。
在上面的语句中,创建了一个名为DEVELOPER 的用户。
其中,子句IDENTIFIED BY 指定用户密码,该密码是用户的初始密码,在用户登录到数据库后可以对其进行修改。
DEFAULT TABLESPACE 子句为用户指定默认表空间,这样在建立数据库对象(表、索引和簇)时,如果不指定TABLESPACE 子句,Oracle 会自动在默认表空间上为这些对象分配空间。
TEMPORARY TABLESPACE 子句用于为用户指定临时表空间,当用户所执行的SQL 语句需要进行排序操作时,若临时数据尺寸超过PGA工作区,则会在该表空间上建立临时段。
oracle19c之用户、权限、表空间
oracle19c之⽤户、权限、表空间 ⼀、⽤户相关操作 1、查询⽤户select * from dba_users; --查询全库所有的⽤户select * from all_users; --查询当前⽤户可看到的⽤户select * from user_users; --查询当前登录的⽤户 2、创建⽤户(创建者需要有dba权限,⽤户名必须以c##开头,默认的表空间是users,新⽤户没有任何权限。
)create user c##sl IDENTIFIED BY 123456; 3、删除⽤户drop user c##sl2 cascade; --删除⽤户不会删除其表空间 注意:⽆法删除⽤户C##SL3,报错“[Err] ORA-01940: ⽆法删除当前连接“的⽤户解决⽅法:select username,sid,serial#,paddr from v$session where username='C##SL3';alter system kill session '17,55857'; 4、修改密码alter user c##sl3 identified by 1234; ⼆、权限相关操作 a、系统权限:⽤户在系统层⾯的权限,如CREATE SESSION、SELECT ANY TABLE等不依赖于对象的权限 b、对象权限:⽤户关于某个具体对象的权限,如SELECT、UPDATE、INSERT等依赖于表、视图、存储过程的权限 c、⾓⾊:⼀组权限的集合 注意:PUBLIC⽤户具有的权限,其他⽤户都会有,即修改PUBLIC⽤户的权限,其他⽤户也会对应得改变权限 1、查看权限、⾓⾊select * from user_tab_privs; --当前⽤户具有的对象权限select * from dba_tab_privs WHERE grantee='C##SL' OR grantor='C##SL'; --全部⽤户具有的对象权限,查询C##SL⽤户的select * from user_sys_privs; --当前⽤户具有的系统权限select * from dba_sys_privs WHERE grantee='C##SL'; --全部⽤户具有的系统权限,查询C##SL⽤户的SELECT * FROM user_role_privs; --当前⽤户具有的⾓⾊SELECT * FROM dba_role_privs where grantee='C##SL'; --全部⽤户具有的⾓⾊,查询C##SL⽤户的 注意:上⾯每⼀对查询出的结果应该⼀样,因为全部⽤户中肯定也包含当前⽤户,普通⽤户没有查询全部⽤户⾓⾊、权限表的权限 2、常⽤权限、⾓⾊dba 管理员⾓⾊connect 连接数据库⾓⾊,能修改、删除表及数据,不能创建表resource 能创建表create session 连接数据库权限create table 建表权限unlimited tablespace 操作表空间权限select any table 查询任何表的权限select on c##test.book 查询c##test⽤户的book表的权限 说明: a、⼀般来说,新建的普通⽤户后授予connect和resource⾓⾊就好了、如果是管理员需要再授予dba⾓⾊。
oracle如何创建用户并赋予权限
oracle如何创建⽤户并赋予权限本⽂将从⽤户创建讲起,特别讲述Oracle授予⽤户权限的⼀个实例,希望对⼤家了解Oracle授予⽤户权限有所帮助。
这两天在测数据库同步软件的时候,需要在Oracle⾥创建⼀个⽤户名和密码均为SYSDATA的⽤户,找了找资料,创建成功,现将Oracle中⽤户的创建和授予命令摘录下来:1、Linux 下Oracle的启动以Oracle⾝份登录启动lsnrctl start 登录sqplus /nolog连接数据库connect/assysdba 启动数据库startup关闭数据库shutdown immediate2、在数据中创建⽤户名启动数据库后创建⽤户名连接超级⽤户connect system/admin system 系统⽤户名字 admin 密码创建⽤户名字create user SYSDATA identified by admin ⽤户名:SYSDATA 密码:admin 可以写Default tablespace user//指定存储对象使⽤的默认空间表默认是system Temporary tablespace temp; //保存临时对象所使⽤的空间表默认是system 上⾯的俩⾏,可以写空间表为user临时为temp;不写就默认3、添加⽤户的权限Grant是Oracle授予⽤户权限的如:1.Grant create session to SYSDATA;//授予SYSDATA连接数据的权限系统权限如下:系统特权允许执⾏的操作Create session 连接数据库Create sequence 创建序列Create synonym 创建同名对象Create table 创建表Create any table 创建任何模式的表Drop table 删除表Create procedure 创建存储过程Execute any procedure 执⾏任何模式的存储过程Create user 创建⽤户Create view 创建视图Drop user 删除⽤户Drop any table 删除任何模式的表4、向⽤户授予系统特权1.Grant execute any procedure toSYSDATA with admin option此句意思为为sha⽤户创建系统特权并且可以⽤SYSDATA为别的⽤户授予权限连接SYSDATA⽤户connect SYSDATA/admin 可以创建别的⽤户5、查看⽤户权限进⼊SYSDATA⽤户connect SYSDATA/admin1.Select * from user_sys_privs;可以查看到⼀个列表,列代表⽤户名权限是否可以给别的⽤户附加权限(N、Y)⾏代表权限都有那些6、撤销⽤户授予的权限必须连接connect system/admin撤销权限revoke是系统撤销权限的关键词1.Revoke execute any procedure from SYSDATA;7、更改⽤户密码进⼊SYSDATA⽤户connect SYSDATA/admin Password输⼊旧密码输⼊新密码俩边OK 或者⽤alter user SYSDATA identified by xinmima8、删除⽤户1. Connect system/admin2.Drop user SYSDATA;9、为⽤户授予⾓⾊1. Grant dba to SYSDATA;2.Grant connect to SYSDATA;Linux下的plsql创建⽤户1. create user SYSDATA identified by admin2. Default tablespace user3. Temporary tablespace temp;4. Granr unlimited tablespace to SYSDATA;//权限5.Grant dba to SYSDATA;//⾓⾊。
ORACLE创建表空间、创建用户、更改用户默认表空间以及授权、查看权限(修改表空间大小)
ORACLE创建表空间、创建⽤户、更改⽤户默认表空间以及授权、查看权限(修改表空间⼤⼩)查询表空间路径:select * from dba_data_files删除表空间:正常情况下,删除表空间的正确⽅法为:DROP TABLESPACE tablespace_name INCLUDING CONTENTS AND DATAFILES;实例:1、CREATE TABLESPACE UCITDB_dataLOGGINGDATAFILE '/home/app/oracle/app/oracle/oradata/UCITDB/UCITDB_DATA01.DBF'SIZE 32MAUTOEXTEND ONNEXT 32M MAXSIZE 2048MEXTENT MANAGEMENT LOCAL;创建表空间UCITDB_data:⽤户表空间不限制表空间⼤⼩⽤:maxsize unlimited2、CREATE USER UCITDBA IDENTIFIED BY 111111DEFAULT TABLESPACE UCITDB_data;创建帐号并设置默认表空间UCITDBA:创建的帐号名111111:为设置帐号的密码修改⽤户默认表空间:alter user dbcenter default tablespace DBCENTER_DATA3、grant dba TO UCITDBA给⽤户授予权限dba:⽤户组UCITDBA:⽤户创建临时表空间:CREATE TEMPORARY TABLESPACE test_tempTEMPFILE 'C:\oracle\product\10.1.0\oradata\orcl\test_temp01.dbf'SIZE 32MAUTOEXTEND ONNEXT 32M MAXSIZE 2048MEXTENT MANAGEMENT LOCAL;创建⽤户表空间:CREATE TABLESPACE test_dataLOGGINGDATAFILE 'C:\ORACLE\PRODUCT\10.1.0\ORADATA\ORCL\TEST_DATA01.DBF'SIZE 32MAUTOEXTEND ONNEXT 32M MAXSIZE 2048MEXTENT MANAGEMENT LOCAL;创建⽤户并制定表空间:CREATE USER username IDENTIFIED BY passwordDEFAULT TABLESPACE TEST_DATATEMPORARY TABLESPACE TEST_TEMP;给⽤户授予权限:GRANTCREATE SESSION, CREATE ANY TABLE, CREATE ANY VIEW ,CREATE ANY INDEX, CREATE ANY PROCEDURE, ALTER ANY TABLE, ALTER ANY PROCEDURE,DROP ANY TABLE, DROP ANY VIEW, DROP ANY INDEX, DROP ANY PROCEDURE,SELECT ANY TABLE, INSERT ANY TABLE, UPDATE ANY TABLE, DELETE ANY TABLETO username;将role这个⾓⾊授与username,也就是说,使username这个⽤户可以管理和使⽤role所拥有的资源GRANT role TO username;-----------------------------------------------查看⽤户权限---------------------------------------------------------查看所有⽤户:SELECT * FROM DBA_USERS;SELECT * FROM ALL_USERS;SELECT * FROM USER_USERS;查看⽤户系统权限:SELECT * FROM DBA_SYS_PRIVS;SELECT * FROM USER_SYS_PRIVS;查看⽤户对象或⾓⾊权限:SELECT * FROM DBA_TAB_PRIVS;SELECT * FROM ALL_TAB_PRIVS;SELECT * FROM USER_TAB_PRIVS;查看所有⾓⾊:SELECT * FROM DBA_ROLES;查看⽤户或⾓⾊所拥有的⾓⾊:SELECT * FROM DBA_ROLE_PRIVS;SELECT * FROM USER_ROLE_PRIVS;------遇到no privileges on tablespace 'tablespace 'alter user userquota 10M[unlimited] on tablespace;oracle表空间增加和修改数据⽂件1、增加数据⽂件alter tablespace tablespace_name add datafile '/usr/app/oracle/oradata/dbm/UCITDB_DATA01.DBF' size 10240M;2、⼿⼯改变数据⽂件尺⼨alter database datafile '/usr/app/oracle/oradata/dbm/UCITDB_DATA01.DBF' resize 2048M;3、容许数据⽂件⾃动扩展alter database datafile '/usr/app/oracle/oradata/dbm/UCITDB_DATA01.DBF' autoextend on next 200M maxsize 30G; (解决oracle:ora 00017 01659错误)。
oracle增删改表空间和用户授权及权限
oracle创建表空间、用户如果是在Windows系统下,请先点击“开始”,然后点“运行”,输入cmd并点击“确定”,打开命令行窗口如果是在Linux的图形窗口,请右键点击桌面并点击“打开终端”,然后输入su - oracl 做好上述准备工作以后,输入以下命令:sqlplus /nolog回车后,将出现提示符SQL>这时输入conn / as sysdba一般即可登录,如果失败的话,可以试一下用conn sys/sys用户的密码as sysdba来重试一下接下来,我们看看您当前的数据库文件一般都是放在哪里的:select name from v$datafile;windows下可能看到的结果如下:SQL> select name from v$datafile;NAME--------------------------------------------------------------------------------D:\oracle\oradata\orcl\system01.dbfD:\oracle\oradata\orcl\undotbs01.dbfD:\oracle\oradata\orcl\cwmlite01.dbfD:\oracle\oradata\orcl\drsys01.dbfD:\oracle\oradata\orcl\indx01.dbfD:\oracle\oradata\orcl\tools01.dbf说明您的数据文件是放在D:\oracle\/oradata\orcl\ 这个目录下的Linux下可能看到的结果如下:SQL> select name from v$datafile;NAME--------------------------------------------------------------------------------/oracle/oradata/orcl/system01.dbf/oracle/oradata/orcl/undotbs01.dbf/oracle/oradata/orcl/cwmlite01.dbf/oracle/oradata/orcl/drsys01.dbf/oracle/oradata/orcl/indx01.dbf/oracle/oradata/orcl/tools01.dbf说明您的数据文件是放在/oracle/oradata/orcl/ 这个目录下的好,我们可以开始创建数据库表空间了,创建数据库表空间的命令格式如下:create tablespace 表空间名datafile '对应的文件名' size 大小;举例如下:对于上述的windows情况:create tablespace wbppcs datafile 'D:\oracle\oradata\orcl\wbppcs.dbf' size 3000m;3000m指的是3000MB对于上述的Linux的情况:create tablespace wbppcs datafile '/oracle/oradata/orcl/wbppcs.dbf' size 3000m;至此,所需的表空间已建立接下来我们开始创建用户,创建用户的命令格式如下:create user 用户名identified by 密码default tablespace 用户默认使用哪一个表空间;修改用户的权限:grant 角色1,角色2 to 用户名;举例如下:create user wbppcs identified by wbppcs123 default tablespace wbppcs;给用户授权:grant dba, connect to wbppcs;=============================================================================== ==============================================================oracle创建表空间和用户授权SYS用户在CMD下以DBA身份登录:在CMD中打sqlplus/nolog //匿名登录然后再conn/as sysdba //以dba身份登录//创建临时表空间create temporary tablespace bigoa_temptempfile 'E:\oracle\product\10.2.0\oradata\orcl\bigoa_temp.dbf'size 50mautoextend onnext 50m maxsize 2048mextent management local;//创建数据表空间create tablespace bigoaloggingdatafile'E:\oracle\product\10.1.0\oradata\orcl\bigoa.dbf'size 50mautoextend onnext 50m maxsize 2048mextent management local;//查看数据表空间select tablespace_name from dba_data_files;//创建用户并指定表空间create user swoa identified by oadefault tablespace bigoatemporary tablespace temp;//给用户授予权限grant connect,resource,dba,CTXAPP,create view to swoa;以后以该用户登录,创建的任何数据库对象都属于user_temp和user_data表空间,这就不用在每创建一个对象给其指定表空间了//修改用户口令alter user user_name identified by password;撤权:revoke 权限... from 用户名;删除用户命令drop user swoa cascade;//删除表空间drop tablespace bigoa_temp including contents and datafiles cascade constraints;//including contents 删除表空间的内容,如果删除表空间之前表空间中有内容,而未加此参数,表空间删不掉//cascade constraints 同时删除tablespace中表的外键参照//数据导出注:退出到cmd命令下再运行下列命令1、将数据库TEST完全导出,用户名system密码manager,导出到D:daochu.dmp中exp pobaoa/oa@orcl file=d:/zyoa0809.dmp full=y //不用加full=y,加上的意思是连同系统表一起导出exp sjsoa/oa@orcl file=d:/sjsoa1224.dmp full=y //不用加full=y,加上的意思是连同系统表一起导出2、将数据库中system用户与sys用户的表导出exp system/manager@TEST file=d:daochu.dmp owner=(system,sys)3、将数据库中的表inner_notify notify_staff_relat导出exp aichannel/aichannel@TESTDB2 file=d:datanewsmgnt.dmp tables=(inner_notify,notify_staff_relat)exp swoa/oa@orcl file=f:/swoa11.dmp tables=(OA_CALENDAR)exp bigoa/bigoa@orcl file=f:/bigoatemp.dmp tables=(OA_CALENDAR)4、将数据库中的表table1中的字段field1以“00”开头的数据导出exp system/manager@TEST file=d:daochu.dmp tables=(table1) query="where filed1 like '00%'"//数据导入注:退出到cmd命令下再运行下列命令1、将D:daochu.dmp中的数据导入TEST数据库中imp aichannel/aichannel@HUST full=y file=d:datanewsmgnt.dmp ignore=y有的表已经存在,所以会报错,加上ignore=y就可以了imp pobaoa/oa@orcl file=f:\zyoa0916.dmp full=y ignore=yimp sjsoa/oa@orcl file=f:/bigoatemp.dmp full=y2、将d:daochu.dmp中的表table1导入imp system/manager@TEST file=d:daochu.dmp tables=(table1)select INSTANCEID,NID,TITLE,NODENAME,ASSIGNER,NODEBEGIN,initiatorname,'办理状态'As blzt from view_wf_todo where actor='%USERID%' order by nodebegin descsqlplus / as sysdba。
oracle_创建create_user_及授权grant_查看登陆的用户及更改用户默认表空间
oracle 创建create user 及授权grant 查看登陆的用户:以下都可以:show user;select sys_context('userenv','session_user') from dual;select user from dual;查看所有登录的用户必须为DBA 用户:select username from v$session;sys、system等DBA 用户查看其他用户(test)中的对象(表):SQL> select * from test.student;创建一个普通用户都把该用户用起来的流程:1、创建用户SQL>create user test indentified by test;这样就创建了一个用户名密码都为test的用户但这个时候test还是不能登陆成功的,我们需要赋予相应的权限2、赋予create session的权限SQL>grant create session to test;这样test用户就能成功登陆进去但是此时用户还是不能创建表我们需要赋予用户创建表的权限:SQL>grant create table to test;但是用户此时还不能创建表因为需要有使用表空间的权限(相当于用户有了进房间的钥匙但是没有进大门的钥匙。
)所以也应该赋予相应的权限SQL>grant unlimited tablespace to test;这个时候用户就拥有了创建表的权限由于表是用户test的相应的他就拥有了对创建的表的增删查改的权限了3、查看用户拥有什么权限可以通过查询一个系统的视图(数字字典)SQL>select * from user_sys_privs;这样就可以知道当前用户的权限4、撤销权限SQL> revoke create table from test;-----------------------------一些常用视图的区分dba_tables dba_all_tables user_tables user_all_tables all_tables all_all_tables当前用户所属的所有表(注意大写)SQL> select tablespace_name,table_name from user_all_tables where table_name='STUDENT'; SQL> select table_name,tablespace_name from user_tables where table_name='STUDENT'; TABLE_NAME TABLESPACE_NAME------------------------------ ------------------------------STUDENT USERSsys 要查看dba_all_tables,ALL_ALL_TABLES才能查看到test 用户的表。
Oracle用户及权限管理
25
2014年5月28日星期三
Oracle数据库管理
Oracle 数据库管理
课堂训练-3
1、设置用户密码失效 2、并测试是否修改成功
26
2014年5月28日星期三
Oracle数据库管理
Oracle 数据库管理
锁定和解除用户锁定
如果要禁止某个用户访问Oracle 系统,那么最好的方式是锁定该用户,而不 是删除该用户。锁定用户并不影响该用户所拥有的对象和权限,这些对象和权限依 然存在,只是暂时不能以该用户的身份访问系统。当锁定解除后,该用户可以正常 地访问系统、按照自己原有的权限访问各种对象。
Oracle 数据库管理
本讲目标
能初步掌握用户的管理 能初步掌握用户权限的管理 能初步掌握角色的管理
3
2014年5月28日星期三
Oracle数据库管理
Oracle 数据库管理
1、用户与模式的关系
用户:Oracle用户是用于连接数据库和访问数据库对象的。 模式(方案):是用户所拥有的数据库对象的集合,模式对象是数 据库数据的逻辑结构
其中
在创建用户时,创建者必须具有create user系统权限。
user_name指定将要创建的新数据库用户名称。 Password指定该新数据库用户的密码。 def_tablespace指定存储该用户所创建对象的默认表空间。 temp_tablespace指定存储临时对象的默认表空间。
18
15
2014年5月28日星期三
Oracle数据库管理
Oracle 数据库管理
oracle的normal 、 sysdba 、 sysoper 有什么区别 ?
注意:system 如果正常登录,它其实就是一个普通的 dba 用户,但是 如果以 as sysdba 登录,其结果实际上它是作为 sys 用户登录的。其 他用户也是一样,如果 as sysdba 登录,也是作为 sys 用户登录的。
Oracle新建用户、角色,授权,建表空间
Oracle新建用户、角色,授权,建表空间oracle数据库的权限系统分为系统权限与对象权限。
系统权限( database systemprivilege )可以让用户执行特定的命令集。
例如,create table权限允许用户创建表,grant any privilege 权限允许用户授予任何系统权限。
对象权限( database object privilege )可以让用户能够对各个对象进行某些操作。
例如delete权限允许用户删除表或视图的行,select权限允许用户通过select从表、视图、序列(sequences)或快照(snapshots)中查询信息。
每个oracle用户都有一个名字和口令,并拥有一些由其创建的表、视图和其他资源。
oracle角色(role)就是一组权限(privilege)(或者是每个用户根据其状态和条件所需的访问类型)。
用户可以给角色授予或赋予指定的权限,然后将角色赋给相应的用户。
一个用户也可以直接给其他用户授权。
一、创建用户oracle内部有两个建好的用户:system和sys。
用户可直接登录到system用户以创建其他用户,因为system具有创建别的用户的权限。
在安装oracle时,用户或系统管理员首先可以为自己建立一个用户。
例如:Sql代码create user user01 identified by u01;该命令还可以用来设置其他权限,详细情况参见自学资料。
要改变一个口令,可以使用alter user命令:<span style="white-space: pre;"> alter user user01 identified by usr01;</span><span style="white-space: pre;"><span style="white-space: normal;"> </span> </span>现在user01的口令已由“u01”改为“usr01”。
oracle数据库用户创建、权限分配,以及导入,导出数据
下面数据库所用的版本为ORACLE 9I (9.2.0),安装数据库时,数据库系统会创建一个数据库实例,其中:安装目录选为:\oracle,数据库名与数据库SID号都输入:ora9i数据库安装完成后,有两个系统级的用户:1、system 默认密码为:manager2、sys 默认密码为:change_on_install在安装的数据库目录中找到\oracle\product\9.2\bin 中的sqlplus程序,运行:./sqlplus system/manager@ora9i用system用户创建自己的用户、权限;sql语句如下:1、创建用户:create user username identified by pwd default tablespace users Temporary TABLESPACE Temp;2、用户授权grant connect,resource,dba to business;3、提交:commit;如上面所述利用sqlplus以username 用户登陆,专输入:@创建数据库的脚本名称.sql回车,即可创建数据库中的表、视图、存储过程等。
如上面所述利用sqlplus以username 用户登陆,假设有两个数据库 9.0.1 与 9.0.21.导出数据exp system用户/system的密码@服务器名 owner用户名=“oradial ” fi le="oradial.dmp"说明:(1) 如果该命令是在本地执行,则不用指定服务器名(2) owner用户名,通过sys用户的登录所创建的用户名。
同时授予的权限包括connect , dba , resource ,还要创建表空间。
(3) system用户名,owner用户名是9.0.1数据库中的用户2.导入数据imp system用户/system的密码@服务器名 file=oradial.dmp fromuser(用户名)=oradial touser(用户名)=abc说明:(1) 如果该命令是在本地执行,则不用指定服务器名(2) touser用户名,通过sys用户的登录所创建的用户名。
oracle,创建用户,授予用户各种权限;ORA-01939错误;ORA-01950错误;。。。
oracle,创建⽤户,授予⽤户各种权限;ORA-01939错误;ORA-01950错误;。
...3个默认的⽤户:sys orcl [as sysdba]system orclscott tiger创建⽤户:create user gis /*⽤户名*/ identified by gis /*密码*/ ;PRIVILEGE:权限系统权限:grant(revoke) create session to(from) gis;grant(revoke) create table to(from) gis;grant(revoke) unlimited tablespace to(from) gis;grant create seesion to public; #将权限授予所有⽤户。
select * from user_sys_privs; 查看当前⽤户的系统权限。
对象权限:grant(revoke) select on mytable to(from) gis;grant(revoke) all on mytable to(from) gis;select * from user_tab_privs; #查看当前⽤户的表的对象权限:对象权限可以控制到列(只能插⼊和更新控制到列):select * from user_col_privs; #查看当前⽤户的列的对象权限:1) grant update(name) on mytable to sagittys; #在gis⽤户上将mytable表的name列更新权限给sagittys⽤户update gis.mytable set name='laowang' where id=1;commit;2) grant insert(id) on mytable to sagittys;insert into gis.mytable(id) values(7);GRANTEE OWNER TABLE_NAME GRANTOR PRIVILEGE GRA HIE----- ------------------------------ ------------------------------ --GIS SAGITTYS SA SAGITTYS FLASHBACK NO NOGIS SAGITTYS SA SAGITTYS DEBUG NO NOGIS SAGITTYS SA SAGITTYS QUERY REWRITE NO NOGIS SAGITTYS SA SAGITTYS ON COMMIT REFRESH NO NOGIS SAGITTYS SA SAGITTYS REFERENCES NO NOGIS SAGITTYS SA SAGITTYS UPDATE #更新 NO NOGIS SAGITTYS SA SAGITTYS SELECT #查询 NO NOGIS SAGITTYS SA SAGITTYS INSERT #插⼊ NO NOGIS SAGITTYS SA SAGITTYS INDEX #索引 NO NOGIS SAGITTYS SA SAGITTYS DELETE #删除 NO NOGIS SAGITTYS SA SAGITTYS ALTER #修改 NO NO(在CMD中默认宽度到头了则不会规则的显⽰,此时将宽度设为400,set linesize 400,就ok了)语⾔分类:1、 DLL,数据定义语⾔CREATE,CREATE TABLE abc(a varchar(10),b char(10));ALTER,ALTER TABLE abc ADD c NUMBER; 加⼀个c的字段,数据符为NUMBER。
Oracle数据库创建用户的命令和方法
Oracle 权限设置一、权限分类:系统权限:系统规定用户使用数据库的权限。
(系统权限是对用户而言)。
实体权限:某种权限用户对其它用户的表或视图的存取权限。
(是针对表或视图而言的)。
二、系统权限管理:1、系统权限分类:DBA: 拥有全部特权,是系统最高权限,只有DBA才可以创建数据库结构。
RESOURCE:拥有Resource权限的用户只可以创建实体,不可以创建数据库结构。
CONNECT:拥有Connect权限的用户只可以登录Oracle,不可以创建实体,不可以创建数据库结构。
对于普通用户:授予connect, resource权限。
对于DBA管理用户:授予connect,resource, dba权限。
2、系统权限授权命令:[系统权限只能由DBA用户授出:sys, system(最开始只能是这两个用户)]授权命令:SQL> grant connect, resource, dba to 用户名1 [,用户名2]...;[普通用户通过授权可以具有与system相同的用户权限,但永远不能达到与sys用户相同的权限,system 用户的权限也可以被回收。
]例:SQL> connect system/managerSQL> Create user user50 identified by user50;SQL> grant connect, resource to user50;查询用户拥有哪里权限:SQL> select * from dba_role_privs;SQL> select * from dba_sys_privs;SQL> select * from role_sys_privs;删除用户:SQL> drop user 用户名 cascade; //加上cascade则将用户连同其创建的东西全部删除3、系统权限传递:增加WITH ADMIN OPTION选项,则得到的权限可以传递。
Oracle创建用户并给用户授权查询指定表或视图的权限
Oracle创建⽤户并给⽤户授权查询指定表或视图的权限⽤DNINMSV31账户登录数据库进⾏如下操作:CREATE USER NORTHBOUND IDENTIFIED BY NORTHBOUNDDEFAULT TABLESPACE "TBS_DNINMSV31"TEMPORARY TABLESPACE "TEMP2"QUOTA UNLIMITED ON "TBS_DNINMSV31";GRANT "CONNECT" TO NORTHBOUND;ALTER USER NORTHBOUND DEFAULT ROLE NONE;GRANT CREATE SESSION TO NORTHBOUND;GRANT SELECT ON "DNINMSV31"."V_DNDEVICE" TO NORTHBOUND;GRANT SELECT ON "DNINMSV31"."V_DNSUBNE" TO NORTHBOUND;GRANT SELECT ON "DNINMSV31"."V_DNPACKAGE" TO NORTHBOUND;GRANT SELECT ON "DNINMSV31"."V_DNPORT" TO NORTHBOUND;【注】:在⽤NORTHBOUND登录后查询的时候要在视图前加上DNINMSV31,否则会报表或视图不存在。
例如:select*from DNINMSV31.V_DNDEVICE; --可以正常执⾏select*from DNINMSV31.TB_DEVICE where rownum<5; --执⾏的时候会报表或视图不存在创建同义词供对⽅公司系统访问:CREATE SYNONYM V_DNDEVICE FOR DNINMSV31.V_DNDEVICE;CREATE SYNONYM V_DNSUBNE FOR DNINMSV31.V_DNSUBNE;CREATE SYNONYM V_DNPACKAGE FOR DNINMSV31.V_DNPACKAGE;CREATE SYNONYM V_DNPORT FOR DNINMSV31.V_DNPORT;第三⽅的系统直接通过这个同义词就可以访问到⽤户DNINMSV31中的视图。
oracle创建用户赋予权限,删除权限
oracle创建⽤户赋予权限,删除权限--删除⽤户及及⽤户下的所有数据drop user xxx cascade;--创建⽤户赋予密码create user xxx identified by1234;--赋予权限grant dba to xxx;--删除权限revoke dba from xxx;--赋予⽤户登录数据库的权限grant create session to xxx;--授予⽤户操作表的权限grant unlimited tablespace to xxx;grant create tablespace to xxx;grant alter tablespace to xxx;grant drop tablespace to xxx;grant manage tablespace to xxx;--撤销⽤户操作表空间的权限revoke unlimited tablespace from xxx;revoke create tablespace from xxx;revoke alter tablespace from xxx;revoke drop tablespace from xxx;revoke manage tablespace from xxx;grant create session to zhangsan;--授予zhangsan⽤户创建session的权限,即登陆权限grant unlimited session to zhangsan;--授予zhangsan⽤户使⽤表空间的权限grant create table to zhangsan;--授予创建表的权限grant drop table to zhangsan;--授予删除表的权限grant insert table to zhangsan;--插⼊表的权限grant update table to zhangsan;--修改表的权限grant select on tablename to zhangsan;--授予zhangsan⽤户查看指定表的权限grant drop on tablename to zhangsan--授予删除表的权限grant insert on tablename to zhangsan;--授予插⼊的权限grant update on tablename to zhangsan;--授予修改表的权限select*from user_sys_privs;--查看当前⽤户所有权限select*from user_tab_privs;--查看所⽤⽤户对表的权限select*from user_sys_privs;--查看当前⽤户所有权限select*from user_tab_privs;--查看所⽤⽤户对表的权限。
oracle创建用户赋权
oracle创建⽤户赋权1,创建表空间create tablespace hxzg_dataloggingdatafile 'C:\app\data\hxzg_data.dbf'size 50mautoextend onnext 50m maxsize 20480m ;2,创建⽤户create user db_hxzg identified by 123default tablespace hxzg_data;3,复权grant resource,connect to db_hxzg;4,给其他⽤户访问权限(db_hxzg以DBA权限登录)grant select any table to sun;创建create user sun identified by 123; //创建⽤户alert user sun identified by tiger; //修改密码删除drop user sun cascade; //删除⽤户及对象drop user sun; //删除⽤户授权1、默认的普通⽤户sun默认未解锁,不能进⾏那个使⽤,新建的⽤户也没有任何权限,必须授予权限grant create session to sun; //授予sun⽤户创建session的权限,即登陆权限grant unlimited tablespace to sun; //授予sun⽤户使⽤表空间的权限grant create table to sun; //授予创建表的权限grant drop any table to sun; //授予删除表的权限grant insert any table to sun; //插⼊表的权限grant update any table to sun; //修改表的权限grant all to public; //这条⽐较重要,授予所有权限(all)给所有⽤户(public)2、oralce对权限管理⽐较严谨,普通⽤户之间也是默认不能互相访问的,需要互相授权 grant select on tablename to sun;//授予sun⽤户查看指定表的权限 grant drop on tablename to sun;//授予删除表的权限 grant insert on tablename to sun;//授予插⼊的权限 grant update on tablename to sun;//授予修改表的权限 grant insert(id) on tablename to sun; grant update(id) on tablename to sun;//授予对指定表特定字段的插⼊和修改权限,注意,只能是insert和update grant alert all table to sun;//授予sun⽤户alert任意表的权限撤销权限 基本语法同grant,关键字为revoke查看权限 select * from user_sys_privs;//查看当前⽤户所有权限 select * from user_tab_privs;//查看所⽤⽤户对表的权限权限传递 即⽤户A将权限授予B,B可以将操作的权限再授予C,命令如下: grant alert table on tablename to sun with admin option;//关键字 with admin option grant alert table on tablename to sun with grant option;//关键字 with grant option效果和admin类似⾓⾊ ⾓⾊即权限的集合,可以把⼀个⾓⾊授予给⽤户 create role myrole;//创建⾓⾊ grant create session to myrole;//将创建session的权限授予myrole grant myrole to sun;//授予sun⽤户myrole的⾓⾊ drop role myrole;删除⾓⾊。
Oracle创建用户教程
1 Create user 用户名 2 3 Identified by 密码 4 5 Default tablespace users 6 7 Temporary tablespace temp 8 9 Quota unlimited on users;
修改用户:
Alter user 用户名 identified by 口令(密码) defauTemporary tablespace temp //临时表空间 Quota unlimited on users
删除用户: Drop user 用户名[cascade] cascade 将会删除这个用户所拥有的所有对象。
授权: 授予用户dba的权限 Grant dba to 用户; [with admin option] (权限继承)
写出来第一个一样的代码以为是自己写的有问题才一直掉到循环里原来是次数量太大了
Oracle创 建 用 户 教 程
1. Oeacle客户端安装教程: 2. Oracle创建用户教程: 创建步骤:计算机-->管理-->应用程序与服务-->(OracleOraDb11g_home1TNSListener 和 OracleServiceORCL 服务)->启动服务 打开Oracle应用程序->输入用户名sys->输入密码->连接为SYSDBA->SQL window
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Oraclec创建用户
一、命令行创建用户具体步骤如下:
1.以管理员身份登录系统并创建一个新的表空间,操作如下:
操作如下:
2.
Next 5M maxsize 100M ;----每次扩大5M,但最大为100M
3.
Temporary tablespace test1_temp; ----设置临时表空间为test1_temp
4.
操作如下
5.
操作如下
6.最后提交即可。
Commit
二、表空间的增删改查
1.
2.
如下操作,其中标示出来的路径即为查询到的要更改的表空间的具体路径,将该路径加到语句2中的单引号处即可。
3.
4.
四、权限的设置
1.权限的分类:
系统权限:系统规定用户使用数据库的权限。
(系统权限是对用户而言)。
实体权限:某种权限用户对其它用户的表或视图的存取权限。
(是针对表或视图而言的)。
2.系统权限管理
DBA: 拥有全部特权,是系统最高权限,只有DBA才可以创建数据库结构。
RESOURCE: 拥有Resource权限的用户只可以创建实体,不可以创建数据库结构。
CONNECT: 拥有Connect权限的用户只可以登录Oracle,不可以创建实体,不可以创建数据库结构。
对于普通用户:授予connect, resource权限。
对于DBA管理用户:授予connect,resource, dba权限。
3.系统权限授权命令及用户管理。
[系统权限只能由DBA用户授出:sys, system(最开始只能是这两个用户)]
授权命令:SQL> grant connect, resource, dba to 用户名1 [,用户名2]...;
[普通用户通过授权可以具有与system相同的用户权限,但永远不能达到与sys 用户相同的权限,system用户的权限也可以被回收。
]
例:
SQL> connect system/manager
SQL> Create user user50 identified by user50;
SQL> grant connect, resource to user50;
查询用户拥有哪里权限:
SQL> select * from dba_role_privs;
SQL> select * from dba_sys_privs;
SQL> select * from role_sys_privs;
删除用户:SQL> drop user 用户名cascade; //加上cascade则将用户连同其创建的东西全部删除。
4.给新建的用户分配只有连接以及对某些表和视图的查询权限:
oracle授权对视图的查询.docx
5.用户管理:
1)、创建用户的Profile文件
SQL> create profile student limit // student为资源文件名
FAILED_LOGIN_ATTEMPTS 3 //指定锁定用户的登录失败次数
PASSWORD_LOCK_TIME 5 //指定用户被锁定天数
PASSWORD_LIFE_TIME 30 //指定口令可用天数
2)、创建用户
SQL> Create User username
Identified by password
Default Tablespace tablespace
Temporary Tablespace tablespace
Profile profile
Quota integer/unlimited on tablespace;
6.用户密码过期问题:
首先,查看系统中有哪些用户:
其次查看用户的密码使用期限:。