前言
最近接了几个新项目的需求,为了快速开发,我们的策略是:基于原来的一套维定项目代码及数据库基础,去开发新的项目,一般步骤如下:
- 在原来的代码git基础上拉出一个新的git项目地址
- 修改代码的项目名称,代码目录结构
- 将原来项目对应的生产库导出表结构形成脚本
- 建立新项目的数据库
- 将原来表结构脚本导入新项目的数据库
为了降低风险,我们执行的脚本中不能包含DROP TABLE 语句(防止运维在线上执行时误操作在其他库上执行);
如何根据某个特定字符删除一行
- 前置说明
- MySQL客户端操作工具-Navicat
- 文本编辑器-Sublime Text
- 演示从老项目的数据库(zh_order为例)中导出表结构语句
- 对表结构脚本进行去除DROP TABLE语句
- 导出表结构
- 找到对应的库(zh_order)右键->转储SQL文件->仅结构
- 选择保存脚本目录
- 导出成功
- 替换DROP TABLE
- 挨个删除法;优点:简单快
- 优点:简单,适用于表少的情况
- 缺点:当表多的时候耗费大量时间去做重复性工作(比如我们项目有300多张表,得重复删300多次)
- 正则替换法(在替换中通过正则 .*DROP TABLE.*来匹配行,替换为空)
- 优点:一个正则匹配替换搞定,减少重复操作
- 缺点:需要进行正则匹配
总结
不将就是发现的源动力,能让机器做的不要人去做;让机器帮我们做一些事,释放人类,人类留出精力去做更有创造性的工作。