每一次项目上线都可能会涉及到sql上线的步骤。但是在上线的时候执行sql也是最容易出现问题的。特别是上线的时候sql出现问题,可能会导致非常重大的灾难性事故。因此对于sq相关的规范我们的要求如下:
1、每一个版本对应的sql,都必须写到同一个sql文件下。 2、每一个版本对应的sql文件名必须要标记对应的版本。 3、每一个版本对应的sql文件必须存放到项目的src/main/sql文件夹下。 4、上线邮件里面必须标注上对应版本的sql上线文件路径位置。
相关的sql存放src/main/sql文件夹下示例图如下:
对于上诉的操作我们主要是做的如下考虑:
1、所有对应历史版本的sql都可以在src/main/sql文件夹下找到对应。 2、每一个版本的sql涉及到的变更都可以在对应版本的sql文件中找到。 3、上线的时候推送git对应的sql地址,避免出现上线sql与代码sql不一致的情况。 4、dba会根据git上的sql文件进行sql脚本语法等进行工具化检查。 5、测试环境和pro环境的sql执行全部由DB根据当前的sql文件进行执行,不允许开发人员操作。避免出现sql文件有纰漏或者脚本执行顺序错误等场景。保证生产环境上线的顺利实施。
最后这里额外介绍一点其他的sql规范:
1、sql脚本里面不允许出现对字段名称的变更。
还没有评论,来说两句吧...