終於搞定了 快寫個筆記 記錄下。
刪除用戶的時候提示已經登錄了不能刪除,這個需要把登錄的session結束掉。
select username,sid,serial# from v$session where username is not null;
然后 找到用戶的進程,然后殺掉。
alter system kill session '146,48';
數據泵導出:
1、手動新建一個文件夾:比如:E:\ncdatabak
2、數據庫管理員登錄sqlplus,創建數據導出目錄expnc_dir為目錄名,'E:\ncdatabak'為數據庫實際目錄,命令如下:
create directory expnc_dir as 'E:\ncdatabak';
3、為oracle用戶授予訪問數據目錄的權限,命令如下:
Grant read,write on directory expnc_dir to dxzyjt;
4、執行數據泵出命令,注意一定要在Cmd下執行,不能登錄sqlplus后執行。
expdp dxzyjt/dxzyjt@192.168.1.224 directory=expnc_dir dumpfile=ncdatabak.dmp schemas=dxzyjt logfile=ncdatabak.log;
這樣,就會在第一步創建的目錄里面到處一個dmp文件。接下來我們導入。
數據泵導入:
1、把之前到導出的文件夾復制到新的服務器上,比如:復制到E盤; E:\ncdatabak
2、數據庫管理員登錄sqlplus,創建數據導出目錄expnc_dir為目錄名,'E:\ncdatabak'為數據庫實際目錄,命令如下:
create directory expnc_dir as 'E:\ncdatabak';
3、為oracle用戶授予訪問數據目錄的權限,命令如下:
Grant read,write on directory expnc_dir to dxzyjt;
4、執行數據泵出命令,注意一定要在Cmd下執行,不能登錄sqlplus后執行。
impdp dxzyjt/dxzyjt@192.168.1.224 directory=expnc_dir dumpfile=ncdatabak.dmp schemas=dxzyjt ;
正常流程的話 會導入成功。
使用數據泵的時候,源數據庫和 目標數據庫 必須字符集相同,否則會報錯。 查看字符集和修改字符集 : http://www.cnblogs.com/lishupeng/p/5605558.html ;
導入的時候 表空間不夠的話,查看如何增加表空間: (http://www.cnblogs.com/lishupeng/p/5556261.html)
ALTER TABLESPACE users ADD DATAFILE 'D:\APP01.DBF' SIZE 20G;
