第一部分:创建新的表空间(方便在测试机测试日结明细表的迁移,忘记怎么设置新建表空间的用户名和密码了)。
1、再bkwl 的测试机SQL窗口执行代码
create tablespace zbwlnew datafile 'D:\APP\ADMINISTRATOR\ORADATA\ZBWL\zbwlnew.dbf' size 1024M autoextend on next 5M maxsize 3000M;
alter user zbwlnew quota unlimited on zbwlnew;
赋给权限
grant connect,resource to zbwlnew; grant create any sequence to zbwlnew; grant create any table to zbwlnew; grant delete any table to zbwlnew; grant insert any table to zbwlnew; grant select any table to zbwlnew; grant unlimited tablespace to zbwlnew; grant execute any procedure to zbwlnew; grant update any table to zbwlnew; grant create any view to zbwlnew;
2、从CMD命令导入从正式机导出的 dmp文件
imp FILE=F:\博科数据库备份文件
\zbwl20170602.dmp ignore=y full=y
导出:
exp file=d:\daochu.dmp full=y
3、修改测试机的连接地址修改完红框里运行一下
修改地址C:\TMS_ZB\setup\setup-env.bat 服务器:10.0.0.171
4、修改地址(红色部分):
:: 设置环境变量:: 以下变量需要根据现场环境进行修改,设置系统所连接的数据库参数:: DB_TYPE 设置数据库类型,取值:DB2=0; Oracle=1; MSSQLServer=2; MySQL=3;:: JDBC_DRIVER 设置 JDBC 驱动类名,Oracle=oracle.jdbc.driver.OracleDriver; MSSQLServer=net.sourceforge.jtds.jdbc.Driver:: JDBC_URL 设置 JDBC 连接的数据库信息,Oracle=jdbc:oracle:thin:@[数据库服务器名或 IP 地址]:[端口,通常是1521]:[数据库实例名]; MSSQLServer=jdbc:jtds:sqlserver://[数据库服务器名或 IP 地址]:[端口,通常是1433]/[数据库实例名]:: DB_USERNAME 设置数据库用户名,DB_PASSWORD 设置数据库用户密码,DB_SERVER 设置数据库服务器名或 IP 地址:: LOG4J_LEVEL 设置日志的级别,Log4j建议只使用四个级别,优先级从高到低分别是:ERROR、WARN、INFO、DEBUG。set DB_TYPE=1
set JDBC_DRIVER=oracle.jdbc.driver.OracleDriverset JDBC_URL=jdbc:oracle:thin:@10.0.0.172:1521:bkwlset DB_USERNAME=zbwlnewset DB_PASSWORD=111111set DB_SERVER=localhostset LOG4J_LEVEL=INFO修改之后,测试机就连接到了这个新的表空间(数据库),主要是先在测试机测试日结明细表的迁移(WM_DAILY_QUANT)。
5、修改完成双击同个文件夹下的STEP.BAT文件,重新运行一下。
6、完成后去前台做数据迁移。在前台做数据迁移有两种坏处:第一,不知道执行到哪一步。第二:需要开启TOMCAT服务,如果开启服务,用户如果录入单据,数据迁移中会
很容易出现错误。所以,一般生成SQL脚本,把SQL语句复制到ORACEL客户端,直接再数据库执行,同时关掉TOMCAT服务。
第二部分:cmd命令导入导出。
导入DMP文件:
imp zbwlnew/111111@BKWL FILE=F:\博科数据库备份文件\zbwl20170602.dmp ignore=y full=y
第三部分:再前台添加数据迁移功能。增加文字里的红字部分。
文件地址: C:\TMS_ZB\Latest\core_config\Module\SCM\loginui.ini
[ShowTest] ReBuild=True RecordMidCall=True ReMigrate=True
第四部分:查看博科的日志文件。
C:\TMS_ZB\setup\
setup-env.bat
set SERVER_PATH=C:/TMS_ZB/Latest/webapps/myscm set SERVER_CONFIG=C:/TMS_ZB/Latest/core_config2016.05.09/core_config ::set SERVER_CONFIG=E:/core_config_sz F:/myscm/config set LOG4J_FILE=C:/TMS_ZB/Latest/logs/mySCM_2012.log
第五部分:在数据库建立触发器,用于监控wm_daily_quant 表的数据变化。
触发器代码:
CREATE TABLE WM_DAILY_QUANT_P_K("K_TIME" TIMESTAMP,"DQT_DATE" DATE); CREATE OR REPLACE TRIGGER KEEP_P AFTER UPDATE ON WM_DAILY_QUANT_P FOR EACH ROW BEGIN INSERT INTO WM_DAILY_QUANT_P_K(K_TIME,DQT_DATE) VALUES(SYSDATE,:NEW.DQT_DATE); END;
注意:再做数据恢复之前,要删除监控表wm_daily_quant_P_K里的数据,再删除掉触发器,数据恢复之后再建立触发器