ORA-19586: string k-byte limit is too small to hold piece directory
Cause: The user-specified limit for MAXPIECESIZE for this channel is not enough to hold the backup set control data.
Action: Allocate a channel specifying a larget valule for MAXPIECESIZE and retry the operation.
ORA-19586: string k-byte limit 太小,无法容纳片目录
OBJECT_VALUE 参数包含的字符串太长,Pre-11.2 Oracle在做分拆(Splitting)的时候会抛出ORA-19586错误。从11.2开始,可以通过使用DBMS_XPLAN.DISPLAY_CURSOR() 函数来取代做分拆的操作。
首先确定参数确定参数OBJECT_VALUE 的值,如果这个值比K-byte limit小,有两种途径来解决ORA-19586错误:
1. 如果使用的是11.2以前的版本,那么可以通过执行下面的语句更改OBJECT_VALUE的值:
ALTER SYSTEM SET OBJECT_VALUE=value SCOPE=MEMORY SID=’*’
2. 如果版本是11.2以后,那么可以考虑将查询改为使用DBMS_XPLAN.DISPLAY_CURSOR()函数来完成查询操作