Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1698576
  • 博文数量: 409
  • 博客积分: 6240
  • 博客等级: 准将
  • 技术积分: 4908
  • 用 户 组: 普通用户
  • 注册时间: 2011-06-01 00:04
文章分类

全部博文(409)

文章存档

2021年(1)

2019年(1)

2017年(1)

2016年(13)

2015年(22)

2013年(4)

2012年(240)

2011年(127)

分类: Oracle

2012-03-21 22:56:14

mtouch数据迁移,新的服务器、软件已安装完毕。
1.检查新的服务器Oracle是否正常启动
2.新的服务器Oracle正常,则创建用户(因为之备份的数据库都是按照用户备份的),用户名、密码、表空间、权限,commit
3.scp 备份数据库文件
4.imp dmp
5.已该用户登录,检查是否正常,如字符集
6.登陆web系统,检查系统是否可以正常运行

部分操作步骤:
  1. [oracle@cms01 ~]$ sqlplus /nolog
  2. SQL*Plus: Release 11.2.0.3.0 Production on Wed Mar 21 22:32:12 2012
  3. Copyright (c) 1982, 2011, Oracle. All rights reserved.
  4. SQL> conn /as sysdba;
  5. SQL>create user le identified by 123456 fefault tablespace USERS;
  6. create user seccuessful!
  7. [oracle@cms-db ~]$ scp /home/oracle/important/dbbackyangkai.sh oracle@192.168.40.239:/home/oracle/dbback/
  8. @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
  9. @ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
  10. @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
  11. IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
  12. Someone could be eavesdropping on you right now (man-in-the-middle attack)!
  13. It is also possible that the RSA host key has just been changed.
  14. The fingerprint for the RSA key sent by the remote host is
  15. ed:8d:ce:f2:82:fa:84:ec:43:ab:ce:39:d8:2e:ed:64.
  16. Please contact your system administrator.
  17. Add correct host key in /home/oracle/.ssh/known_hosts to get rid of this message.
  18. Offending key in /home/oracle/.ssh/known_hosts:5
  19. RSA host key for 192.168.40.239 has changed and you have requested strict checking.
  20. Host key verification failed.
  21. lost connection
  22. #我从另台机器上scp过去就可以,奇怪了操!
  23. [oracle@cms-db ~]$ ping 192.168.40.239
  24. PING 192.168.40.239 (192.168.40.239) 56(84) bytes of data.
  25. 64 bytes from 192.168.40.239: icmp_seq=1 ttl=61 time=0.202 ms
  26. ------------------------------------------------------------
  27. [oracle@cms01 backup]$ imp le/123456 file=/home/oracle/dbback/home/oracle/data/backup/2012-03-20-cms.dmp
  28. Import: Release 11.2.0.3.0 - Production on Wed Mar 21 22:26:56 2012
  29. Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.
  30. Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
  31. With the Partitioning, OLAP, Data Mining and Real Application Testing options
  32. Export file created by EXPORT:V10.02.01 via conventional path
  33. Warning: the objects were exported by CSCMS, not by you
  34. import done in ZHS16GBK character set and UTF8 NCHAR character set
  35. IMP-00031: Must specify FULL=Y or provide FROMUSER/TOUSER or TABLES arguments
  36. IMP-00000: Import terminated unsuccessfully
  37. [oracle@cms01 backup]$
  38. [oracle@cms01 backup]$ imp le/123456 full=y file=/home/oracle/dbback/home/oracle/data/backup/2012-03-20-cms.dmp
  39. Import: Release 11.2.0.3.0 - Production on Wed Mar 21 22:28:58 2012
  40. Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.
  41. Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
  42. With the Partitioning, OLAP, Data Mining and Real Application Testing options
  43. Export file created by EXPORT:V10.02.01 via conventional path
  44. Warning: the objects were exported by CSCMS, not by you
  45. import done in ZHS16GBK character set and UTF8 NCHAR character set
  46. . importing CSCMS's objects into LE
  47. . . importing table "TADMIN" 8 rows imported
  48. . . importing table "TADMINLOG" 1604 rows imported
  49. . . importing table "TCLASS" 6 rows imported
  50. . . importing table "TINTERFACEINFO" 979 rows imported
  51. . . importing table "TINTERFACE_RESPONSE_TIME" 2748 rows imported
  52. . . importing table "TPURVIEW" 37 rows imported
  53. . . importing table "TREPLYOPINION" 948 rows imported
  54. . . importing table "TROLE" 2 rows imported
  55. . . importing table "TROLE_PURVIEW" 41 rows imported
  56. . . importing table "TUSEROPINION" 979 rows imported
  57. Import terminated successfully without warnings.
  58. [oracle@cms01 backup]$
  59. [oracle@cms01 ~]$ sqlplus /nolog
  60. SQL*Plus: Release 11.2.0.3.0 Production on Wed Mar 21 22:32:12 2012
  61. Copyright (c) 1982, 2011, Oracle. All rights reserved.
  62. SQL> conn /as sysdba;
  63. SQL> select * from tadmin;
  64. select * from tadmin
  65. *
  66. ERROR at line 1:
  67. ORA-00942: table or view does not exist
  68. SQL> select * from le.tadmin;
  69. CEMAIL
  70. --------------------------------------------------------------------------------
  71. CCONTENT
  72. --------------------------------------------------------------------------------
  73. ILOGINTIMES DLASTLOGINTIME CLASTLOGINIP BAUDITED BADMIN
  74. ----------- ------------------- -------------------- ---------- ----------
  75. DADDTIME DEDITTIME
  76. ------------------- -------------------
  77. CADDUSER S S IROLEID
  78. -------------------------------------------------- - - ----------
  79. 管理员 0 1 1
  80. IADMINID CADMINNAME
  81. ---------- --------------------------------------------------
  82. CADMINPASS
  83. --------------------------------------------------
  84. CUSERNAME B*** CTELPHONE
  85. ------------------------------ ---------- --------------------
  86. CMOBILE
  87. --------------------
  88. CEMAIL
  89. --------------------------------------------------------------------------------
  90. CCONTENT
  91. --------------------------------------------------------------------------------
  92. ILOGINTIMES DLASTLOGINTIME CLASTLOGINIP BAUDITED BADMIN
  93. ----------- ------------------- -------------------- ---------- ----------
  94. DADDTIME DEDITTIME
  95. ------------------- -------------------
  96. CADDUSER S S IROLEID
  97. -------------------------------------------------- - - ----------
  98. 8 rows selected.
  99. SQL>
  100. #如果用le登陆,那么操作表的时候就不用加上用户名了。
