mysql轉國產數據庫達夢隨記
記錄一下轉換的一些小坑。
window環境
項目是springboot+ activiti6 + vue
第一步轉移數據: mysql5.7 ---> 達夢7
這里使用dm的工具進行轉換。發現報錯如下。
1.在mysql中的timestamp類型如果默認值設定的當前時間。這里轉移的時候會報錯
我的解決辦法是把數據庫中的默認值先改為null 然后轉移過去后在設置默認值為sysdate。這樣的效果也是一樣的。
2.如果數據庫中有較長的數據比如varchar(255) 這種而且已經存儲了比較長的數據。那么這里也會報錯。轉成longtext不行還是報錯說沒有這個類型,為了節約時間我直接把長度設置大一些再轉,估計是中文所占的空間不一致導致的。
整合activiti6:
因為activiti是不支持國產數據庫,所以這里需要更改與大多數網上查詢的內容差不多。但是感覺也不詳細。
我添加了依賴與修改activiti的別的內容,額外添加了一個setProperties("DM DBMS",DATABASE_TYPE_ORACLE)。具體demo可以看下面的地址。
https://gitee.com/hibernate_com/springboot-activiti6-dm.git
項目試運行:
1.時間返回值不能用localDateTime 來接收了。轉成了Date接收就沒問題
數據庫備份功能:
設置環境變量路徑到達夢數據庫bin目錄下。
導出:
dexp 用戶名/密碼 【@ip:端口】 SCHEMAS=模式名 FILE=備份文件.dmp DIRECTORY=備份路徑
這里不能去掉DIRECTORY,FILE只能是文件名
如果導出報編碼不一致的錯,那么先執行set export LANG="en_CN.utf-8"
導入:dimp userid=用戶名/密碼 SCHEMAS=模式名 GRANTS=Y ROWS=y FILE=備份文件.dmp DIRECTORY=備份路徑
隨筆記錄一下,希望有幫助

浙公網安備 33010602011771號