dmp导入到指定服务器(dmp怎么导入数据库)「将dmp文件导入数据库」

  1.相识oracle管理员的根本职责

  2.把握备份和规复数据库/表的方法

  3.明白表空间,数据字典和性能视图

  数据库管理员

  每个oracle数据库应该至少有一名数据库管理员(dba),对于一个小的数据库,一个dba就够了,但是对于一个大的数据库大概必要多个dba分别担负差别的管理职责。那么一个数据库管理员的重要工作是什么呢?

  职责:

  (1)安装和升级oracle数据库

  (2)建库,表空间,表,视图,索引。。。

  (3)订定并实行备份与规复筹划

  (4)数据库权限管理,调优,故障打扫

  (5)对于高级dba,要求能参加项目开辟,会编写sql语句、存储过程、触发器、规则、束缚、包

  管理数据库的用户重要是sys和system

  在前面我们已经提到这两个用户,区别重要是:

  (1)最重要的区别,存储的数据的紧张性差别

  sys:全部oracle的数据字典的基表和视图都存放在sys用户中,这些基表和视图对于oracle的运行是至关紧张的,由数据库本身维护,任何用户都不能手动更改。sys用户拥有dba,sysdba,sysoper脚色或权限,是oracle权限最高的用户。

  system:用于存放次一级的内部数据,如oracle的一些特性或工具的管理信息。system用户拥有dba,sysdba脚色或体系权限。

  (2)其次的区别,权限的差别

  sys用户必须以assysdba或assysoper情势登录。不能以normal方式登录数据库。

  system假如正常登录,它着实就是一个平凡的dba用户,但是假如以assysdba登录,其结果实际上它是作为sys用户登录的,从登录信息上面我们可以看出来。

  sysdba和sysoper权限区别图

  dba权限的用户

  dba用户是指具有dba脚色的数据库用户。特权用户可以实行启动实例,关闭实例等特别操纵,而dba用户只有在启动数据库后才华实行各种管理工作。

  管理初始化参数

  初始化参数用于计划实例或是数据库的特性。oracle9i提供了200多个初始化参数,而且每个初始化参数都有默认值。

  表现初始化参数

  (1)showparameter下令

  怎样修改参数

  必要阐明的假如你盼望修改这些初始化的参数,可以到D:\oracle\admin\myoral\pfile\init.ora文件中去修改比如要修改实例的名字。

  数据库(表)的逻辑备份与规复--导出

  数据库的备份分为逻辑备份与物理备份。

  逻辑备份是指利用工具export将数据对象的布局和数据导出到文件的过程,逻辑规复是指当数据库对象被误操纵而破坏后利用工具import利用备份的文件把数据对象导入数据库的过程。物理备份既可在数据库open的状态下举行,也可以在关闭数据库后举行,但是逻辑备份和规复只能在open的状态下举行。

  导出:

  导出具体的分为:导出表,导出方案,导出数据库三种方式:

  导出利用exp下令来完成,该下令常用的选项有:

  userid:用于指定实行导出操纵的用户名,口令,毗连字符串。

  tables:用于指定实行导出操纵的表。

  owner:用于指定实行导出操纵的方案。

  full=y:用于指定实行导出操纵的数据库。

  inctype:用于指定实行导出操纵的增量范例。

  rows:用于指定实行导出操纵是否要导出表中的数据。

  file:用于指定导出文件名。

  导出表:

  (1)导出本身的表

  expuserid=scott/root123@orcltables=(emp)file=d:\e1.dmp

  (2)导出其他方案的表

  假如用户要导出其他方案的表,则必要dba的权限或是exp_full_database的权限,比如system就可以导出scott的表

  expuserid=system/manager@orcltables(scott.emp)file=e2.dmp

  特别阐明:

  在导入和导出的时间,要到oracle的主目次下的bin目次下。

  (3)导出表的布局

  expuserid=scott/root123@orcltables=(emp)file=d:\e3.dmprows=n

  (4)利用直接导出的方式

  expuserid=scott/root123@orcltable=(emp)file=d:\e4.dmpdirect=y

  这种方式比默认的通例方式要快,当数据量大时,可以思量利用如许的方法,这时必要数据库的字符集要与客户端字符集完全同等,否则会报错。。。

  导出方案:

  导出方案是指利用export工具导出一个方案或是多个方案中的全部对象(表,索引,束缚)和数据,并存放到文件中。

  (1)导出本身的方案

  expscott/root123@orclowner=scottfile=d:\scott.dmp

  (2)导出其他方案

  exp_full_database的权限,比方system用户就可以导出任何方案

  expsystem/manager@orclowner(system,scott)file=d:\system.dmp

  导出数据库

  导出数据库是利用export导出全部数据库中的对象及数据,要求该用户具有dba的权限或是exp_full_database权限。

  expuserid=system/manager@orclfull=yinctype=completefile=d:\x.dmp

  数据库(表)的逻辑备份与规复---导入

  导入就是利用工具import将文件中的对象和数据导入到数据库中,但是导入要利用的文件必须是export所导出的文件。与导出相似,导入也分为导入表,导入方案,导入数据库三种方式。

  imp常用的选项有:

  userid:用于指定实行导入操纵的用户名,口令,毗连字符串。

  tables:用于指定实行导入操纵的表。

  formuser:用于指定源用户

  touser:用于指定目标用户

  file:用于指定导入文件名

  full=y:用于指定实行导入操纵的数据库。

  inctype:用于指定实行导入操纵的增量范例。

  rows:指定是否要导入表行(数据)

  ignore:假如表存在,则只导入数据

  导入表:

  (1)导入本身的表

  impuserid=scott/root123@orcltable=(emp)file=d:xx.dmp