下面内容来源于网络:
  1. exp/imp命令详解
  2. exp/imp两个命令可以说是oracle中最常用的命令了.
  3. ORACLE数据库有两类备份方法。第一类为物理备份,该方法实现数据库的完整恢复,但
  4. 数据库必须运行在归挡模式下(业务数据库在非归挡模式下运行),且需要极大的外部
  5. 存储设备,例如磁带库;第二类备份方式为逻辑备份,业务数据库采用此种方式,此方
  6. 法不需要数据库运行在归挡模式下,不但备份简单,而且可以不需要外部存储设备。
  7. 数据库逻辑备份方法
  8. ORACLE数据库的逻辑备份分为三种模式:表备份、用户备份和完全备份。
  9. 表模式
  10. 备份某个用户模式下指定的对象(表)。业务数据库通常采用这种备份方式。
  11. 若备份到本地文件,使用如下命令:
  12. exp icdmain/icd rows=y indexes=n compress=n buffer=65536
  13. feedback=100000 volsize=0
  14. file=exp_icdmain_csd_yyyymmdd.dmp
  15. log=exp_icdmain_csd_yyyymmdd.log
  16. tables=icdmain.commoninformation,icdmain.serviceinfo,icdmain.dealinfo
  17. 若直接备份到磁带设备,使用如下命令:
  18. exp icdmain/icd rows=y indexes=n compress=n buffer=65536
  19. feedback=100000 volsize=0
  20. file=/dev/rmt0
  21. log=exp_icdmain_csd_yyyymmdd.log
  22. tables=icdmain.commoninformation,icdmain.serviceinfo,icdmain.dealinfo
  23. 注:在磁盘空间允许的情况下,应先备份到本地服务器,然后再拷贝到磁带。出于速度
  24. 方面的考虑,尽量不要直接备份到磁带设备。
  25. 用户模式
  26. 备份某个用户模式下的所有对象。业务数据库通常采用这种备份方式。
  27. 若备份到本地文件,使用如下命令:
  28. exp icdmain/icd owner=icdmain rows=y indexes=n compress=n buffer=65536
  29. feedback=100000 volsize=0
  30. file=exp_icdmain_yyyymmdd.dmp
  31. log=exp_icdmain_yyyymmdd.log
  32. 若直接备份到磁带设备,使用如下命令:
  33. exp icdmain/icd owner=icdmain rows=y indexes=n compress=n buffer=65536
  34. feedback=100000 volsize=0
  35. file=/dev/rmt0
  36. log=exp_icdmain_yyyymmdd.log
  37. 注:如果磁盘有空间,建议备份到磁盘,然后再拷贝到磁带。如果数据库数据量较小,
  38. 可采用这种办法备份。
  39. 完全模式
  40. 备份完整的数据库。业务数据库不采用这种备份方式。备份命令为:
  41. exp icdmain/icd rows=y indexes=n compress=n buffer=65536
  42. feedback=100000 volsize=0 full=y
  43. file=exp_fulldb_yyyymmdd.dmp(磁带设备则为/dev/rmt0)
  44. log=exp_fulldb_yyyymmdd.log
  45. 对于数据库备份,建议采用增量备份,即只备份上一次备份以来更改的数据。增量备份
  46. 命令:
  47. exp icdmain/icd rows=y indexes=n compress=n buffer=65536
  48. feedback=100000 volsize=0 full=y inctype=incremental
  49. file=exp_fulldb_yyyymmdd.dmp(磁带设备则为/dev/rmt0)
  50. log=exp_fulldb_yyyymmdd.log
  51. 注:关于增量备份必须满足下列条件:
  52. 1.
  53. 只对完整数据库备份有效,且第一次需要full=y参数,以后需要inctype=increment
  54. al参数。
  55. 2. 用户必须有EXP_FULL_DATABASE的系统角色。
  56. 3. 话务量较小时方可采用数据库备份。
  57. 4. 如果磁盘有空间,建议备份到磁盘,然后再备份到磁带。
  58. 业务数据库备份方法及周期
  59. 用EXP进行备份前,先在SYS用户下运行CATEXP.SQL文件(如果以前已运行该文件,则不
  60. 要执行这个脚本)。
  61. 没有特殊说明,不允许在客户端执行备份命令。
  62. 备份命令参照表模式下的备份命令。
  63. 从磁盘文件备份到磁带
  64. 如果首先备份到本地磁盘文件,则需要转储到磁带设备上。
  65. 1. 若需查看主机上配置的磁带设备,使用如下命令:
  66. lsdev -Cc tape
  67. 显示的结果如下例所示:
  68. rmt0 Available 30-58-00-2,0 SCSI 4mm Tape Drive
  69. rmt1 Defined  30-58-00-0,0 SCSI 4mm Tape Drive
  70. 标明Available的设备是可用的磁带设备。
  71. 2. 若需查看磁带存储的内容,使用如下命令:
  72. tar -tvf /dev/rmt0
  73. 显示的结果如下例所示:
  74. -rw-r--r-- 300 400 8089600 Jan 11 14:33:57 2001 exp_icdmain_20010111.dmp
  75. 如果显示类似如下内容,则表示该磁带存储的备份数据是从数据库直接备份到磁带上,
  76. 而非从本地磁盘转储到磁带的备份文件,因此操作系统无法识别。
  77. tar: 0511-193 An error occurred while reading from the media.
  78. There is an input or output error.
  79. 或
  80. tar: 0511-169 A directory checksum error on media; -267331077 not equal to
  81. 2
  82. 5626.
  83. 3. 对于新磁带或无需保留现存数据的磁带,使用如下命令:
  84. tar -cvf /dev/rmt0 exp_icdmain_yyyymmdd.dmp
  85. 注:A. 该命令将无条件覆盖磁带上的现存数据。
  86.   B. 文件名不允许包含路径信息,如:/backup/exp_icdmain_yyyymmdd.dmp。
  87. 4. 对于需要保留现存数据的磁带,使用如下命令:
  88. tar -rvf /dev/rmt0 exp_icdmain_yyyymmdd.dmp
  89. 注:该命令将文件exp_icdmain_yyyymmdd.dmp追加到磁带的末端,不会覆盖现存的数据
  90. 。
  91. 特别强调:如果备份时是从数据库直接备份到磁带上,则不可再向该磁带上追加复制任
  92. 何其他文件,否则该备份数据失效。
  93. 5. 若需将转储到磁带上的备份文件复制到本地硬盘,使用如下命令:
  94. A. 将磁带上的全部文件复制到本地硬盘的当前目录
  95. tar -xvf /dev/rmt0
  96. B. 将磁带上的指定文件复制到本地硬盘的当前目录
  97. tar -xvf /dev/rmt0 exp_icdmain_yyyymmdd.dmp
  98. 备份时间安排
  99. 由于备份时对系统I/O有较大影响,所以,建议在晚上11点以后进行备份工作。
  100. 业务数据库Oracle版本的恢复
  101. 恢复方案需根据备份方案确定。由于业务数据库采用表备份和用户备份相结合的方案,
  102. 所以业务数据库的恢复需根据实际情况采用表恢复和用户恢复相结合的方案。
  103. 恢复方案
  104. 数据库的逻辑恢复分为表恢复、用户恢复、完全恢复三种模式。
  105. 表模式
  106. 此方式将根据按照表模式备份的数据进行恢复。
  107. A. 恢复备份数据的全部内容
  108. 若从本地文件恢复,使用如下命令:
  109. imp icdmain/icd fromuser=icdmain touser=icdmain rows=y indexes=n
  110. commit=y buffer=65536 feedback=100000 ignore=n volsize=0
  111. file=exp_icdmain_cs
  112. d_yyyymmdd.dmp
  113. log=imp_icdmain_csd_yyyymmdd.log
  114. 若从磁带设备恢复,使用如下命令:
  115. imp icdmain/icd fromuser=icdmain touser=icdmain rows=y indexes=n
  116. commit=y buffer=65536 feedback=100000 ignore=n volsize=0 file=/dev/rmt0
  117. log=imp_icdmain_csd_yyyymmdd.log
  118. B. 恢复备份数据中的指定表
  119. 若从本地文件恢复,使用如下命令:
  120. imp icdmain/icd fromuser=icdmain touser=icdmain rows=y indexes=n
  121. commit=y buffer=65536 feedback=100000 ignore=n volsize=0
  122. file=exp_icdmain_cs
  123. d_yyyymmdd.dmp
  124. log=imp_icdmain_csd_yyyymmdd.log
  125. tables=commoninformation,serviceinfo
  126. 若从磁带设备恢复,使用如下命令:
  127. imp icdmain/icd fromuser=icdmain touser=icdmain rows=y indexes=n
  128. commit=y buffer=65536 feedback=100000 ignore=n volsize=0
  129. file=/dev/rmt0
  130. log=imp_icdmain_csd_yyyymmdd.log
  131. tables=commoninformation,serviceinfo
  132. 用户模式
  133. 此方式将根据按照用户模式备份的数据进行恢复。
  134. A. 恢复备份数据的全部内容
  135. 若从本地文件恢复,使用如下命令:
  136. imp icdmain/icd fromuser=icdmain touser=icdmain rows=y indexes=n
  137. commit=y buffer=65536 feedback=100000 ignore=n volsize=0
  138. file=exp_icdmain_yy
  139. yymmdd.dmp
  140. log=imp_icdmain_yyyymmdd.log
  141. 若从磁带设备恢复,使用如下命令:
  142. imp icdmain/icd fromuser=icdmain touser=icdmain rows=y indexes=n
  143. commit=y buffer=65536 feedback=100000 ignore=n volsize=0 file=/dev/rmt0
  144. log=imp_icdmain_yyyymmdd.log
  145. B. 恢复备份数据中的指定表
  146. 若从本地文件恢复,使用如下命令:
  147. imp icdmain/icd fromuser=icdmain touser=icdmain rows=y indexes=n
  148. commit=y buffer=65536 feedback=100000 ignore=n volsize=0
  149. file=exp_icdmain_yy
  150. yymmdd.dmp
  151. log=imp_icdmain_yyyymmdd.log
  152. tables=commoninformation,serviceinfo
  153. 若从磁带设备恢复,使用如下命令:
  154. imp icdmain/icd fromuser=icdmain touser=icdmain rows=y indexes=n
  155. commit=y buffer=65536 feedback=100000 ignore=n volsize=0 file=/dev/rmt0
  156. log=imp_icdmain_yyyymmdd.log
  157. tables=commoninformation,serviceinfo
  158. 完全模式
  159. 如果备份方式为完全模式,采用下列恢复方法:
  160. 若从本地文件恢复,使用如下命令:
  161. imp system/manager rows=y indexes=n commit=y buffer=65536
  162. feedback=100000 ignore=y volsize=0 full=y
  163. file=exp_icdmain_yyyymmdd.dmp
  164. log=imp_icdmain_yyyymmdd.log
  165. 若从磁带设备恢复,使用如下命令:
  166. imp system/manager rows=y indexes=n commit=y buffer=65536
  167. feedback=100000 ignore=y volsize=0 full=y
  168. file=/dev/rmt0
  169. log=imp_icdmain_yyyymmdd.log
  170. 参数说明
  171. 1. ignore参数
  172. Oracle在恢复数据的过程中,当恢复某个表时,该表已经存在,
  173. 就要根据ignore参数的设置来决定如何操作。
  174. 若ignore=y,Oracle不执行CREATE TABLE语句,直接将数据
  175. 插入到表中,如果插入的记录违背了约束条件,比如主键约束,
  176. 则出错的记录不会插入,但合法的记录会添加到表中。
  177. 若ignore=n,Oracle不执行CREATE TABLE语句,同时也不会
  178. 将数据插入到表中,而是忽略该表的错误,继续恢复下一个表。
  179. 2. indexes参数
  180. 在恢复数据的过程中,若indexes=n,则表上的索引不会被恢复
  181. ,但是主键对应的唯一索引将无条件恢复,这是为了保证数据
  182. 的完整性。
  183. 字符集转换
  184. 对于单字节字符集(例如US7ASCII),恢复时,数据库自动转
  185. 换为该会话的字符集(NLS_LANG参数);对于多字节字符集
  186. (例如ZHS16CGB231280),恢复时,应尽量使字符集相同
  187. (避免转换),如果要转换,目标数据库的字符集应是输出数
  188. 据库字符集的超集。
  189. 恢复方法
  190. 业务数据库采用表恢复方案。在用IMP进行恢复前,先在SYS
  191. 用户下运行CATEXP.SQL文件(如果以前已运行该文件,则
  192. 不要执行这个脚本),然后执行下列命令:
  193. IMP ICDMAIN/ICD FILE=文件名 LOG=LOG文件名 ROWS=Y
  194. COMMIT=Y BUFFER=Y IGNORE=Y TABLES=表名
  195. 注:要恢复的表名参照备份的表名
  196.   。恢复是在原表基础上累加数据
  197.   。没有特殊说明,不允许在客户端执行恢复命令
  198. 将一个数据库的某用户的所有表导到另外数据库的一个用户下面的例子  
  199. exp userid=system/manager owner=username1 file=expfile.dmp
  200. imp userid=system/manager fromuser=username1 touser=username2 ignore=y file=expfile.dmp
  201. 将一个数据库的某用户的所有表导到另外数据库的一个用户下面的例子  
  202. exp userid=system/manager owner=username1 file=expfile.dmp
  203. imp userid=system/manager fromuser=username1 touser=username2 ignore=y file=expfile.dmp
  204. ORACLE数据库有两类备份方法。第一类为物理备份,该方法实现数据库的完整恢复,但
  205. 数据库必须运行在归挡模式下(业务数据库在非归挡模式下运行),且需要极大的外部
  206. 存储设备,例如磁带库;第二类备份方式为逻辑备份,业务数据库采用此种方式,此方
  207. 法不需要数据库运行在归挡模式下,不但备份简单,而且可以不需要外部存储设备。
  208. 数据库逻辑备份方法
  209. ORACLE数据库的逻辑备份分为三种模式:表备份、用户备份和完全备份。
  210. 表模式
  211. 备份某个用户模式下指定的对象(表)。业务数据库通常采用这种备份方式。
  212. 若备份到本地文件,使用如下命令:
  213. exp icdmain/icd rows=y indexes=n compress=n buffer=65536
  214. feedback=100000 volsize=0
  215. file=exp_icdmain_csd_yyyymmdd.dmp
  216. log=exp_icdmain_csd_yyyymmdd.log
  217. tables=icdmain.commoninformation,icdmain.serviceinfo,icdmain.dealinfo
  218. 若直接备份到磁带设备,使用如下命令:
  219. exp icdmain/icd rows=y indexes=n compress=n buffer=65536
  220. feedback=100000 volsize=0
  221. file=/dev/rmt0
  222. log=exp_icdmain_csd_yyyymmdd.log
  223. tables=icdmain.commoninformation,icdmain.serviceinfo,icdmain.dealinfo
  224. 注:在磁盘空间允许的情况下,应先备份到本地服务器,然后再拷贝到磁带。出于速度
  225. 方面的考虑,尽量不要直接备份到磁带设备。
  226. 用户模式
  227. 备份某个用户模式下的所有对象。业务数据库通常采用这种备份方式。
  228. 若备份到本地文件,使用如下命令:
  229. exp icdmain/icd owner=icdmain rows=y indexes=n compress=n buffer=65536
  230. feedback=100000 volsize=0
  231. file=exp_icdmain_yyyymmdd.dmp
  232. log=exp_icdmain_yyyymmdd.log
  233. 若直接备份到磁带设备,使用如下命令:
  234. exp icdmain/icd owner=icdmain rows=y indexes=n compress=n buffer=65536
  235. feedback=100000 volsize=0
  236. file=/dev/rmt0
  237. log=exp_icdmain_yyyymmdd.log
  238. 注:如果磁盘有空间,建议备份到磁盘,然后再拷贝到磁带。如果数据库数据量较小,
  239. 可采用这种办法备份。
  240. 完全模式
  241. 备份完整的数据库。业务数据库不采用这种备份方式。备份命令为:
  242. exp icdmain/icd rows=y indexes=n compress=n buffer=65536
  243. feedback=100000 volsize=0 full=y
  244. file=exp_fulldb_yyyymmdd.dmp(磁带设备则为/dev/rmt0)
  245. log=exp_fulldb_yyyymmdd.log
  246. 对于数据库备份,建议采用增量备份,即只备份上一次备份以来更改的数据。增量备份
  247. 命令:
  248. exp icdmain/icd rows=y indexes=n compress=n buffer=65536
  249. feedback=100000 volsize=0 full=y inctype=incremental
  250. file=exp_fulldb_yyyymmdd.dmp(磁带设备则为/dev/rmt0)
  251. log=exp_fulldb_yyyymmdd.log
  252. 注:关于增量备份必须满足下列条件:
  253. 1.
  254. 只对完整数据库备份有效,且第一次需要full=y参数,以后需要inctype=increment
  255. al参数。
  256. 2. 用户必须有EXP_FULL_DATABASE的系统角色。
  257. 3. 话务量较小时方可采用数据库备份。
  258. 4. 如果磁盘有空间,建议备份到磁盘,然后再备份到磁带。
  259. 业务数据库备份方法及周期
  260. 用EXP进行备份前,先在SYS用户下运行CATEXP.SQL文件(如果以前已运行该文件,则不
  261. 要执行这个脚本)。
  262. 没有特殊说明,不允许在客户端执行备份命令。
  263. 备份命令参照表模式下的备份命令。
  264. 从磁盘文件备份到磁带
  265. 如果首先备份到本地磁盘文件,则需要转储到磁带设备上。
  266. 1. 若需查看主机上配置的磁带设备,使用如下命令:
  267. lsdev -Cc tape
  268. 显示的结果如下例所示:
  269. rmt0 Available 30-58-00-2,0 SCSI 4mm Tape Drive
  270. rmt1 Defined  30-58-00-0,0 SCSI 4mm Tape Drive
  271. 标明Available的设备是可用的磁带设备。
  272. 2. 若需查看磁带存储的内容,使用如下命令:
  273. tar -tvf /dev/rmt0
  274. 显示的结果如下例所示:
  275. -rw-r--r-- 300 400 8089600 Jan 11 14:33:57 2001 exp_icdmain_20010111.dmp
  276. 如果显示类似如下内容,则表示该磁带存储的备份数据是从数据库直接备份到磁带上,
  277. 而非从本地磁盘转储到磁带的备份文件,因此操作系统无法识别。
  278. tar: 0511-193 An error occurred while reading from the media.
  279. There is an input or output error.
  280. 或
  281. tar: 0511-169 A directory checksum error on media; -267331077 not equal to
  282. 2
  283. 5626.
  284. 3. 对于新磁带或无需保留现存数据的磁带,使用如下命令:
  285. tar -cvf /dev/rmt0 exp_icdmain_yyyymmdd.dmp
  286. 注:A. 该命令将无条件覆盖磁带上的现存数据。
  287.   B. 文件名不允许包含路径信息,如:/backup/exp_icdmain_yyyymmdd.dmp。
  288. 4. 对于需要保留现存数据的磁带,使用如下命令:
  289. tar -rvf /dev/rmt0 exp_icdmain_yyyymmdd.dmp
  290. 注:该命令将文件exp_icdmain_yyyymmdd.dmp追加到磁带的末端,不会覆盖现存的数据
  291. 。
  292. 特别强调:如果备份时是从数据库直接备份到磁带上,则不可再向该磁带上追加复制任
  293. 何其他文件,否则该备份数据失效。
  294. 5. 若需将转储到磁带上的备份文件复制到本地硬盘,使用如下命令:
  295. A. 将磁带上的全部文件复制到本地硬盘的当前目录
  296. tar -xvf /dev/rmt0
  297. B. 将磁带上的指定文件复制到本地硬盘的当前目录
  298. tar -xvf /dev/rmt0 exp_icdmain_yyyymmdd.dmp
  299. 备份时间安排
  300. 由于备份时对系统I/O有较大影响,所以,建议在晚上11点以后进行备份工作。
  301. 业务数据库Oracle版本的恢复
  302. 恢复方案需根据备份方案确定。由于业务数据库采用表备份和用户备份相结合的方案,
  303. 所以业务数据库的恢复需根据实际情况采用表恢复和用户恢复相结合的方案。
  304. 恢复方案
  305. 数据库的逻辑恢复分为表恢复、用户恢复、完全恢复三种模式。
  306. 表模式
  307. 此方式将根据按照表模式备份的数据进行恢复。
  308. A. 恢复备份数据的全部内容
  309. 若从本地文件恢复,使用如下命令:
  310. imp icdmain/icd fromuser=icdmain touser=icdmain rows=y indexes=n
  311. commit=y buffer=65536 feedback=100000 ignore=n volsize=0
  312. file=exp_icdmain_cs
  313. d_yyyymmdd.dmp
  314. log=imp_icdmain_csd_yyyymmdd.log
  315. 若从磁带设备恢复,使用如下命令:
  316. imp icdmain/icd fromuser=icdmain touser=icdmain rows=y indexes=n
  317. commit=y buffer=65536 feedback=100000 ignore=n volsize=0 file=/dev/rmt0
  318. log=imp_icdmain_csd_yyyymmdd.log
  319. B. 恢复备份数据中的指定表
  320. 若从本地文件恢复,使用如下命令:
  321. imp icdmain/icd fromuser=icdmain touser=icdmain rows=y indexes=n
  322. commit=y buffer=65536 feedback=100000 ignore=n volsize=0
  323. file=exp_icdmain_cs
  324. d_yyyymmdd.dmp
  325. log=imp_icdmain_csd_yyyymmdd.log
  326. tables=commoninformation,serviceinfo
  327. 若从磁带设备恢复,使用如下命令:
  328. imp icdmain/icd fromuser=icdmain touser=icdmain rows=y indexes=n
  329. commit=y buffer=65536 feedback=100000 ignore=n volsize=0
  330. file=/dev/rmt0
  331. log=imp_icdmain_csd_yyyymmdd.log
  332. tables=commoninformation,serviceinfo
  333. 用户模式
  334. 此方式将根据按照用户模式备份的数据进行恢复。
  335. A. 恢复备份数据的全部内容
  336. 若从本地文件恢复,使用如下命令:
  337. imp icdmain/icd fromuser=icdmain touser=icdmain rows=y indexes=n
  338. commit=y buffer=65536 feedback=100000 ignore=n volsize=0
  339. file=exp_icdmain_yy
  340. yymmdd.dmp
  341. log=imp_icdmain_yyyymmdd.log
  342. 若从磁带设备恢复,使用如下命令:
  343. imp icdmain/icd fromuser=icdmain touser=icdmain rows=y indexes=n
  344. commit=y buffer=65536 feedback=100000 ignore=n volsize=0 file=/dev/rmt0
  345. log=imp_icdmain_yyyymmdd.log
  346. B. 恢复备份数据中的指定表
  347. 若从本地文件恢复,使用如下命令:
  348. imp icdmain/icd fromuser=icdmain touser=icdmain rows=y indexes=n
  349. commit=y buffer=65536 feedback=100000 ignore=n volsize=0
  350. file=exp_icdmain_yy
  351. yymmdd.dmp
  352. log=imp_icdmain_yyyymmdd.log
  353. tables=commoninformation,serviceinfo
  354. 若从磁带设备恢复,使用如下命令:
  355. imp icdmain/icd fromuser=icdmain touser=icdmain rows=y indexes=n
  356. commit=y buffer=65536 feedback=100000 ignore=n volsize=0 file=/dev/rmt0
  357. log=imp_icdmain_yyyymmdd.log
  358. tables=commoninformation,serviceinfo
  359. 完全模式
  360. 如果备份方式为完全模式,采用下列恢复方法:
  361. 若从本地文件恢复,使用如下命令:
  362. imp system/manager rows=y indexes=n commit=y buffer=65536
  363. feedback=100000 ignore=y volsize=0 full=y
  364. file=exp_icdmain_yyyymmdd.dmp
  365. log=imp_icdmain_yyyymmdd.log
  366. 若从磁带设备恢复,使用如下命令:
  367. imp system/manager rows=y indexes=n commit=y buffer=65536
  368. feedback=100000 ignore=y volsize=0 full=y
  369. file=/dev/rmt0
  370. log=imp_icdmain_yyyymmdd.log
  371. 参数说明
  372. 1. ignore参数
  373. Oracle在恢复数据的过程中,当恢复某个表时,该表已经存在,
  374. 就要根据ignore参数的设置来决定如何操作。
  375. 若ignore=y,Oracle不执行CREATE TABLE语句,直接将数据
  376. 插入到表中,如果插入的记录违背了约束条件,比如主键约束,
  377. 则出错的记录不会插入,但合法的记录会添加到表中。
  378. 若ignore=n,Oracle不执行CREATE TABLE语句,同时也不会
  379. 将数据插入到表中,而是忽略该表的错误,继续恢复下一个表。
  380. 2. indexes参数
  381. 在恢复数据的过程中,若indexes=n,则表上的索引不会被恢复
  382. ,但是主键对应的唯一索引将无条件恢复,这是为了保证数据
  383. 的完整性。
  384. 字符集转换
  385. 对于单字节字符集(例如US7ASCII),恢复时,数据库自动转
  386. 换为该会话的字符集(NLS_LANG参数);对于多字节字符集
  387. (例如ZHS16CGB231280),恢复时,应尽量使字符集相同
  388. (避免转换),如果要转换,目标数据库的字符集应是输出数
  389. 据库字符集的超集。
  390. 恢复方法
  391. 业务数据库采用表恢复方案。在用IMP进行恢复前,先在SYS
  392. 用户下运行CATEXP.SQL文件(如果以前已运行该文件,则
  393. 不要执行这个脚本),然后执行下列命令:
  394. IMP ICDMAIN/ICD FILE=文件名 LOG=LOG文件名 ROWS=Y
  395. COMMIT=Y BUFFER=Y IGNORE=Y TABLES=表名
  396. 注:要恢复的表名参照备份的表名
  397.   。恢复是在原表基础上累加数据
  398.   。没有特殊说明,不允许在客户端执行恢复命令

阅读(2363) | 评论(4) | 转发(1) |
给主人留下些什么吧!~~

linux_kaige2012-03-23 15:32:33

十七岁的回忆: Oracle博大精桑呢啊( ⊙ o ⊙ )啊!.....
是啊,最近忙,没时间学。。。

linux_kaige2012-03-23 15:30:06

夏冰软件: 博主写的不错,支持一下.....
谢谢!本人数据库方面还是菜鸟

夏冰软件2012-03-23 15:28:04

博主写的不错,支持一下

十七岁的回忆2012-03-22 22:26:34

Oracle博大精桑呢啊( ⊙ o ⊙ )啊!