導入dmp文件出現各種初始化參數不一致的警告問題
因LENGTH_IN_CHAR參數不一致引起導數失敗
描述
利用DEXP、DIMP工具做達夢數據庫導入|導出數據時,工具提示[警告]服務器與文件內數據的LENGTH_IN_CHAR參數不匹配【警告】可能會有錯誤發生。
原因
因為源數據庫、目的數據庫的初始化參數LENGTH_IN_CHAR設置不一致的原因。
頁大小不匹配,restore error code:-8210
原因:
這是因為產生備份文件的數據庫的數據文件使用頁大小與還原備份文件的數據庫的數據文件所使用的頁大小不同,必須保證兩邊的數據文件使用的頁大小一致才能正常還原。注:數據文件使用的頁大小(page_size),可以為4K、8K、16K 或32K 之一,選擇的頁大小越大,則DM 支持的元組長度也越大,但同時空間利用率可能下降,缺省使8K。
解決辦法:
-
使用數據庫配置助手dbca重現初始化一個庫,在設置參數時注意保證兩邊的頁大小一致;
-
在命令行中使用dminit重現初始化一個庫,在設置參數時注意保證兩邊的頁大小一致。
大小寫區分屬性不匹配,restore error code:-8212
這是因為產生備份文件的數據庫的標識符大小寫(case_sensitive)的敏感程度與還原備份文件的數據庫對標識符大小寫的敏感程度不同,必須保證兩邊對標識符大小寫敏感程度一致才能正常還原。
注:標識符大小寫敏感,默認值為Y。當大小寫敏感時,小寫的標識符應用雙引號括起,否則被轉換為大寫;當大小寫不敏感時,系統不自動轉換標識符的大小寫,在標識符比較時也不區分大小寫。
LENGTH_IN_CHAR屬性不匹配,restore error code:-8266
解決辦法:
這是因為產生備份文件的數據庫的LENGTH_IN_CHAR屬性(默認為0)與還原備份文件的數據庫的LENGTH_IN_CHAR屬性不一致,必須保證兩邊數據庫的LENGTH_IN_CHAR屬性一致才能正常還原。
注:LENGTH_IN_CHAR屬性設置為1 時,所有 VARCHAR 類型對象的長度以字符為單位,否則以字節為單位。
編碼不一致
解決辦法
這是因為產生備份文件的數據庫的字符集編碼屬性(默認為GB18030)與還原備份文件的數據庫的字符集編碼屬性不一致,必須保證兩邊數據庫的字符集編碼屬性一致才能正常還原。
備注:只有初始化實例的時候可以選擇以上屬性,一經啟用無法修改。需要重新初始化實例保持導出和導入的初始化設置一樣。