1、联邦数据库操作遇到的问题:主库与从库表结构完全一样,从主库向从库导数据报错。
原因:生产系统主库字符集GBK,一个汉字占两个字符,从库utf-8,一个汉字占三个字符,所以从库字段长度应该是主库的1.5倍。
例如,主库varchar(20),从库至少应是varchar(30)。
2、对表的操作有时不需要记日志,事物太大,一旦回滚日志空间可能会爆掉,或者想节省时间。
清空表不记录日志:
ALTER TABLE DM_USER_DEV_D_200902_YMH ACTIVATE NOT LOGGEDINITIALLY WITH EMPTY TABLE
对于插入表不记日志,可用脚本运行的方式:
alter table XXX activate not logged initially locksizetable;
DML语句;
将以上语句放入脚本1.sql,运行方式:db2 +c –tvf1.sql
+c表示关闭自动提交功能。
Db2默认情况下一条dml语句执行完就会自动提交,若不用此参数,alter table XXX activate not logged initially locksize table 语句执行完毕后表的自动提交又打开了,相当于白运行了这条语句。
用此参数让整个脚本执行结束才提交,才打开表的自动提交功能。
3. 更改字段类型:
alter table tbname_top alter country_name SET DATA TYPEVARCHAR(50)
只能由varchar小改为varch