日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

记一次Oracle 11g xe 导出导入使用过程

發布時間:2024/1/8 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 记一次Oracle 11g xe 导出导入使用过程 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

公司一個項目需要使用Oracle數據庫,平時mysql用習慣了,這一換還有點蒙。

公司網絡不好,需要在本地搭一個Oracle服務,選擇了11g xe,主要是小。

下面整理了一下兩種導出導入數據庫的過程:

1、使用Navicat軟件轉儲sql文件、執行sql文件方法(不好,容易存在外鍵問題和字符串長度超過4000無法導入問題)

2、使用exp、imp命令導出導入(推薦)

?

一、使用Navicat導出導入過程:

1、選擇公司Oracle數據庫模式,右鍵轉儲sql文件結構和數據,獲得sql文件

2、本地數據庫用sys登陸,創建一個sumengnan用戶,賦予一些創建表、連接的權限

3、在sumengnan模式下導入公司Oracle的sql文件時報錯,提示表空間不存在

解決辦法:在菜單欄選擇其他-表空間-新建表空間。

之后在用戶-編輯用戶-配額處為sumengnan用戶,配置表空間

4、導入公司Oracle的sql文件時報錯,又提示ORA-01950對表空間"system"無權限。

解決辦法:在用戶-編輯用戶-服務器權限處為sumengnan用戶,配置create session、create table和create tablespace權限

5、導入完成。

?

二、使用exp、imp命令導出導入過程:

開始導出:

1、遠程Oracle數據庫導出方式有兩種(需要sys角色):

? ⑴添加遠程TNS。在tnsnames.ora文件中添加如下

? remote =
? (DESCRIPTION =
? ? (ADDRESS = (PROTOCOL = TCP)(HOST = 遠程主機地址)(PORT = 1521))
? ? (CONNECT_DATA =
? ? ? (SERVER = DEDICATED)
? ? ? (SERVICE_NAME = ORCL)
? ? )
? ?)

? 然后執行tnsping remote命令,檢測是否能連接。

? 執行命令:exp sys/123@remote file=d:\sumengnan.dmp owner=sumengnan;

? ⑵執行命令:exp sys/123@192.168.1.100:1521/orcl?file=d:\sumengnan.dmp owner=sumengnan;(這個更簡單,不需要添加遠程TNS,推薦)

2、執行遠程導出數據庫命令,提示身份證明檢索失敗。

解決辦法:oracle\product\11.2.0\server\network\ADMIN\sqlnet.ora這個文件內容NTS改為NONE。(驗證方式)

NTS表示采用本地操作系統認證,NONE表示將采用口令文件方式認證。

3、用sys登錄提示connection as SYS should be as SYSDBA or SYSOPER(表示sys賬號需要SYSDBA or SYSOPER角色)

解決辦法:exp 'sys/123@192.168.1.100:1521/orcl as sysdba' file=d:\sumengnan.dmp owner=sumengnan;(加上 as sysdba)(owner表示用戶)

4、導出時提示ORACLE 錯誤 904 ORA-00904: "MAXSIZE": 標識符無效

原因:Oracle不能從低版本向高版本導數據。公司的是10,本地是11.

??? 由于Oracle的imp/exp組件的操作原則--向下兼容,且有一些規則:

??? 規則1:低版本的exp/imp可以連接到高版本(或同版本)的數據庫服務器,但高版本的exp/imp不能連接到低版本的數據庫服務器;

??? 規則2:高版本exp出的dmp文件,低版本無法imp(無法識別dmp文件);低版本exp出的dmp文件,高版本可以imp(向下兼容);

??? 規則3:從Oracle 低版本Export的數據可以Import到Oracle高版本中,但限于Oracle的相鄰版本,如從Oracle 10 到 Oracle 11.對于兩個不相鄰版本間進行轉換,如從Oracle 9 到 Oracle 11,則應先將數據輸入到中間版本-Oracle 10,再從中間數據庫轉入更高版本Oracle 11.

??? 據此,最快捷的解決方案就是使用安裝了10g Oracle 的機子,進行服務器上數據庫數據的導出。

5、無奈去另一臺win10電腦下載了64位的10g(下載地址在下面),安裝時提示檢查操作系統版本: 必須是5.1 or 5.2。 實際為 6.1。

