zoukankan      html  css  js  c++  java
  • oracle 基础知识

    1、  AIX环境下查看oracle配置信息(service_name、SID、tnsname)。

    SID:

    echo $ORACLE_SID


    service_name:

    sqlplus / as sysdba;
    show parameter instance_name;

     

    show parameter service_names;

     

    show parameter service;

     

    select instance_name from v$instance;

    tnsname:

    netca 查看;

    tnsnames.ora查看:打开network/admin下的tnsnames.ora文件:

    find . –name “tnsnames.ora” ;

    cat tnsnames.ora

    2、  在无TNS配置时,登录到数据库。

    sqlplus user/pw@ip:port/servicename

    sqlplus user/pwd@tnsname

    sqlplus user/pwd---aix

    sqlplus /nolog>connect user/pwd

    sqlplus / as sysdba

    格式一:jdbc:oracle:thin:@//<host>:<port>/<service_name>
    格式二:jdbc:oracle:thin:@<host>:<port>:<SID>
    格式三:jdbc:oracle:thin:@< tnsname >

    3、  快速复制一张表,并在此创建索引。

    复制表结构及其数据

    create table table_name_new as select * from table_name_old

    只复制表结构

    create table table_name_new as select * from table_name_old where 1=2

    只复制表数据

    insert into table_name_new select * from table_name_old

    表结构不一样

    insert into table_name_new(column1,column2...) select column1,column2... from table_name_old

    复制表结构及其数据不写日志

    create table table_name_new nologging as select * from table_name_old

    设置并行度

    create table testa2 (t1 int) parallel;

    commit;

    插入数据不写日志

    alter   table   table_name   NOLOGGING;

    再修改写日志

    alter   table   table_name   LOGGING;

    并行度:

    查看dba_tables数据字典时,可以发现有“DEGREE”字段,这个字段表示的就是数据表的并行度。这个参数的设置,关系着数据库的I/O,以及sql的执行效率。当设置表的并行度非常高的时候,sql优化器将可能对表进行全表扫描,引起 Direct Path Read 等待 。

    在使用并行查询前需要慎重考虑, 因为并行查询尽管能提高程序的响应时间, 但是会

    消耗比较多的资源。

    alter table t parallel(degree 1);------直接指定表的并行度

    alter table t parallel;    ----------设置表的并行度为default

    创建索引:

    create [unique] index index_name on table_name(column_name[,column_name…])

    4、  Oracle11g 数据库的导入导出。

    导出:

    全部:

    exp imagesys/imagesys@orcl file=/icms/20170116.dmp full=y

    用户:

    exp imagesys/imagesys @orcl file=/icms/20170116.dmp owner=imagesys

    exp system file=/icms/lims2017116.dmp log=/icms/icms.log owner=imagesys

    表:

    exp imagesys/imagesys@orcl file=/icms/lims2017116.dmp tables=(table1,table2)

    导出空表sql语句

    select 'alter table '||table_name||' allocate extent;' from user_tables where segment_created='NO'


        导入:
         全部:

    imp imagesys/imagesys@orcl buffer=64000 file=/icms/lims2017116.dmp FULL=Y

    用户:
    imp imagesys/imagesys@orcl file=/icms/lims2017116.dmp fromuser=imagesys touser=imagesys

    5、  命令行将表查询结果输出到txt里

    spool E:log.txt;

    select id,name from users;

    spool off;

    6、  AIX 、WIN写脚本形式连接数据库并将查询结果输出到文本文件。

    Bat:

    sqlplus arch/arch@orcl @E: unsqllog.sql>log1.txt

    sh:

    sqlplus imagesys/imagesys @log.sql>log1.txt

  • 相关阅读:
    MySQL——SELECT
    启动 MySQL
    Ethernet and ARP 及Wireshark实验
    ICMP 协议及Wireshark实验
    Wireshark实验——IP 协议
    关键路径
    用树结构存储的图博客(笑)
    拓扑排序
    云计算部署的未来趋势将从自动化转向为自主化
    苹果拥抱 Rust,正在将 C 代码移植到 Rust
  • 原文地址:https://www.cnblogs.com/lingbing/p/6386879.html
Copyright © 2011-2022 走看看