dmp导入到指定服务器(dmp怎么导入数据库) dmp导入到指定服务器(dmp怎么导入数据库)「将dmp文件导入数据库」 行业资讯

  (2)导入表到其他用户

  要求该用户具有dba权限,或是imp_ful_database

  impuserid=system/manager@orcltable(emp)file=d:\xx.dmptouser=scott

  (3)导入表的布局

  只导入表的布局而不导入数据

  impuserid=scott/root123@orcltables=(emp)file=d:\xxx.dmprows=n

  (4)导入数据

  假如对象(如比表)已经存在可以只导入表的数据

  impuserid=scott/root123@orcltables(emp)file=d:\xxx.dmpignore=y

  导入方案

  导入方案是指利用import工具将文件中的对象和数据导入到一个或是多个方案中。假如要导入其他方案,要求该用户具有dba的权限,或是imp_full_database

  (1)导入自身的方案

  impuserid=scott/root123file=d:xxx.dmp

  (2)导入其他方案

  要求改用户具有dba权限

  impuserid=system/managerfile=d:\xxx.dmpfromuser=systemtouser=scott

  导入数据库

  在默认环境下,当导入数据库时,会导入全部对象布局和数据,案比方下:

  impuserid=system/managerfull=yfile=d:\xxx.dmp

  数据字典和动态性能视图

  数据字典是oracle数据库中最紧张的构成部分,它提供了数据库的一些体系信息。

  动态性能视图记录了例程启动后的相干信息。

  user_tables:

  用于表现当前用户所拥有的全部表,它只返回用户所对应方案的全部表。

  比如:selecttable_namefromuser_tables;

  all_tables:

  用于表现当前用户可以访问到的全部表,它不但会返回当火线案的全部表,还会返回当前用户可以访问的其他方案的全部表。

  比如:selecttable_namefromall_tables;

  dba_tables:

  它会表现全部方案拥有的数据库表。但是查询这个数据库字段视图,要求用户必须是dba脚色或拥有selectanytable体系权限。比方:当system用户查询dba_tables时,会返回sys,system,scott等全部方案对应的数据库表。

  用户名,权限,脚色

  在创建用户时,oracle会把用户的信息存放到数据字典中,当给用户授予权限或是脚色时,oracle会将权限和脚色的信息存放到数据字典中。

  通过查询dba_users可以表现全部数据库用户的具体信息。

  通过查询数据字典视图dba_sys_privs,可以表现用户所具有的体系权限。

  通过查询数据字典视图dba_tab_privs,可以表现用户具有的对象权限。

  通过查询数据字典视图dba_col_privs可以表现用户具有的列权限。

  通过查询数据库字典视图dba_role_privs可以表现用户所具有的脚色。

  怎样查询一个脚色包罗的权限?

  a.一个脚色包罗的体系权限

  select*fromdba_sys_privswheregrantee='CONNECT';

  别的也可以如许查察

  select*fromrole_sys_privswhererole='CONNECT';

  b.一个脚色包罗的对象权限

  select*fromdba_tab_privswheregrantee='CONNECT';

  怎样查察某个用户,具有什么样的脚色?

  select*fromdba_role_privswheregrantee='SCOTT';

  表现当前用户可以访问的全部数据字典视图

  select*fromdictwherecommentslike'%grant%';

  表现当前数据库的全称

  select*fromglobal_name;

  其他阐明:

  数据字典记录有oracle数据库的全部体系信息,通过查询数据字典可以取得以下体系信息:比如

  (1)对象界说环境

  (2)对象占用空间巨细

  (3)列信息

  (4)束缚信息

  动态性能视图

  管理表空间和数据文件

  表空间是数据库的逻辑构成部分。从物理上讲,数据库数据存放在数据文件中;从逻辑上讲,数据库数据则是存放在表空间中,表空间由一个或是多个数据文件构成。

  数据库的逻辑布局

  oracle中逻辑布局包罗表空间、段、区和块。

  阐明一下数据库由表空间构成,而表空间又是由段构成,而段又是由区构成,而区又是由oracle块构成的如许一种布局,可以进步数据库的服从。

  表空间用于从逻辑上构造数据库的数据。数据库逻辑上是由一个或是多个表空间构成的。通过表空间可以到达以下两点用处:

  (1)控制数据库占用的磁盘空间

  (2)dba可以将差别数据范例摆设到差别的位置,如许有利于进步i/o性能,同时利于备份和规复等管理操纵。

  创建表空间

  创建表空间是利用createtablespace下令完成的,必要留意的是,一样平常环境下,创建表空间是特权用户或是dba来实行的,假如用别的用户来创建表空间,则用户必须要具有createtablespace的体系权限。

  创建数据表空间

  在创建数据库后,为了便于管理表,最好创建本身的表空间。

  createtablespacesp001datafile'd:\sp001.dbf'size20muniformsize128k

  阐明:实行完上述下令后,会创建名称为sp001的表空间,并为该表空间创建名称为sp001.bdf的数据文件,区的巨细为128k

  利用数据表空间

  createtablemypart(deptnonumber(4),dnamevarchar2(14),locvarchar2(13))tablespacesp001;

  改变表空间的状态

  当创建表空间时,表空间处于联机(online)状态,此时该表空间是可以访问的,而且该表空间时可以读写的,即可以查询该表空间的数据,而且还可以在表空间实行各种语句。但是在举行体系维护或是数据维护时,大概必要改变表空间的状态。一样平常环境下,由特权用户或是dba来操纵。

  (1)使表空间脱机

  altertablespace表空间名offline;

  (2)使表空间联机

  altertablespace表空间吗online;

  (3)只读表空间

  当创建表空间时,表空间可以读写,假如不盼望在该表空间上实行update,delete,insert操纵,那么可以将表空间修改为只读。altertablespace表空间名readonly;

