最近碰到BIEE11g DEV_MDS,DEV_BIPLATFORM所在的 repository数据库不稳定,就想把内容迁到另外的数据库。
1.准备工作
怎么修改设置,这篇文档(https://ask.hellobi.com/question/161)咖啡姐说得很清楚了,照着做即可。
总的来说就是修改em\Weblogic域节点\bifoundation_domain\右键\JDBC数据源。
注意4个连接池都要修改掉。
2.迁移数据库
我看到方法有了,就去迁移用户数据了。
源数据库,导出即可:
expdp dba/password DIRECTORY=exp DUMPFILE=biee11g.dmp LOGFILE=biee11gexp.log SCHEMAS=dev_biplatform,dev_mds
注意如果只是dba用户,会报错 ORA-39181, 需要个特殊权限,执行以下语句即可
grant EXEMPT ACCESS POLICY to dba
目标数据库,先建表空间(注意还有temp表空间),然后导入:
CREATE TABLESPACE TBS_BIEE11G DATAFILE '/biee11g/tbs_biee11g01.dbf' SIZE 100m;
create temporary tablespace BI11G_IAS_TEMP tempfile '/biee11g/tbs_biee11gtmp01.dbf' size 50M;
impdp dba/password DIRECTORY=exp CONTENT=all DUMPFILE=biee11g.dmp LOGFILE=biee11gimp.log SCHEMAS=dev_biplatform,dev_mds
不过impdb报了有9个view编译不通过,开始当需要sysdba权限导入,使用以下命令,注意\转义
impdp \'sys/pass as sysdba\' DIRECTORY=exp CONTENT=all DUMPFILE=biee11g.dmp LOGFILE=biee11gimp.log SCHEMAS=dev_biplatform,dev_mds
发现还不对,直接使用dev_biplatform用户登陆后编译,发现没有执行dbms_lock权限,赋权然后编译即可
grant execute on dbms_lock to dev_biplatform; --注意普通管理员没有权限
3.设置连接池
由于原来设置的时候使用了hostname,修改就比较简单,保持了连接字符串不变,直接修改host文件,hostname对到新的数据库即可。
修改后可以不用重启,在修改页面重置连接池即可。
查过原来数据已没有连接,新的数据库已经连接上去。
然后使用用户登陆成功。