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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

flyway java_flyway的使用

發(fā)布時間:2024/7/19 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 flyway java_flyway的使用 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

換新工作 框架很新

有些東西沒見過 現(xiàn)學一下

從 flyway開始

springboot整合教程

java寫遷移腳本

概念

用途:Flayway是一款數(shù)據(jù)庫版本控制管理工具,

支持數(shù)據(jù)庫版本自動升級,Migrations可以寫成sql腳本,也可以寫在java代碼里;

不僅支持Command Line和java api ,

也支持Build構(gòu)建工具和Spring boot,

也可以在分布式環(huán)境下能夠安全可靠安全地升級數(shù)據(jù)庫,

同時也支持失敗恢復

運行方式

首次啟動會創(chuàng)建默認名為SCHEMA_VERSION的元素局表。 表中保存了版本,描述,要執(zhí)行的sql腳本

flyway找腳本的時候默認去src/mian/resources下面的db/migration

相關(guān)命令

Migrate是指把數(shù)據(jù)Schema遷移到最新版本,在Migrate時會檢查MetaData元數(shù)據(jù)表,如果不存在就創(chuàng)建MetaData表,MetaData用于記錄數(shù)據(jù)庫歷史變更等信息;

Migrate會掃描指定文件系統(tǒng)或者classpath下的Migrations。會與MetaData中的記錄進行對比,進行版本升級;

Clean:清除掉對應(yīng)數(shù)據(jù)庫Schema中所有的對象,包括表結(jié)構(gòu),視圖,存儲過程等,clean操作在dev 和 test階段很好用;

Info:用于打印所有的Migrations的詳細和狀態(tài)信息,也是通過MetaData和Migrations完成的,可以快速定位當前的數(shù)據(jù)庫版本;

validate:驗證以及apply的Migrations是否有變更,默認開啟的;原理是對比MetaData表與本地Migrations的checkNum值,如果值相同則驗證通過,否則失敗。

BaseLine:對已經(jīng)存在數(shù)據(jù)庫Schema結(jié)構(gòu)的數(shù)據(jù)庫一種解決方案。實現(xiàn)在非空數(shù)據(jù)庫新建MetaData表,并把Migrations應(yīng)用到該數(shù)據(jù)庫;也可以應(yīng)用到已有表結(jié)構(gòu)的數(shù)據(jù)庫中也可以實現(xiàn)添加Metadata表。

repair:repair操作能夠修復metaData表,該操作在metadata出現(xiàn)錯誤時很有用

使用步驟

1.springboot來整合

2.建src/db/migration文件夾

3.建V開頭+版本號+雙下劃線+描述.sql 腳本文件

4.增加flyway的java類(執(zhí)行數(shù)據(jù)遷移和讀取配置文件)--可選

5.數(shù)據(jù)庫有了新的改動,導出新版本sql文件到db.migration 自動更新

總結(jié)

以上是生活随笔為你收集整理的flyway java_flyway的使用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。