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)))