zoukankan      html  css  js  c++  java
  • linux操作oracle

    1.su - oracle

    2.sqlplus / as sysdba;

    1、登录linux,以oracle用户登录(如果是root用户登录的,登录后用 su - oracle命令切换成oracle用户)

     
    2、以sysdba方式来打开sqlplus,命令如下: sqlplus / as sysdba
     
    3、创建临时表空间:
    Sql代码  
    --查询临时表空间文件的绝对路径。如果需要的话,可以通过查询来写定绝对路径。一般用${ORACLE_HOME}就可以了  
    select name from v$tempfile;  
    create temporary tablespace NOTIFYDB_TEMP tempfile '${ORACLE_HOME}oradataNOTIFYDB_TEMP.bdf' size 100m reuse autoextend on next 20m maxsize unlimited;  
     
    4、创建表空间:
    Sql代码  
    --查询用户表空间文件的绝对路径:  
    select name from v$datafile;  
    create tablespace NOTIFYDB datafile '${ORACLE_HOME}oradata otifydb.dbf' size 100M reuse autoextend on next 40M maxsize unlimited default storage(initial 128k next 128k minextents 2 maxextents unlimited);  
     
    5、创建用户和密码,指定上边创建的临时表空间和表空间
    Sql代码  
    create user hc_notify identified by hc_password default tablespace NOTIFYDB temporary tablespace NOTIFYDB_TEMP;  
     
    6、赋予权限
    Sql代码  
    grant dba to hc_notify;  
    grant connect,resource to hc_notify;  
    grant select any table to hc_notify;  
    grant delete any table to hc_notify;  
    grant update any table to hc_notify;  
    grant insert any table to hc_notify;  
     
    经过以上操作,就可以使用hc_notify/hc_password登录指定的实例,创建我们自己的表了。
     
    删除表空间:
    1、查看用户权限
    Sql代码  
    --查看用户要具备drop tablespace的权限,如果没有,先用更高级的用户(如sys)给予授权  
    select a2.username,a1.privilege from dba_sys_privs a1 , user_role_privs a2  
    where a1.privilege = 'DROP TABLESPACE'  
    and a1.grantee =a2.granted_role  
     
    2、删除临时表空间
    Sql代码  
    --查看临时表空间文件  
    select name from v$tempfile;  
    --查看用户和表空间的关系  
    select USERNAME,TEMPORARY_TABLESPACE from DBA_USERS;  
    --如果有用户的默认临时表空间是NOTIFYDB_TEMP的话,建议进行更改  
    alter user xxx temporary tablespace tempdefault;  
    ---设置tempdefault为默认临时表空间  
    alter database default temporary tablespace tempdefault;  
    --删除表空间NOTIFYDB_TEMP及其包含数据对象以及数据文件  
    drop tablespace NOTIFYDB_TEMP including contents and datafiles;   
     
    3.删除用户表空间
    Sql代码  
    --查看表空间文件  
    select name from v$datafile;  
    --停止表空间的在线使用  
    alter tablespace 表空间名称 offline;  
    --删除表空间NOTIFYDB_TEMP及其包含数据对象以及数据文件  
    drop tablespace NOTIFYDB_TEMP including contents and datafiles;   
     
    Oracle用户权限查询相关操作:
    Sql代码  
    --查看所有的用户  
    select * from all_users;  
    --查看当前用户信息  
    select * from user_users;  
    --查看当前用户的角色  
    select * from user_role_privs;  
    --查看当前用户的权限  
    select * from user_sys_privs;  
    --查看当前用户的表可操作权限  
    select * from user_tab_privs;  
      
    --查看某一个表的约束,注意表名要 大写  
    select * from user_constraints where table_name='TBL_XXX';  
    --查看某一个表的所有索引,注意表名要 大写  
    select index_name,index_type,status,blevel from user_indexes where table_name = 'TBL_XXX';  
    --查看索引的构成,注意表名要 大写  
    select table_name,index_name,column_name, column_position FROM user_ind_columns WHERE table_name='TBL_XXX';  
      
    --系统数据字典 DBA_TABLESPACES 中记录了关于表空间的详细信息  
    select * from sys.dba_tablespaces;  
      
    --查看用户序列  
    select * from user_sequences;  
    --查看数据库序列  
    select * from dba_sequences;  
     
    创建一个oracle用户;
    create user wybtest identified by funo1234;
    赋权限:
    grant connect,resource,dba to shopping;
    查看实例名:
    select name from v$database;s
  • 相关阅读:
    书单
    x&(x1)表达式的意义
    约瑟夫环,杀人游戏(静态循环链表实现)
    我的第一个动态规划程序(试图用递归求斐波拉契数)
    NYOJ 2题 括号配对问题
    为什么 C++不叫作++C? o(∩_∩)o
    文字常量区,字符串常量
    括号匹配(栈实现)
    Mybatis的逆向工程(generator)
    Mybatis学习一(介绍/举例/优化)
  • 原文地址:https://www.cnblogs.com/jtlin/p/6043063.html
Copyright © 2011-2022 走看看