`
lsx125920
  • 浏览: 44834 次
  • 性别: Icon_minigender_1
  • 来自: 福建
社区版块
存档分类
最新评论

个人oracle初学笔记

阅读更多
//修改会话格式;
alter session set nls_date_format='yyyy-mm-dd';

//用系统管理员,查看当前数据库有几个用户连接:

SQL> select username,sid,serial# from v$session;

//如果要停某个连接用

SQL> alter system kill session sid,serial#;


//启动或停止监听;
lsnrctl start/stop;

//启动或停止实例;
net start/stop oracleserviceORA10G;

//约束字段输入内容
alter table stu modify sex char(2)check(sex in ('男',‘女’));

------------------------------------------------------------------------------------------------------------------------------------------------------------
//删除表中的一个字段;
alter table stu drop column XX;

//修改表中的一个字段
alter table [表名]  rename column 旧的字段名 to 新的字段名;
alter table [表名]  modify column not null、、、;
//修改表所属表空间
alter table table_name move tablespace tablespace_name;
-------------------------------------------------------------------------------------------------------------------------------------------------------------

//用户加锁就是不让被加锁的用户连接数据库;
alter user test account lock;

//约束(constraint)
   主键约束 --  每个表要有主键,唯一的标识一行数据  primary key;
   非空约束     not null;
   唯一性约束   unique;
   外键约束     references 外键表的字段;
   检查约束     check(字段 in/between and);

//在加约束的同时给约束取名:
alter table student add constrait 约束名 check(sex in('男','女'))

//删除约束:
alter table student drop constraint 约束名;

//撤销对象权限
revoke select on stu from ll;

//创建用户并分配表空间;
create user mven identified by OracleUserMven
default tablespace mven
temporary tablespace mven_temp;

//删除用户;
drop user army cascade

//查看一个用户有哪些权限;
select * from dba_tab_privs/dba_role_privs where grantee=upper('ll');

GRANT CREATE USER,DROP USER,ALTER USER ,CREATE ANY VIEW ,
  DROP ANY VIEW,EXP_FULL_DATABASE,IMP_FULL_DATABASE,
     DBA,CONNECT,RESOURCE,CREATE SESSION  TO 用户名字   ----------------------------------------用户可以赋于他什么权限;



//decode用法
select a.studentid,studentname,subjectname,decode(sign(mark-60),1,'及格',-1,'不及格',0,'刚好') from 表;

//删除表时。应该注意的要点;
drop table books;的指令会将表放到回收站里用 。
flashback table "BIN$1Oiy3qm/QJubov1BwBUOgw==$0" to before drop;//就能恢复原来被你删除的表。
删除表:
drop table books purge;是绕过回收站,彻底删除
建议你先
purge recyclebin;
清除当前用户的回收站,不会影响其他用户的回收站

//创建序列(sequence)-----------------------------------------------------------------------------------------------第三天里有讲;
create sequence seq1 with start(初始值) 0 increment(步长) by 1 maxvalue 100 minvalue 0 cycle(到100后回到1开始);

用法:select seq1.nextval,studentid from student;

//删除序列;
drop sequence seq1;

//同义词
  create synonym mtest for mk.test; //为表建立的
                       //可以为任何对象建立同义词
  select * from mtest; //相当于select * from mk.test;

//查数据库中所有的用户;
select user#,name,password from user$;

------------------------------------------------------------------------------------------------------------------------------------------------------------
//数据导出:
1 将数据库TEST完全导出,用户名system 密码manager 导出到D:\daochu.dmp中
  exp system/manager@TEST file=d:\daochu.dmp 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:\data\newsmgnt.dmp tables=(inner_notify,notify_staff_relat)

4 将数据库中的表table1中的字段filed1以"00"打头的数据导出
  exp system/manager@TEST file=d:\daochu.dmp tables=(table1) query=\" where filed1 like '00%'\"

上面是常用的导出,对于压缩,既用winzip把dmp文件可以很好的压缩。
也可以在上面命令后面 加上 compress=y 来实现。

-------------------------------------------------------------------------------------------------------------------------------------------------------------
//数据的导入
1 将D:\daochu.dmp 中的数据导入 TEST数据库中。
  imp system/manager@TEST  file=d:\daochu.dmp
  imp aichannel/aichannel@HUST full=y  file=file= d:\data\newsmgnt.dmp ignore=y
  上面可能有点问题,因为有的表已经存在,然后它就报错,对该表就不进行导入。
  在后面加上 ignore=y 就可以了。
2 将d:\daochu.dmp中的表table1 导入
imp system/manager@TEST  file=d:\daochu.dmp  tables=(table1)

//通过explain plan for可以查看到语句的执行速度;-----------------------------------------
exp: explain plan for select * from stu;
     select * from table(DBMS_XPLAN.DISPLAY);




SET SERVICEOUTPUT ON; ------------使用DBMS_OUTPUT.PUT_LINE();先启动这个服务;
-------------------------------------------------------------------------------------------------------------------------------------------------------------

设置保存点:SAVEPOINT 名字;  回退保存点:ROLLBACK TO 名字;


查看过的源码:SELECT text FROM user_source WHERE name='过程名';

查看当前用户所有信息用:user_objects 包括:表、视图、索引、过程、函数和包等。查询类别:object_type

用show errors可以显示错误的原因和位置。如show errors procedure 过程名;

//恢复本机某个时间点的数据库
recover database until time '2008-06-19 13:45:02'; /*恢复*/

//配置归档文件位置:

查看系统是否处于归档模式:archive log list;

//切换归档模式
alter database archivelog;---开启归档;
alter database noarchivelog;----关闭归档;

1.可以配置LOG_ARCHIVE_DEST和LOG_ARCHIVE_DUPLEX_DEST,最多只能配置两个归档位置;
2.可以配置LOG_ARCHIVE_DEST_n,最多可以配10个。可以是本地的,也可以是远程的。但不能和上面两个一起使用。
例子:
ALTER SYSTEM SET log_archive_duplex_dest='';
ALTER SYSTEM SET log_archive_dest='';
ALTER SYSTEM SET log_archive_dest_1='location=/oracle/oracle10g/log/archive_log';
ALTER SYSTEM SET log_archive_dest_2='location=/oracle/oracle10g/log2/archive_log';
ALTER SYSTEM SET log_archive_dest_4='service=standby';   //配置远程归档位置时,SERVICE选项需要指定远程数据库的网络服务名(在tnsnames.ora文件中配置);

数据库只读设置:
1.在打开时用:startup open read only;
2.在mount下设置(不能在open下修改):alter database open read only;

查看某表空间中包含有哪些表:
select table_name from dba_tables where tablespace_name=upper('表空间名');

查看字符集:
select * from sys.nls_database_parameters;--查看数据库参数
select * from sys.nls_instance_parameters; --查看客户端参数
select * from sys.nls_session_parameters; --查看会话的参数

如何禁止某IP访问ORACLE?

  在$ORACLE_HOME/network/admin/中创建protocol.ora文件╋其?容如下?

  tcp.validnode_checking=yes

  #下面两行取其一:

  tcp.invited_nodes=(ip1,ip2,....) #允许访问的IP

  tcp.excluded_nodes=(ip1,ip2,...) #禁止访问的IP

关闭操作系统认证方式:
在sqlnet.ora中开一行
sqlnet.authentication_services=(none);

oracle 优化器优化方式:
4种方式:rule,choose,first_rows,all_rows;
含义:
Rule:不用多说,即走基于规则的方式。

  Choolse:这是我们应观注的,默认的情况下Oracle用的便是这种方式。指的是当一个表或或索引有统计信息,则走CBO的方式,如果表或索引没统计信息,表又不是特别的小,而且相应的列有索引时,那么就走索引,走RBO的方式。

  First Rows:它与Choose方式是类似的,所不同的是当一个表有统计信息时,它将是以最快的方式返回查询的最先的几行,从总体上减少了响应时间。

  All Rows:也就是我们所说的Cost的方式,当一个表有统计信息时,它将以最快的方式返回表的所有的行,从总体上提高查询的吞吐量。没有统计信息则走基于规则的方式。
可通过两种方式设置:
1.修改init.ora文件中的optimizer_mode=rule;
2.alter session set optimizer_mode=rule;

分享到:
评论

相关推荐

    李兴华Oracle全部笔记

    总的来说,李兴华Oracle全部笔记是一份全面且深入的Oracle学习资料,不仅适合初学者入门,也对有经验的DBA有着很高的参考价值。通过这份笔记,读者可以系统地学习Oracle数据库的各个方面,提升自己的专业技能。

    Oracle初学者笔记

    Oracle数据库是世界上最流行的数据库管理系统之一,特别适合于...通过熟练掌握这些概念,初学者可以逐步深化对Oracle数据库的理解,并提升编程能力。学习和实践这些知识点,将有助于你在Oracle开发领域打下坚实的基础。

    oracle 初学者笔记

    Oracle数据库系统是全球广泛使用的大型关系型数据库管理系统之一..."Oracle培训18天老师笔记"这样的资料将覆盖这些主题,帮助你逐步掌握Oracle的精髓。在实践中不断巩固和提升,才能真正成为Oracle数据库的熟练使用者。

    韩顺平oracle课堂笔记

    《韩顺平Oracle课堂笔记》是一份详尽的Oracle数据库学习资料,涵盖了多个关键知识点,旨在帮助学习者深入理解并掌握Oracle数据库系统的核心...无论是初学者还是经验丰富的开发者,这份笔记都将提供宝贵的参考和指导。

    Oracle初学者笔记.chm

    Oracle初学者笔记.chm 自己写的,全部是都很基础,出血者很有帮助的

    oracle初学者笔记

    本笔记主要面向Oracle初学者,旨在帮助你全面理解并掌握Oracle的基础知识和核心功能。 1. **SQL语句查询**:SQL(Structured Query Language)是用于管理关系数据库的语言。在Oracle中,你可以学习如何插入、更新、...

    Oracle学习笔记.pdf

    Oracle是世界上最广泛使用的数据库管理系统之一,它提供了丰富的功能和组件,包括数据存储、查询优化、安全性、并发控制等。...对于初学者来说,通过阅读学习笔记,结合实践操作,可以逐步深入理解Oracle的各个方面。

    个人学习oracle笔记

    这个“个人学习Oracle笔记”文件很可能是作者在深入学习Oracle数据库的过程中积累的知识点总结,旨在帮助初学者从基础开始逐步掌握Oracle的核心概念和技术。 Oracle数据库的基础知识包括以下几个主要方面: 1. **...

    oracle实用笔记 命令 文档 pdf

    这份"Oracle实用笔记 命令 文档 PDF"很可能是对Oracle数据库管理、查询和维护的一份详细指南,涵盖了各种关键的Oracle命令和操作技巧。下面我们将深入探讨其中可能涉及的一些重要知识点。 1. **Oracle SQL语法**:...

    oracle教程笔记

    这篇笔记旨在帮助初学者系统地理解和掌握Oracle技术。 首先,Oracle是全球最大的企业级数据库管理系统之一,广泛应用于大型企业的数据存储和处理。它的强大功能包括事务处理、数据仓库、数据集成和安全性等。 在...

    oracle初学笔记

    ### Oracle初学笔记知识点梳理 #### 一、Oracle 基础操作与概念 ##### 1. SQL 基本操作 - **CRUD**(Create Read Update Delete):这是数据库中最基本的操作,用于创建(Create)、读取(Read)、更新(Update)...

    2011Oracle笔记(李兴华视屏教程笔记)

    描述中提到这些笔记“适合初学者的Oracle教材”,意味着内容应该是按照由浅入深的顺序进行编排,初学者可以不用依赖其他更高级的资料就能理解其中的大部分内容。同时,它还指出这些笔记可以“配合网上的2011版李兴华...

    2011MLDN李兴华Oracle课堂笔记PDF档

    2. **01-Oracle简介、安裝、配置.pdf**:这部分将涵盖Oracle数据库系统的基础概念,如何安装Oracle软件,以及配置数据库环境,这对于初学者来说是入门的重要步骤。 3. **02-简单查询、限定查询、单行函数.pdf**:这...

    李兴华--oracle课堂笔记(全)

    根据提供的文件内容,以下是对“李兴华--oracle课堂笔记(全)”所包含知识点的详细说明: 1. Oracle 数据库版本信息 文件内容中提到了多个Oracle数据库的版本号,如Oracle10g、Oracle8i、Oracle9i等。这些是Oracle ...

    oracle经典笔记

    《Oracle经典笔记》是一份深度探讨Oracle数据库管理系统的综合学习资料。这份笔记涵盖了从Oracle PL/SQL编程到SQL查询语言的广泛主题,旨在帮助读者深入理解Oracle数据库的运作机制和应用技巧。 首先,我们来看看...

    MSDN oracle学习笔记

    总的来说,“MSDN Oracle学习笔记”是一份全面的资源,涵盖了Oracle数据库从基础到进阶的各个方面,无论你是初学者还是有经验的DBA,都能从中受益。通过深入学习和实践,你可以提升自己的Oracle技能,为在实际工作中...

    李兴华—oracle课堂笔记(全).rar

    Oracle数据库是全球最广泛使用...李兴华的课堂笔记全面深入地探讨了这些主题,对于初学者和有经验的DBA来说都是宝贵的资源。通过阅读这份笔记,读者可以系统地了解和掌握Oracle数据库的各个方面,提升自己的专业技能。

    ORACLE初学者笔记(必看)

    ### Oracle初学者笔记知识点解析 #### SQLplus登录与基本概念 - **登录方式**:通过SQLplus连接Oracle数据库,常用的方式有两种。一是使用程序组,输入用户名(如scott或system),密码(如tiger),以及主机字符...

Global site tag (gtag.js) - Google Analytics