MySQL遷移到達夢資料庫DM過程問題記錄

2021-10-05 05:02:44 字數 1862 閱讀 1932

使用達夢自帶的資料遷移工具(dts),將mysql資料庫遷移至達夢資料庫(以下簡稱dm),遷移過程報如下錯誤:

/* 任務失敗: 建立表"bpdb"."hook_t" */ 

/* 物件[update_time]default約束表示式無效 */

/* 相關sql語句: */

create table "bpdb"."hook_t"

( "id" bigint identity(1,1) not null,

"domain" varchar(300) not null,

"conditions" varchar(600) not null,

"call_back_url" varchar(600) not null,

"creator" varchar(300) not null,

"create_time" timestamp(0) default current_timestamp()

not null,

"update_time" timestamp(0) default '0000-00-00 00:00:00'

not null,

"status" int not null

); /* 任務失敗: 建立表"bpdb"."bind_relationship_t" */

/* 第13 行附近出現錯誤:

物件[ex_platform_flag]default約束表示式無效 */

/* 相關sql語句: */

create table "bpdb"."bind_relationship_t"

( "id" bigint identity(40,1) not null,

"user_id" bigint not null,

"ex_platform_flag" varchar(400) default blueprint

null,

"ex_platform_name" varchar(400) default 測試平台

null,

"domain" varchar(400) not null,

"domain_name" varchar(400) not null,

"ex_user_uni_id" varchar(400) not null,

"type" varchar(80) null

);

解決方法:

dm預設不支援zerodatetime這種設定,將』0000-00-00 00:00:00』改為』1900-01-01 00:00:00』

dm建表語句不支援null可為空的語法,刪除null,預設可為空;

dm執行sql語句必須指定schema,即schema.tablename,程式jdbc訪問(比如使用mybatis,比較悲劇)無法自動設定schema,會帶來改造風險。

解決辦法:

dm中新建和應用系統對應的管理使用者,如bp對應管理使用者bpdb,dm會自動生成名為bpdb的模式,然後把資料物件(表、檢視、儲存過程等)建立到該模式下;使用bpdb登入dm,執行sql可以不帶schema。

程式中使用bpdb使用者連線dm,jdbc連線配置示例如下:

#dm

#dm資料庫驅動型別

jdbc.driver=dm.jdbc.driver.dmdriver

#dm資料庫連線位址

jdbc.url=jdbc:dm://ip:5236/bpdb

#dm資料庫使用者名稱

jdbc.username=bpdb

#dm資料庫密碼

jdbc.password=dbpwd

mysql遷移到DM資料庫時sql語句的修改

最近,在進行乙個專案的遷移工作,資料庫原來採用的mysql,現在想改為國產資料庫達夢 dm 說起mysql,很多人都不陌生,作為乙個開源的關係型資料庫,mysql有著極為廣泛的使用群體,而且,很多以前的中小型專案都是使用免費的mysql資料庫。但是,對國產資料庫dm,了解的人遠沒有mysql那麼廣泛...

mysql資料庫遷移達夢資料庫

我們安裝好達夢資料庫之後,便可以在開始 所有工具 達夢資料庫中看到它的結構 我們選擇dm資料遷移工具,然後點選進去 然後在遷移管理裡右鍵新建工程 然後輸入工程名即可,可以隨便起。點選確定 然後選中專案下的遷移,右鍵新建遷移 遷移名稱也是一樣,可以隨便起。點選確定 然後看到該頁面,點選下一步 然後選擇...

關於Oracle遷移到達夢的幾個小坑總結

1 安裝達夢資料庫的時候,可以選擇大小寫敏感,保持與oracle一致 2 oracle中的decimal型別,在達夢中建議改為number型別 3 在達夢資料庫中不支援對clob blob型別的資料進行排序,如果專案 中有對這些字段進行排序的話,會報錯 建議不要對這些長文字字段進行排序,或者改為va...