解決辦法:修改\database\install\oraparam.ini文件,把Windows=5.1,5.2改成Windows=6.1。

6、安裝時10g設置完密碼后又提示“安裝oracle10g“程序異常終止。發生內部錯誤。請將以下文件提供給oracle技術支持 部門”

解決辦法:安裝程序setup.exe文件,需要用兼容模式xp sp3模式運行。

7、不過出現了一個意外,win10電腦沒有xp sp3兼容模式。

解決辦法:下載一個虛擬機,安裝xp系統。

8、虛擬機安裝完xp之后,在系統上運行Oracle10g setup.exe安裝程序,提示不是有效的win32

解決辦法:應該下載32位的Oracle 10g(直接使用了上面下載的64位的10g)

執行第3步命令,導出成功了,拷貝到本地電腦桌面

開始導入:

9、先查詢公司數據庫用戶sumengnan使用的表空間(一般情況只有一個)。

命令:select tablespace_name from dba_tables t WHERE t.owner='sumengnan' group by t.tablespace_name

10、首先需要在本地創建好sumengnan用戶和表空間

創建表空間命令:create tablespace sumengnan_data(表空間名稱) datafile 'e:\oracle\oradata\test\data_1.dbf'(表空間文件) size 1000M(表空間大小);

創建用戶命令:create user sumengnan identified by 123456 default tablespace sumengnan_data;(用戶sumengnan,密碼123456 默認表空間 sumengnan_data)

賦予權限命令:grant connect, resource to sumengnan ;(賦予sumengnan連接Oracle和創建表的權限)

11、開始導入數據,執行命令:imp 'sys/123@XE as sysdba' file=C:\Users\sumengnan\Desktop\SUMENGNAN.DMP full=y時提示:“無法打開 EXPDAT.DMP 進行讀取”.

原因:c盤沒有權限,換到其他盤,如d盤。

注意:如果服務器和本地兩端用戶名不相同,則執行:imp 'sys/123@XE as sysdba' file=C:\Users\sumengnan\Desktop\SUMENGNAN.DMP fromuser=sumengnan touser=sumengnan2

fromuser就是把當前的dmp文件中的某一個用戶下的數據取出。
touser就是把現在dmp文件中的數據導入到目標庫的指定user下。

12、切換盤后導入又提示:“導入時由于對象已存在, 下列語句失敗:?”

解決辦法:imp導入命令添加參數 ignore=y

13、導入完成

?

碰到的其他問題

1、修改Oracle安裝時默認8080端口

命令:

begin
? ?dbms_xdb.sethttpport('8081');
? ?dbms_xdb.setftpport('0');
end;

2、刪除用戶提示“必須指定 CASCADE 以刪除 'sumengnan'”

解決辦法:drop user sumengnan cascade;(因為這個數據庫只有這一個用戶,刪了就沒有用戶關聯了,所以需要用?cascade,把沒有關聯的整個數據庫也刪掉。)

?

導出導入imp、exp命令參數:


參數參考地址:https://blog.csdn.net/fghsfeyhdf/article/details/79807690

參數參考地址:https://www.cnblogs.com/weiwenpeng/p/10345419.html

xp迅雷下載地址:thunder://QUFodHRwOi8vc29mdC51c2Fpa2EuY24vstnX98+1zbMvd2luZG93cy9XaW5kb3dzWFAvVkwtSW1hZ2UvTVNETi96aC1oYW5zX3dpbmRvd3NfeHBfcHJvZmVzc2lvbmFsX3dpdGhfc2VydmljZV9wYWNrXzNfeDg2X2NkX3ZsX3gxNC03NDA3MC5pc29aWg==? ? ? ? ? ? ? ? ?序列號:MRX3F-47B9T-2487J-KWKMF-RPWBY

Oracle 10g 32位迅雷下載地址:http://download.oracle.com/otn/nt/oracle10g/10201/10201_database_win32.zip

Oracle 10g 64位迅雷下載地址:http://download.oracle.com/otn/nt/oracle10g/10201/102010_win64_x64_database.zip

Oracle 11g xe 64位下載地址:https://download.oracle.com/otn/nt/oracle11g/xe/OracleXE112_Win64.zip?AuthParam=1581570015_b536f613e8fecc7c02ed77c63e8c6944

總結

以上是生活随笔為你收集整理的记一次Oracle 11g xe 导出导入使用过程的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。