linux系统下创建oracle表空间和用户权限查询
2016-01-15 09:39
375 查看
创建用户和表空间:
1、登录linux,以oracle用户登录(如果是root用户登录的,登录后用su-oracle命令切换成oracle用户)
2、以sysdba方式来打开sqlplus,命令如下:sqlplus/assysdba
3、创建临时表空间:
4、创建表空间:
5、创建用户和密码,指定上边创建的临时表空间和表空间
6、赋予权限
经过以上操作,就可以使用hc_notify/hc_password登录指定的实例,创建我们自己的表了。
删除表空间:
1、查看用户权限
2、删除临时表空间
3.删除用户表空间
1、登录linux,以oracle用户登录(如果是root用户登录的,登录后用su-oracle命令切换成oracle用户)
2、以sysdba方式来打开sqlplus,命令如下:sqlplus/assysdba
3、创建临时表空间:
--查询临时表空间文件的绝对路径。如果需要的话,可以通过查询来写定绝对路径。一般用${ORACLE_HOME}就可以了 selectnamefromv$tempfile; createtemporarytablespaceNOTIFYDB_TEMPtempfile'${ORACLE_HOME}\oradata\NOTIFYDB_TEMP.bdf'size100mreuseautoextendonnext20mmaxsizeunlimited;
4、创建表空间:
--查询用户表空间文件的绝对路径: selectnamefromv$datafile; createtablespaceNOTIFYDBdatafile'${ORACLE_HOME}\oradata\notifydb.dbf'size100Mreuseautoextendonnext40Mmaxsizeunlimiteddefaultstorage(initial128knext128kminextents2maxextentsunlimited);
5、创建用户和密码,指定上边创建的临时表空间和表空间
createuserhc_notifyidentifiedbyhc_passworddefaulttablespaceNOTIFYDBtemporarytablespaceNOTIFYDB_TEMP;
6、赋予权限
grantdbatohc_notify; grantconnect,resourcetohc_notify; grantselectanytabletohc_notify; grantdeleteanytabletohc_notify; grantupdateanytabletohc_notify; grantinsertanytabletohc_notify;
经过以上操作,就可以使用hc_notify/hc_password登录指定的实例,创建我们自己的表了。
删除表空间:
1、查看用户权限
--查看用户要具备droptablespace的权限,如果没有,先用更高级的用户(如sys)给予授权 selecta2.username,a1.privilegefromdba_sys_privsa1,user_role_privsa2 wherea1.privilege='DROPTABLESPACE' anda1.grantee=a2.granted_role
2、删除临时表空间
--查看临时表空间文件 selectnamefromv$tempfile; --查看用户和表空间的关系 selectUSERNAME,TEMPORARY_TABLESPACEfromDBA_USERS; --如果有用户的默认临时表空间是NOTIFYDB_TEMP的话,建议进行更改 alteruserxxxtemporarytablespacetempdefault; ---设置tempdefault为默认临时表空间 alterdatabasedefaulttemporarytablespacetempdefault; --删除表空间NOTIFYDB_TEMP及其包含数据对象以及数据文件 droptablespaceNOTIFYDB_TEMPincludingcontentsanddatafiles;
3.删除用户表空间
--查看表空间文件 selectnamefromv$datafile; --停止表空间的在线使用 altertablespace表空间名称offline; --删除表空间NOTIFYDB_TEMP及其包含数据对象以及数据文件 droptablespaceNOTIFYDB_TEMPincludingcontentsanddatafiles;
Oracle用户权限查询相关操作:
--查看所有的用户
select*fromall_users;
--查看当前用户信息
select*fromuser_users;
--查看当前用户的角色
select*fromuser_role_privs;
--查看当前用户的权限
select*fromuser_sys_privs;
--查看当前用户的表可操作权限
select*fromuser_tab_privs;
--查看某一个表的约束,注意表名要大写
select*fromuser_constraintswheretable_name='TBL_XXX';
--查看某一个表的所有索引,注意表名要大写
selectindex_name,index_type,status,blevelfromuser_indexeswheretable_name='TBL_XXX';
--查看索引的构成,注意表名要大写
selecttable_name,index_name,column_name,column_positionFROMuser_ind_columnsWHEREtable_name='TBL_XXX';
--系统数据字典DBA_TABLESPACES中记录了关于表空间的详细信息
select*fromsys.dba_tablespaces;
--查看用户序列
select*fromuser_sequences;
--查看数据库序列
select*fromdba_sequences;
相关文章推荐
- Oracle内根据上一行总数和本行新增数计算本行总数
- oracle 查看主外键约束
- oracle 安全与审计
- 全面学习ORACLE Scheduler特性(12)使用Windows和Window Groups
- 全面学习ORACLE Scheduler特性(11)使用Job Classes
- 全面学习ORACLE Scheduler特性(10)管理Chains
- 全面学习ORACLE Scheduler特性(9)创建Chains
- 全面学习ORACLE Scheduler特性(8)Application抛出的Events
- 全面学习ORACLE Scheduler特性(7)Scheduler抛出的Events
- 全面学习ORACLE Scheduler特性(6)设置Repeat Interval参数
- 全面学习ORACLE Scheduler特性(5)Schedules调度Programs执行的Jobs
- 全面学习ORACLE Scheduler特性(4)创建和管理Schedule
- 全面学习ORACLE Scheduler特性(3)使用Programs
- 全面学习ORACLE Scheduler特性(2)管理jobs
- 全面学习ORACLE Scheduler特性(1)创建jobs
- 在Oracle数据库中添加外键约束的方法详解
- Oracle数据库中外键的相关操作整理
- oracle时间加减操作
- oracle表空间创建(web创建)
- Oracle创建表空间和授权