yao000 发表于 2018-9-13 11:09:37

Oracle基础知识(个人总结)

  1.表空间的创建
  a)类似如下语句
  CREATETABLESPACE tablespace_name
  DATAFILE ‘file_name’>xM

  EXTENTMANAGEMENT LOCAL UNIFORM>  SEGMENT SPACEMANAGEMENT AUTO
  /
  b)实际中的语句
  CREATETABLESPACE jlaw
  DATAFILE ‘C:\oracle\product\10.2.0\oradata\jlaw\jlaw.dbf’SIZE 10M

  EXTENTMANAGEMENT LOCAL UNIFORM>  SEGMENT SPACEMANAGEMENT AUTO
  /
  2.表空间的删除
  a)Drop tablespace james;(表空间为空)
  b)Drop tablespace james includingcontents;(表空间不为空)
  3.为应用创建用户

  Create userjames>  Defaulttablespace jlaw
  temporarytablespace temp;
  4.进行相应的权限的授予
  Grantconnect,resource to james;
  Revoke unlimitedtablespace from jlaw;
  Alter user jamesquota unlimited on jlaw;
  5.创建数据表
  a)创建表
  CREATE TABLEj_userss (
  id number(11) NOT NULL,
  numbers varchar2(30) default NULL,
  loginType number(11) default NULL,
  username varchar2(30) default NULL,
  password varchar2(30) default NULL,
  name varchar2(30) default NULL,
  PRIMARY KEY(id)
  );
  b)创建序列
  create sequenceuse_sequence
  increment by 1
  start with 1
  nomaxvalue
  nocycle
  nocache
  /
  c)创建触发器
  create triggeruse_trigger before
  insert onj_userss for each row when(new.id is null)
  begin
  selectuse_sequence.nextval into:new.id from dual;
  end
  ;
  /
  6.数据库的运行模式
  最危险的数据库是非归档,无备份.
  a)归档模式
  归档是指对历史的redo log日志文件进行归档保存,oracle依赖redo log file来进行故障恢复,也就是重做.
  在归档模式下,日志文件被覆盖之前必须已经被复制归档,保留的归档日志将为oracle提供强大的故障恢复能力.
  b)非归档模式
  Redo log file 以覆盖的方式循环使用,
  查看(Archive log list;)
  c)改变数据库的归档模式
  i.archive log list;
  ii.show parameterlog_archive_start
  iii.shutdown immediate;
  iv.startup mount;
  v.alter database archivelog;
  vi.alter database open;
  vii.archive log list;
  7.使用oracle 10g数据泵(expdp/impdp)
  a)使用expdp备份数据库
  i.C:\>expdp –help
  ii.Sql>CREATE OR REPLACEDIRECTORY expdir
  iii.SQL>select * fromdba_directories where directory_name=’EXPDIR’;
  iv.SQL>grant read,write ondirectory expdir to jlaw;
  v.C:\>expdp jlaw/kcho8969dumpfile=jlaw.dmp directory=expdir
  b)使用impdp导入数据库
  i.impdp jlaw/kcho8969dumpfile=jlaw.dmp directory=expdir(全部表)
  ii.impdp jlaw/kcho8969dumpfile=jlaw.dmp directory=expdir tables=j_userss(单个表)
  8.使用oracle(exp/imp)备份和导入
  a)使用exp进行逻辑备份
  i.新建文件startbak.bat
  echo off
  setoracle_sid=jlaw
  sqlplusjlaw/kcho8969 @expbydt.sql
  ii.新建文件expbydt.sql文件
  column todaynew_val dt
  selectto_char(sysdate,'ddmmyyyy')today from dual;
  host expuserid=jlaw/kcho8969 file=exp_jlaw_&dt..dmp log=exp_jlaw_&dt..log
  exit
  iii.运行startbak.bat文件
  b)使用imp文件导入
  i.Imp jlaw/kcho8969tables=j_userss full=n(导入单个表)

页: [1]
查看完整版本: Oracle基础知识(个人总结)