第一步我們要從一臺(tái)windows服務(wù)器 A 上導(dǎo)出關(guān)于 Test1 這個(gè)用戶(hù)的所有對(duì)象,然后導(dǎo)入到linux服務(wù)器 B 上的 Test2用戶(hù)。(已知Test1密碼為T(mén)est1passwd 或者用system用戶(hù)導(dǎo)出也行)
成都創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),臨澤企業(yè)網(wǎng)站建設(shè),臨澤品牌網(wǎng)站建設(shè),網(wǎng)站定制,臨澤網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營(yíng)銷(xiāo),網(wǎng)絡(luò)優(yōu)化,臨澤網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競(jìng)爭(zhēng)力。可充分滿(mǎn)足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專(zhuān)業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶(hù)成長(zhǎng)自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。
2.B機(jī)器上Test2用戶(hù)不存在,或Test2用戶(hù)已經(jīng)存在 兩種情況(用戶(hù)存在相對(duì)比較復(fù)雜)
如果Test2用戶(hù)已經(jīng)存在(數(shù)據(jù)沒(méi)用,可以刪除),級(jí)聯(lián)刪除用戶(hù)及所有對(duì)象(有可能遇到有人正在連接,刪除不掉的情況 方法參照下文),重新創(chuàng)建賬號(hào)并賦權(quán)。
3.賦予適當(dāng)?shù)臋?quán)限
操作步驟:
1.從 A 上導(dǎo)出數(shù)據(jù)文件到指定目錄(目錄名稱(chēng)自己定義,只要自己能找到就行,和用戶(hù)名沒(méi)有關(guān)系)
sqlplus /nolog conn / as sysdba exp Test1/Test1passwd owner=Test1 file=D:\files\Test1.dmp
2.在A機(jī)器上查看用戶(hù)默認(rèn)表空間,以便導(dǎo)入時(shí)創(chuàng)建一樣的表空間
SQL select username,default_tablespace from dba_users where username ='TEST1'; USERNAME DEFAULT_TABLESPACE TEST1 CMIS
3.查看用戶(hù)使用的表空間
SQL select DISTINCT owner ,tablespace_name from dba_extents where owner like 'TEST1'; OWNER TABLESPACE_NAME TEST1 XSL TEST1 CMIS
4.查看表空間對(duì)應(yīng)的數(shù)據(jù)文件,以便在B上創(chuàng)建大小合適的數(shù)據(jù)文件。
SQL select file_name,tablespace_name from dba_data_files where tablespace_name in ('CMIS','XSL'); FILE_NAME BYTES TABLESPACE D:ORACLEPRODUCT10.2.0ORADATACMISDBCMIS 8728346624 CMIS D:ORACLEPRODUCT10.2.0ORADATACMISDBCMIS01.ORA 8204058624 CMIS D:ORACLEPRODUCT10.2.0ORADATACMISDBCMIS02.ORA 4194304000 CMIS D:ORACLEPRODUCT10.2.0ORADATACMISDBCMIS03.ORA 4194304000 CMIS D:ORACLEPRODUCT10.2.0ORADATACMISDBCMIS04.ORA 4194304000 CMIS D:ORACLEPRODUCT10.2.0ORADATACMISDBCMIS05.ORA 4194304000 CMIS D:ORACLEPRODUCT10.2.0ORADATACMISDBCMIS06.ORA 4194304000 CMIS D:ORACLEPRODUCT10.2.0ORADATACMISDBXSL.ORA 4194304000 XSL D:ORACLEPRODUCT10.2.0ORADATACMISDBXSL01.ORA 4194304000 XSL D:ORACLEPRODUCT10.2.0ORADATACMISDBXSL02.ORA 4194304000 XSL
5.檢查B機(jī)器的表空間,看是否存在CMIS,XSL
select name from v$tablespace where name in ('XSL','CMIS');
查找不到,說(shuō)明沒(méi)有這個(gè)兩個(gè)表空間,需要?jiǎng)?chuàng)建。
6.要導(dǎo)入數(shù)據(jù)的server沒(méi)有xsl,cmis表空間。創(chuàng)建
create tablespace xsl logging datafile
'/opt/oracle/product/10.2.0/oradata/xsl.dbf'
size 15000M extent management local;
create tablespace cmis logging datafile
'/opt/oracle/product/10.2.0/oradata/cmis.dbf' size 37000M extent management local;
7.在服務(wù)器B上查找用戶(hù)是否已經(jīng)存在
SQL select username from dba_users where username='TEST2';
接下來(lái)分為兩種情況,如果不存在那么按照 [一] 方法,如果存在按照 [二]
創(chuàng)建用戶(hù)
create user Test2 identified by Test2passwd default tablespace cmis temporary tablespace temp profile default;
如果用戶(hù)存在
drop user Test2 cascade;
(刪除用戶(hù)及其擁有的所有對(duì)象)
此時(shí)如果這個(gè)用戶(hù)在連接,drop會(huì)出錯(cuò),必須先殺掉用戶(hù)的session,然后再drop user
SELECT 'alter system kill session '''
||SID||','||SERIAL||''' immediate;
' FROM V$SESSION WHERE USERNAME='TEST2';
(如果用戶(hù)正在連接,構(gòu)建命令并殺掉)
(上面的語(yǔ)句是構(gòu)建出殺掉Test2用戶(hù)session的語(yǔ)句)比如:
'ALTERSYSTEMKILLSESSION'''||SID||','||SERIAL||'''IMMEDIATE;' alter system kill session '129,3570' immediate; alter system kill session '131,2' immediate; alter system kill session '133,572' immediate; alter system kill session '135,1456' immediate; alter system kill session '136,487' immediate; alter system kill session '138,302' immediate; alter system kill session '139,366' immediate;
再?gòu)?fù)制這些語(yǔ)句,粘貼到sqlplus中執(zhí)行,來(lái)殺掉Test2的session。
create user Test2 identified by Test2passwd default
tablespace cmis temporary tablespace temp profile default;
(創(chuàng)建用戶(hù))
grant connect,resource to Test2;
(授權(quán))
8.把文件從A機(jī)器上拷貝到B機(jī)器上。假如拷貝過(guò)來(lái)放到tmp目錄下/tmp/Test1.dmp
9.最后在A機(jī)器上按用戶(hù)導(dǎo)入數(shù)據(jù)
一定注意執(zhí)行imp時(shí)要退出sqlplus,在linux的shell下執(zhí)行imp
[oracle@test2 ~]$ imp Test2/Test2passwd fromuser
=Test1 touser =test2 file=D:\xsldb.DMP log =app/oracle/file/log/DEV_PMODOC.log;
以上的相關(guān)內(nèi)容就是對(duì)Oracle數(shù)據(jù)庫(kù)exp imp按用戶(hù)導(dǎo)出導(dǎo)入實(shí)例的介紹,望你能有所收獲。
1、首先通過(guò)tode創(chuàng)建或者克隆新的數(shù)據(jù)庫(kù)用戶(hù),如下圖所示。
2、導(dǎo)出目標(biāo)表準(zhǔn)備好,空表無(wú)法導(dǎo)出表結(jié)構(gòu),然后打開(kāi)運(yùn)行命令,導(dǎo)出目標(biāo)用戶(hù)test所有數(shù)據(jù)庫(kù)相關(guān)信息,如下圖所示。
3、輸入完成后,點(diǎn)擊鍵盤(pán)上的回車(chē),等待一會(huì)如下圖所示。
4、最后導(dǎo)入目標(biāo)用戶(hù)new所有數(shù)據(jù)庫(kù)相關(guān)信息,如下圖所示。
5、最后如下圖所示,就導(dǎo)出完成了。
大哥你可以變通一下嗎,你既然把所有的用戶(hù)對(duì)象都導(dǎo)出了,那么在你的數(shù)據(jù)庫(kù)先執(zhí)行一下,有了表結(jié)構(gòu),
再用導(dǎo)出的dmp文件,導(dǎo)入表數(shù)據(jù)不就可以了嗎
export user objects 是導(dǎo)出用戶(hù)對(duì)象,當(dāng)然只用表結(jié)構(gòu)le
選擇 export tables ,選中用戶(hù)下所有的表,再導(dǎo)出就可以了
你也可以用命令行導(dǎo)出
exp 用戶(hù)名/密碼@服務(wù)名 owner=要導(dǎo)出的用戶(hù)名 rows=y indexes=n compress=n buffer=65536 file=aaa.dmp log=aaa.log
1.查看所有用戶(hù):
select * from dba_users;
select * from all_users;
select * from user_users;
2.查看用戶(hù)或角色系統(tǒng)權(quán)限(直接賦值給用戶(hù)或角色的系統(tǒng)權(quán)限):
select * from dba_sys_privs;
select * from user_sys_privs;
3.查看角色(只能查看登陸用戶(hù)擁有的角色)所包含的權(quán)限
sqlselect * from role_sys_privs;
4.查看用戶(hù)對(duì)象權(quán)限:
select * from dba_tab_privs;
select * from all_tab_privs;
select * from user_tab_privs;
5.查看所有角色:
select * from dba_roles;
6.查看用戶(hù)或角色所擁有的角色:
select * from dba_role_privs;
select * from user_role_privs;
7.查看哪些用戶(hù)有sysdba或sysoper系統(tǒng)權(quán)限(查詢(xún)時(shí)需要相應(yīng)權(quán)限)
select * from V$PWFILE_USERS
文章名稱(chēng):oracle怎么導(dǎo)出角色,Oracle 導(dǎo)出
URL鏈接:http://vcdvsql.cn/article14/hspgde.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供虛擬主機(jī)、網(wǎng)站導(dǎo)航、自適應(yīng)網(wǎng)站、用戶(hù)體驗(yàn)、靜態(tài)網(wǎng)站、手機(jī)網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)