oracle11g導出空表怎樣設置?
1.默認情況下,Oracle11g不會將段分配給空表,因此在使用exp導出Oracle11g數據庫時,將不會導出空表。
2.將deferred_segment_creation參數設置為FALSE后,段將被分配給空表和非空表。在sqlplus中,執行以下命令:sqlaltersystemsetdeferred_segment_creationfalse;視圖:sqlshowparameterdefered_segment_creation;設置該值后,它只對新添加的表起作用,而對之前建立的空表不起作用。
3.您可以手動為空表分配范圍,以解決導出之前建立的空表的問題。說明如下:3.1使用ALLOCATEEXTENT的說明使用ALLOCATEEXTENT為數據庫對象分配擴展。其語法如下:-AllocateExtent{sizeinteger[k|m]|datafilefilename|instanceinteger}-可以為數據表、索引、物化視圖等手動分配Extent。ALLOCAT:分配區分配區(大小整數[k|m])分配區(數據文件文件名)分配區(實例整數)。Allocateextent(sizeinteger[k|m]datafilefilename)Allocateextent(sizeinteger[k|m]instanceinteger)數據表操作的完整語法如下:-Altertable[schema。]Table_namelocateextension[({sizeinteger[k|m]|datafilefilename|instanceinteger})]-因此,需要構建一個簡單的SQL命令如下:-3.2構建一個SQL命令為空表分配空間,查詢當前用戶下的所有空表(用戶優選地對應于默認表空間)。命令如下:-SQLSelectTable_Namefromuser_Tableswerenum_rows0;-根據上面的查詢,可以構造一個為空表分配空間的命令語句,如下:-SQLselectvariable||table_name||Allocateextent;fromuser_tablewherenum_row0-批量輸出上述生成的SQL語句,并建立C:createsql.sql,其內容如下:-setheadingoff;setechooffsetfeedbackoffsettermoutonspoolc:allocate.SQL;selectaltertable||table_name||allocateextent;fromuser_tablewherenum_rows0;斯波洛夫;-執行C:cr:createSQL.SQL;-執行后,得到C:allocate.sql文件。當您打開這個文件時,您將看到您已經獲得了命令SQL語句來為所有空表分配空間。3.4執行SQL命令為空表分配空間:執行C:allocat:allocate.SQL;-表格在執行后已被更改。3.4此時執行exp命令,所有表格包括空表都可以正常導出。另外:在Oracle11g中,密碼是區分大小寫的,即密碼中的字母是區分大小寫的。在Oracl
oracle數據庫怎么自動備份?
你需要寫一個bat腳本,然后在windows計劃任務中調用這個腳本,實現每天自動備份。工具:Oracle10g步驟:
1.在某個盤符和某個路徑下(以c盤的數據目錄為例)創建一個oraclebackup.txt文件,內容如下:
@回聲關閉回聲刪除文件/p#34c:/data/#34/m*的備份文件和日志。#34c:/data/#34/mDMP/d-10/c#34cmd/cdel@path#34forfiles/p。log/D-10/c#34cmd/cdel@path#34echo正在備份Oracl:/data/mdbt:~0.4%t:~5.2%t:~8.2%。.com/data//mdbt:的DMP日志16-@.com的0.4%t:的5.2%teecho19-@2。保存上述文件后,將文件名的后綴改為bat3。進入windows的控制面板,打開計劃和任務,新建一個任務,點擊瀏覽,在新建的c盤數據目錄中選擇文件。
然后選擇每晚在22:00執行,然后輸入本機的管理員密碼。注意:exp語句中的用戶名和密碼應根據實際需要填寫。