使用Navicat工具實現oracle資料匯出到mysql
阿新 • • 發佈:2022-04-17
使用Navicat工具實現oracle資料匯出到mysql
目錄環境
oracle資料庫版本:11.2.0.4
mysql版本:Server version: 5.5.60-MariaDB MariaDB Server
exp匯出的離線資料一份 filename.dmp
離線dmp資料匯入到新oracle資料庫中
#檢視離線dmp檔案內容 show=y ;要使用 fromuser 和 touser 選項 [oracle@centos6_test1 ~]$ imp system show=y file=public_user_20210806_1525.dmp Warning: the objects were exported by ADMIN, not by you import done in US7ASCII character set and AL16UTF16 NCHAR character set import server uses ZHS16GBK character set (possible charset conversion) export client uses ZHS16GBK character set (possible charset conversion) IMP-00031: Must specify FULL=Y or provide FROMUSER/TOUSER or TABLES arguments IMP-00000: Import terminated unsuccessfully
#再次使用 show=y 檢視檔案內容,發現可以正常匯入了 [oracle@centos6_test1 ~]$ imp system show=y file=public_user_20210806_1525.dmp fromuser=gabadmin touser=jia Warning: the objects were exported by ADMIN, not by you import done in US7ASCII character set and AL16UTF16 NCHAR character set import server uses ZHS16GBK character set (possible charset conversion) export client uses ZHS16GBK character set (possible charset conversion) . importing ADMIN's objects into JIA "ALTER SESSION SET CURRENT_SCHEMA= "JIA"" "CREATE TABLE "PUBLIC_USER" ("PUBLIC_USER_ID" NUMBER(20, 0) NOT NULL ENABLE," " "PUBLIC_USER_NAME" VARCHAR2(30) NOT NULL ENABLE, "IDENTITY_ID" VARCHAR2(20"
# 開始匯入,完成匯入
[oracle@centos6_test1 ~]$ imp system file=public_user_20210806_1525.dmp fromuser=admin touser=jia
. importing ADMIN's objects into JIA
. . importing table "PUBLIC_USER" 1546070 rows imported
使用navicate工具檢視oracle匯入資料
檢視資料表
select count(*) from jia.PUBLIC_USER; -- 1546070
建立測試表jia.users,選取部分資料
create table jia.users as
select * from jia.PUBLIC_USER where rownum<100;
select * from jia.users;
select count(*) from jia.users; --99
oracle資料匯入到mysql資料庫中
使用Navicate的遷移工具
缺點:字符集會有問題,在mysql中查詢某些欄位內容不能正常顯示。所以要確保mysql中所屬的資料庫字符集為utf8即可
建立資料庫時指定編碼的兩種方式:
-
CREATE DATABASE 資料庫名 CHARACTER SET utf8 COLLATE utf8_general_ci;
-
create database if not exists 資料庫名 default character set utf8;
檢視mysql中匯入成功的表
select * from USERS;
select count(*) from USERS; -- 99