dmp导入到指定服务器(dmp怎么导入数据库) dmp导入到指定服务器(dmp怎么导入数据库)「将dmp文件导入数据库」 行业资讯

  更改成可读可写为:altertablespace表空间名readwrite;

  (4)知道表空间名,表现该表空间包罗的全部表

  select*fromall_tableswheretablespace_name='表空间名';

  (5)知道表名,查察该表属于哪个表空间

  selecttablespace_name,table_namefromuser_tableswheretable_name='emp';

  删除表空间

  一样平常环境下,由特权用户或是dba来操纵,假如是其他用户操纵,那么要求用户具有droptablespace体系权限。

  droptablespace'表空间'includingcontentsanddatafiles;

  阐明:includingcontents表现删除表空间时,删除该空间的全部数据库对象,而datafiles表现将数据库文件也删除。

  扩展表空间

  表空间是由数据文件构成的,表空间的巨细实际就是数据文件相加后的巨细。那么我们可以想象,假定表employee在data01表空间上,初始巨细为2M,当数据满2M时再向employee表插入数据,如许就会表现空间不敷的错误。

  扩展表空间,为其增长更多的存储空间有三种方法:

  (1)增长数据文件

  SQLaltertablespacesp001adddatafile'd:\sp002.dbf'size300m;

  (2)增长数据文件的巨细

  SQLalterdatabasedatafile'd:\SP001.dbf'resize400m;

  (3)设置文件的主动增长

  SQLalterdatabasedatafile'd:\sp001.dbf'autoextendonnext10mmaxsize500m;

  移动数据文件

  偶然,假如你的数据文件地点的磁盘破坏时,该数据将不能再利用,为了可以或许重新利用,必要将这些文件的副本转移到别的的磁盘,然后规复。

  下面以移动数据文件sp001.dbf为例来阐明:

  1)确定命据文件地点的表空间

  selecttablespace_namefromdba_data_fileswherefile_name='d:\sp001.dbf';

  2)使表空间脱机

  确保数据文件的同等性,将表空间变化为offline的状态

  altertablespacesp01offline;

  3)利用下令移动数据文件到指定的目标位置

  hostmoved:\sp001.dbff:\sp001.dbf

  4)实行altertablespace下令

  在物理上移动了数据后,还必须实行altertablespace对数据库文件举行逻辑修改:

  altertablespacesp001renamedatafile'd:\sp001.dbf'to'f:\sp001.dbf';

  5)使表空间联机

  在移动了数据文件后,为了利用户可以访问该表空间,必须将其变化为online状态:

  altertablespacesp001online;

  表现表空间信息

  查询数据字典视图dba_tablespaces,表现表空间的信息

  selecttablespaces_namefromdba_tablespaces;

  表现表空间所包罗的数据文件

  查询数据字典视图dba_data_files,可表现表空间中包罗哪些数据文件,如下:

  selectfile_name,bytesfromdba_data_fileswheretablespaces_name='表空间名':

  表空间小结

  1)相识表空间和数据文件的作用

  2)把握常用表空间,undo表空间和临时表空间的创建方法

  3)相识表空间的各个状态(online,offline,readwrite,readonly)的作用,及怎样改变表空间的状态的方法。

  4)相识移动数据文件的缘故起因,及利用altertablespace下令移动数据文件的方法。

  其他表空间

  除了最常用的数据表空间外,尚有其他范例表空间:

  (1)索引表空间(海量数据)

  (2)undo表空间

  (3)临时表空间

  (4)非标准块的表空间

  这几种表空间,本身参考册本研究。

客户评论

我要评论