以下是在山西做项目时的操作,仅供参考
Oracle 9i数据库备份,升级
第一步
bash$ exp viss170/viss170 owner=viss170 file=./viss170.dmp --导出数据库文件
第二步
$sqlplus
SQL> CREATE TABLESPACE viss212 DATAFILE '/global/oracle/oradata/viss/viss212.dbf' SIZE 1024M
AUTOEXTEND ON NEXT 50M MAXSIZE UNLIMITED;
SQL> CREATE USER viss212 IDENTIFIED BY viss212 DEFAULT TABLESPACE viss212;
SQL> GRANT CONNECT,RESOURCE TO &&OPER_USER;
SQL> revoke unlimited tablespace from viss212; //否则将不能导入数据到viss212的空间!
SQL> alter user viss212 quota 0 on viss170;
SQL> alter user viss212 quota unlimited on viss212;
SQL> commit;
SQL> exit ---创建新的表空间
第三步
$imp viss212/viss212 file=viss170.dmp fromuser=viss170 touser=viss212 ---将之前导出的数据库导入到新的表空间里
第四步
$cd /export/home/ems/db/oracle/upgrade/1.7.3_to_1.7.4
$sqlplus
SQL>@upgrade_173_174.sql
SQL>exit
---将旧的数据库(1.7.3)升级到新的数据库(1.7.4)
第五步
$cd /export/home/ems/db/oracle/upgrade/1.7.4
$sqlplus
SQL>@upgradeDB.plb
SQL>exit ---将旧的数据库(1.7.4)升级到新的数据库(2.1)
第六步
$cd /export/home/ems/db/oracle/upgrade/1.7.4/upgrade-areaid
修改配置文件JdbcConfig.properties
JDBC.Driver=oracle.jdbc.driver.OracleDriver
JDBC.ConnectionURL=jdbc:oracle:thin:@172.31.130.196:1521:viss
JDBC.Username=VISS212
JDBC.Password=VISS212
修改执行文件run.sh,注释掉上面几行export配置命令
#!/bin/sh
#export JAVA_HOME=/usr/java/jdk1.5.0_01
#export CLASSPATH=.;$JAVA_HOME/lib/dt.jar;$JAVA_HOME/lib/tools.jar
#export PATH=$PATH:$JAVA_HOME/bin
$JAVA_HOME/bin/java -classpath areaNumRunner.jar:oracle.jar cn.com.sbell.AreaNumberingRunner
修改执行文件run.sh的权限
$chmod 777 run.sh
执行脚本
./run.sh
第七步
$ sqlplus
SQL> truncate table ems_performance_data;
SQL> truncate table ems_log;
SQL> truncate table ems_alarm;
SQL> commit; ---清理升级后的数据库,去掉不要的信息
附:
$exp owner=viss170 file=viss170.dmp
其中mzdb是SID,viss170为操作数据库的用户名,bell1234为操作数据库用户名的密码
在oracle用户下,使用imp命令恢复以前备份的数据
$imp owner=viss170 file=viss170.dmp
阅读(1280) | 评论(0) | 转发(0) |