对CentOS7下 Oracle 自动备份问题补充
前几天做的一个CentOS7下 Oracle 自动备份,根据运维反馈,导出时没有问题,导入时报错了
IMP-00017 : 由于ORACLE 错误 942
IMP-00003:遇到ORACLE 错误942
ORA-00942 表或视图不存在
以下是截图:
度娘了一下,拿出以前的导入日志进行了对比,发现导出时只导出了有数据的表, 没有数据的表并没有导出来,因为11G中有个新特性,当表没有数据的时候,不分配segment
各路大神的解决方案,一下连接是一个参考
https://blog.csdn.net/www1056481167/article/details/79295873
将成功导入日志中没有数据的表进行强行 分配segment再导出 ,即可
alter table ADQM_SECURITY_DISPLAY allocate extent;
alter table SRC_12301_NEWS allocate extent;
alter table SRC_BUSROUTE_RELATION allocate extent;
alter table SRC_BUS_GPS_HIS allocate extent;
alter table SRC_BUS_GPS_HIS_161027 allocate extent;
alter table SRC_BUS_GPS_HIS_OLD allocate extent;
alter table SRC_BUS_GPS_HIS_PAR allocate extent;
alter table SRC_BUS_LOCATION allocate extent;
alter table SRC_BUS_ROUTE_STATION allocate extent;
alter table SRC_BUS_STATION_HIS allocate extent;
alter table SRC_BUS_STATION_HIS_161027 allocate extent;
alter table SRC_BUS_STATION_HIS_OLD allocate extent;
alter table SRC_DICTIONARY_INFO allocate extent;
alter table SRC_FOODENT_COOKING_STYLE allocate extent;
alter table SRC_FOODENT_INFO allocate extent;
alter table SRC_HOTEL_STAT_DETAIL allocate extent;
alter table SRC_TAXINUM_RELATION allocate extent;
alter table SRC_TAXI_LOCATION allocate extent;
alter table SRC_TAXI_LOCATION_HIS allocate extent;
alter table SRC_TAXI_LOCATION_HIS_161027 allocate extent;
alter table SRC_TAXI_LOCATION_HIS_OLD allocate extent;
alter table SRC_TAXI_LOCATION_HIS_temp allocate extent;
alter table SRC_WIFI_LOG allocate extent;
执行以上sql后,在进行导出,即可!
对CentOS7下 Oracle 自动备份:
https://blog.csdn.net/Byppfeng/article/details/90376780
再次记录-。-
根据运维反馈,导出的备份文件导入时报EXP-00091 错误,度娘了一番,说是字符集不符合,根据度娘的方法试了一遍,改了NLS_LANG
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
手动sh /home/oracle/autobackup.sh ,发现没有任何问题,
设置定时器,定时执行后,
咦!这个EXP-00091又出现了
目前还没找到是什么原因,做个记录,如果有大神知道是什么原因,还望指教~~