oracle常用命令1

    xiaoxiao2021-03-25  115

    1、设置计时:set timing on; 2、查询数据信息:select * from v$database; 3、命令查看执行计划:       explain plan for sql;       select * from table(dbms_xplan.display);

    select * fromtable(dbms_xplan.display_cursor('1fkh93md0802n'))(1fkh93md0802n是sql_id,可从v$sql中查询)

    4、重建索引: create index on tablename(a); alter index name rebuild; 5、索引失效:          alter  index  name unusable; 6、查询被锁的会话以及表:           select * from v$locked_object;           select * from v$locked_object a, dba_objects b where b.object_id=a.object_id; 7、释放被锁的会话:            1、查询sid、serial#:                   select * from v$locked_object a , v$session b where a.session_id=b.sid;                  或者                   select * from v$session;             2、alter system kill session 'sid,serial#' immediate; 8、查询所有用户信息:            select * from all_users; 9、查询表相关信息:            select * from user_tables; 10、恢复删除的表以及数据:            1、在user_recyclebin中找到最近操作过的表名称,然后用闪回(只能用于10G及以上版本)。                   恢复表:   flashback table table_name to before drop;             2、恢复数据:                    建立一个快表将删除修改之前状态的数据找回到在这个表中(两种方法):                    a、create table quick_table as select * from 表名as of timestamp sysdate-1/24(一小时之前)                    b、create table quick_table as  select * from 表名  as of timestamp  to_timestamp('2013-05-29 15:29:00','yyyy-mm-dd              hh24:mi:ss');            3、修改快表名称                 rename quick_table to 表名。             4、恢复删除且已提交的数据

          flashback table 表名 to timestamp to_timestamp('2013-05-29 15:29:00','yyyy-mm-dd hh24:mi:ss');

       注意:如果在执行上面的语句,出现错误。可以尝试执行 alter table 表名 enable row movement; //允许更改时间戳

    11、查询缓存中sql

            select * from v$sql;

    12、oracle查询字符集

        select userenv('language') from dual;

    13、查询系统里所有的表: select * from all_tables;

    14、查询系统有权限的表:  select * from dba_tables;

    15、查询当前用户的表:select * from user_tables;

    16、truncate、drop、delete区别:

        1、truncate table在功能上与不带where子句的delete语句相同,二者均删除表中的全部行。但truncate table比delet速度快,且使用的系统和事务日志资源少。delete语句每次删除一行,并在事务日志中为所删除的每行记录一项。而truncate table通过释放存储表数据所用的的数据页来删除数据,并且只在事务日志中记录页的释放。

        2、truncate table:删除内容、释放空间但不删除定义。

           delete table:删除内容,但不释放定义和空间。

           drop table:删除内容和定义,释放空间。

    17、设置主键:alter table mig_fieldmapping add constraint PK_FIELDMAPPING primary key(pk_fieldmapping)

    18、清空缓冲区缓存:alter system set events 'immediate trace name flush_cache';

        清空共享池:alter system flush shared_pool;

        开启/关闭统计信息:set autotrace traceonly statistics; set autotrace off;

    19、查看表空间信息

        select * from dba_data_files; 

        select * from dba_free_space;

    20、增加数据文件

        alter tablespace name add datafile 'oracle/oradata/filename' size 1000M;

        修改数据文件大小:alter database datafile 'oracle/oradata/filename' resize 1000M;

        数据文件自动扩展:alter database datafile 'oracle/oradata/filename' autoextend on 

                       next 100M maxsize 10000M;

    添加主键alter table t_stu add constraint p_pk priary key(stuid);p_pk是约束名字 删除主键:alter table t_stu drop constraint p_pk,

    创建DBLINK:create  database link "yuanchh" connect to GKGUOLV identified by "1" using  '20.10.80.247/orcl'

      
    转载请注明原文地址: https://ju.6miu.com/read-12953.html

    最新回复(0)