您好,登錄后才能下訂單哦!
第一,啟動服務,(如果數據庫處于啟動狀態,那么略過這一步)
打開命令行執行以下語句
net start OracleServiceORCL
net start OracleOraDb10g_home2TNSListener
net start OracleOraDb10g_home2iSQL*Plus
以上方式是在windows服務中啟動服務,當windows服務不能啟動數據庫實例的時候,應用以下的語句
set oracle_sid=orcl
oradim -startup -sid orcl
sqlplus internal/oracle
startup
第二清理以前還原過的痕跡,如果我們在數據庫曾經還原過,我們先來清理一下,痕跡,
//刪除用戶
drop user xxxx cascade;
//刪除表空間
drop tablespace xxxx;
//刪除數據庫文件
e:/xxxxxx.dbf
第三,接下來,準備工作做好后,我們就可以開始還原了
//創建用戶
CREATE USER 用戶名 IDENTIFIED BY 密碼
DEFAULT TABLESPACE USERS
TEMPORARY TABLESPACE TEMP;
//給予用戶權限
grant connect,resource,dba to xxxx;
//創建表空間,并指定文件名,和大小
CREATE SMALLFILE TABLESPACE "xxxx" DATAFILE 'E:/ORADATA/ORCL/xxxx.DBF'
SIZE 100M
AUTOEXTEND ON NEXT 100M
MAXSIZE UNLIMITED
LOGGING EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;
//執行給予權限的腳本grant.txt,將權限給予剛才創建的用戶
//給予權限
GRANT CREATE USER,DROP USER,ALTER USER ,CREATE ANY VIEW ,
DROP ANY VIEW,EXP_FULL_DATABASE,IMP_FULL_DATABASE,
DBA,CONNECT,RESOURCE,CREATE SESSION TO xxxx;
//開始導入(完全導入),file:dmp文件所在的位置, ignore:因為有的表已經存在,對該表就不進行導入。
在后面加上 ignore=y 。指定log文件 log=e:/log.txt(注:以下必須在cmd里執行,在SQL*PLUS里無法執行)
imp user/pass@orcl full=y file=e:/xxx.dmp ignore=y log=e:/log.txt;
//當我們不需要完整的還原數據庫的時候,我們可以單獨地還原某個特定的表
//---------------------------------------------------------------------------
imp user/pass@datbase file=e:/xxx.dmp ignore=y log=e:/log.txt tables=(xxxx)
imp user/pass@database file=e:/xxx.dmp ignore=y log=e:/log2.txt tables=(xxxx)
//---------------------------------------------------------------------------
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。