复制数据库 oracle

来源:互联网 发布:sql read committed 编辑:程序博客网 时间:2024/06/06 18:57

oracle数据库复制

在同一台机器中复制orcl数据库 到wlf数据库过程

1: cp -R $ORACLE_BASE/admin/orcl wlf
2: cp -R $ORACLE_BASE/oradata/orcl wlf
3: 原数据库startup mount
   alter database backup controlfile to trace;
   到 $ORACLE_BASE/admin/orcl/udump/   下找到最新生成的trc文件,
   复制和修改相应内容,保存为/sql.sql,如下:
           
CREATE CONTROLFILE set DATABASE "wlf" RESETLOGS  NOARCHIVELOG
    MAXLOGFILES 16
    MAXLOGMEMBERS 3
    MAXDATAFILES 100
    MAXINSTANCES 8
    MAXLOGHISTORY 292
LOGFILE
  GROUP 1 '/opt/app/oracle/oradata/wlf/redo01.log'  SIZE 50M,
  GROUP 2 '/opt/app/oracle/oradata/wlf/redo02.log'  SIZE 50M,
  GROUP 3 '/opt/app/oracle/oradata/wlf/redo03.log'  SIZE 50M
-- STANDBY LOGFILE
DATAFILE
  '/opt/app/oracle/oradata/wlf/system01.dbf',
  '/opt/app/oracle/oradata/wlf/undotbs01.dbf',
  '/opt/app/oracle/oradata/wlf/sysaux01.dbf',
  '/opt/app/oracle/oradata/wlf/users01.dbf'
CHARACTER SET ZHS16GBK

4:orapwd file=orapwwlf password=orcl entries=10;
5: 在原实例中生成pfile文件,create pfile=initorcl.ora from spfile;
   修改pfile文件,并复制为initwlf.ora到 */dbs/下   
6:export ORACLE_SID=wlf
   sqlplus / as sysdba
   startup nomount
   @/sql.sql
   alter open database resetlogs;
7:数据库orcl 复制到wlf完成。
  alter tablespace temp add tempfile '/opt/oracle/oradata/orcl/temp01.dbf';

8:建立EM
  修改/etc/oratab中的相应内容
9:运行dbca,添加相应实例的EM

创建一个EM资料库
emca -repos create
重建一个EM资料库
emca -repos recreate
删除一个EM资料库
emca -repos drop
配置数据库的 Database Control
emca -config dbcontrol db
删除数据库的 Database Control配置
emca -deconfig dbcontrol db
重新配置db control的端口,默认端口在1158
emca -reconfig ports
emca -reconfig ports -dbcontrol_http_port 1160
emca -reconfig ports -agent_port 3940
先设置ORACLE_SID环境变量后,启动EM console服务
emctl start dbconsole
先设置ORACLE_SID环境变量后,停止EM console服务
emctl stop dbconsole
先设置ORACLE_SID环境变量后,查看EM console服务的状态
emctl status dbconsole

配置dbconsole的步骤
emca -repos create
emca -config dbcontrol db
emctl start dbconsole
重新配置dbconsole的步骤
emca -repos drop
emca -repos create
emca -config dbcontrol db
emctl start dbconsole

 


#################
改机器名后重新配置emca
1,修改DBSNMP密码:
重新配置DBCONSOLE,需要输入DBSNMP密码,但任何密码都会显示错误,需要预先修改。
sql>alter user dbsnmp identified by xxx;

2,删除早期DBCONSOLE创建的用户:

sql>drop role MGMT_USER;
sql>drop user MGMT_VIEW cascade;
sql>drop user sysman cascade;

3,删除早期DBCONSOLE创建的对象:
sql>drop PUBLIC SYNONYM MGMT_TARGET_BLACKOUTS;
sql>drop public synonym SETEMVIEWUSERCONTEXT;

4,重新创建DBCONSOLE:(如果是在windows下,要先到注册表删除DBCONSOLE的服务,重启电脑)

$emca -config dbcontrol db -repos create

根据提示,先输入SID,再输入Y继续;
输入端口1521,输入SYS密码,输入DBSNMP密码,输入SYSMAN 密码,输入Y继续
完成。

5,检查状态 emctl status dbconsole。

 

附emca常用命令:

创建一个EM资料库

emca -repos create

 

重建一个EM资料库

emca -repos recreate

 

删除一个EM资料库

emca -repos drop

 

配置数据库的 Database Control

emca -config dbcontrol db

 

删除数据库的 Database Control配置

emca -deconfig dbcontrol db

 

重新配置db control的端口,默认端口在1158

emca -reconfig ports

emca -reconfig ports -dbcontrol_http_port 1160

emca -reconfig ports -agent_port 3940

 

先设置ORACLE_SID环境变量后,启动EM console服务

emctl start dbconsole

先设置ORACLE_SID环境变量后,停止EM console服务

emctl stop dbconsole

先设置ORACLE_SID环境变量后,查看EM console服务的状态

emctl status dbconsole

 

 

配置dbconsole的步骤

emca -repos create

emca -config dbcontrol db

emctl start dbconsole

 

重新配置dbconsole的步骤

emca -repos drop

emca -repos create

emca -config dbcontrol db

emctl start dbconsole


LISTENER=
  (DESCRIPTION=
    (ADDRESS_LIST=
      (ADDRESS=(PROTOCOL=tcp)(HOST=sale-server)(PORT=1521))
      (ADDRESS=(PROTOCOL=ipc)(KEY=extproc))))
SID_LIST_LISTENER=
  (SID_LIST=
    (SID_DESC=
      (GLOBAL_DBNAME=sales.us.acme.com)
      (ORACLE_HOME=/oracle9i)
      (SID_NAME=sales))
    (SID_DESC=
      (SID_NAME=plsextproc)
      (ORACLE_HOME=/oracle9i)
      (PROGRAM=extproc)))

 

  

 

 

 

来自http://wenku.baidu.com/view/d22cd100bed5b9f3f90f1c33.html

原创粉丝点击